)]}'
{
  "commit": "169c87848f5b565475fea22b44bdf078a3d9ea6e",
  "tree": "9de8f057ddb217878044fa3132c8fb35c31e86e4",
  "parents": [
    "52caa25438f412c1a6eb8626ee2a30e281b4d934"
  ],
  "author": {
    "name": "Tom Tromey",
    "email": "tom@tromey.com",
    "time": "Mon Jan 26 20:49:26 2026 -0700"
  },
  "committer": {
    "name": "Tom Tromey",
    "email": "tom@tromey.com",
    "time": "Sat Feb 14 11:24:35 2026 -0700"
  },
  "message": "Don\u0027t use .debug_names if .debug_aranges is missing\n\ngdb\u0027s .debug_names reader depends on .debug_aranges as well, because\nif the ranges are missing, it won\u0027t be able to create a map from PC to\nCU.\n\nHowever, this requirement isn\u0027t enforced by gdb.  I no longer recall\nknow why, but I can see in commit b371f07c (\"Rewrite .debug_names\nreader\") that I made this choice on purpose:\n\n    In v1 of this patch, I made the new reader more strict about requiring\n    .debug_aranges.  In v2, I\u0027ve backed this out and kept the previous\n    logic.  This solved a few test failures, though it\u0027s arguably not the\n    right approach.\n\nHowever, the current setup now seems clearly incorrect to me.  And, it\nwas causing problems for another patch I\u0027m working on.\n\nFixing this required patching a few tests to add a .debug_aranges\nsection.  I\u0027ve also updated the intro comment to\nread_addrmap_from_aranges to reflect how it ought to be used.\n\nRegression tested on x86-64 Fedora 41 with both the default and the\ncc-with-debug-names target boards.\n\nBug: https://sourceware.org/bugzilla/show_bug.cgi?id\u003d33847\n\n\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4f25763ebc835d4f7e978e9b2741f8e01cd290ba",
      "old_mode": 33188,
      "old_path": "gdb/dwarf2/aranges.c",
      "new_id": "9b7603263d43fc449beda874818723c0f14fac2a",
      "new_mode": 33188,
      "new_path": "gdb/dwarf2/aranges.c"
    },
    {
      "type": "modify",
      "old_id": "a8e534580a0bd5d69588dcfd53c5b041f208f4f7",
      "old_mode": 33188,
      "old_path": "gdb/dwarf2/aranges.h",
      "new_id": "26709062d177e884098a61d9517df9d5a9f8be04",
      "new_mode": 33188,
      "new_path": "gdb/dwarf2/aranges.h"
    },
    {
      "type": "modify",
      "old_id": "6258fcb86a71500164f25ff390ed5366efea5d73",
      "old_mode": 33188,
      "old_path": "gdb/dwarf2/read-debug-names.c",
      "new_id": "a5669bde71e4d6786571bdbd7068a6c720a76553",
      "new_mode": 33188,
      "new_path": "gdb/dwarf2/read-debug-names.c"
    },
    {
      "type": "modify",
      "old_id": "b88430eaa5926c62bf3a3e400914442570d40147",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dwarf2/debug-names-bad-cu-index.exp",
      "new_id": "e91ff225e9430f6daa2ef66b35bd44f739b21261",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dwarf2/debug-names-bad-cu-index.exp"
    },
    {
      "type": "modify",
      "old_id": "be1a9f490f0d1620c6c218be8281c0101506420a",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dwarf2/debug-names-tu.exp.tcl",
      "new_id": "f5803a32b3c024944fda46f10166d72468dd9167",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dwarf2/debug-names-tu.exp.tcl"
    },
    {
      "type": "modify",
      "old_id": "cb55c447dc4f148a31627a1a70ff60b60e1586a9",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.dwarf2/debug-names.exp",
      "new_id": "66458df39745ed0936e6c42d62ca6bccd3b5cfee",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.dwarf2/debug-names.exp"
    }
  ]
}
