)]}'
{
  "commit": "e1c3ac064ae5fec241f2c1f9fd712dbe5b3c19d2",
  "tree": "1cd932ce761f7e6bbe47768974d87d8dbb935cbd",
  "parents": [
    "e4fe38115fea0a9f357527959893f18ca8d51a03"
  ],
  "author": {
    "name": "Tom de Vries",
    "email": "tdevries@suse.de",
    "time": "Thu Mar 05 21:59:28 2026 +0100"
  },
  "committer": {
    "name": "Tom de Vries",
    "email": "tdevries@suse.de",
    "time": "Thu Mar 05 21:59:28 2026 +0100"
  },
  "message": "[gdb/testsuite] Fix gdb.opt/inline-entry.exp with clang\n\nI ran test-case gdb.opt/inline-entry.exp with clang, more specifically:\n...\nget_compiler_info: clang-17-0-6\n...\nand ran into:\n...\n(gdb) continue^M\nContinuing.^M\n^M\nBreakpoint 2.1, bar (val\u003d\u003coptimized out\u003e) at inline-entry.c:29^M\n29        if (global \u003d\u003d val)^M\n(gdb) PASS: gdb.opt/inline-entry.exp: continue to bar\ncontinue^M\nContinuing.^M\n^M\nBreakpoint 2.3, bar (val\u003d2) at inline-entry.c:29^M\n29        if (global \u003d\u003d val)^M\n(gdb) FAIL: gdb.opt/inline-entry.exp: continue to foo\ncontinue^M\nContinuing.^M\n^M\nBreakpoint 3, foo (arg\u003darg@entry\u003d1) at inline-entry.c:23^M\n23        global +\u003d arg;^M\n(gdb) FAIL: gdb.opt/inline-entry.exp: continue until exit\n...\n\nThe problem is that the test-case expects two breakpoint locations for\nfunction bar, and to hit one of them, but there are three and it hits two of\nthem.\n\nThis is due to the debug info, which for function bar:\n...\n \u003c1\u003e\u003c25d\u003e: Abbrev Number: 7 (DW_TAG_subprogram)\n    \u003c25e\u003e   DW_AT_name        : bar\n    \u003c25f\u003e   DW_AT_decl_file   : 1\n    \u003c260\u003e   DW_AT_decl_line   : 27\n    \u003c261\u003e   DW_AT_prototyped  : 1\n    \u003c261\u003e   DW_AT_type        : \u003c0x243\u003e\n    \u003c265\u003e   DW_AT_external    : 1\n    \u003c265\u003e   DW_AT_inline      : 1       (inlined)\n \u003c2\u003e\u003c265\u003e: Abbrev Number: 8 (DW_TAG_formal_parameter)\n    \u003c266\u003e   DW_AT_name        : val\n    \u003c267\u003e   DW_AT_decl_file   : 1\n    \u003c268\u003e   DW_AT_decl_line   : 27\n    \u003c269\u003e   DW_AT_type        : \u003c0x243\u003e\n...\nhas three corresponding DW_TAG_inlined_subroutine DIEs:\n...\n \u003c2\u003e\u003c27d\u003e: Abbrev Number: 10 (DW_TAG_inlined_subroutine)\n    \u003c27e\u003e   DW_AT_abstract_origin: \u003c0x25d\u003e\n    \u003c282\u003e   DW_AT_ranges      : 0x31\n    \u003c283\u003e   DW_AT_call_file   : 1\n    \u003c284\u003e   DW_AT_call_line   : 38\n \u003c2\u003e\u003c285\u003e: Abbrev Number: 11 (DW_TAG_inlined_subroutine)\n    \u003c286\u003e   DW_AT_abstract_origin: \u003c0x25d\u003e\n    \u003c28a\u003e   DW_AT_low_pc      : 0x114f\n    \u003c28b\u003e   DW_AT_high_pc     : 0x5\n    \u003c28f\u003e   DW_AT_call_file   : 1\n    \u003c290\u003e   DW_AT_call_line   : 38\n    \u003c291\u003e   DW_AT_call_column : 18\n \u003c3\u003e\u003c292\u003e: Abbrev Number: 12 (DW_TAG_formal_parameter)\n    \u003c293\u003e   DW_AT_const_value : 1\n    \u003c294\u003e   DW_AT_abstract_origin: \u003c0x265\u003e\n \u003c2\u003e\u003c299\u003e: Abbrev Number: 11 (DW_TAG_inlined_subroutine)\n    \u003c29a\u003e   DW_AT_abstract_origin: \u003c0x25d\u003e\n    \u003c29e\u003e   DW_AT_low_pc      : 0x1166\n    \u003c29f\u003e   DW_AT_high_pc     : 0x7\n    \u003c2a3\u003e   DW_AT_call_file   : 1\n    \u003c2a4\u003e   DW_AT_call_line   : 38\n    \u003c2a5\u003e   DW_AT_call_column : 30\n \u003c3\u003e\u003c2a6\u003e: Abbrev Number: 12 (DW_TAG_formal_parameter)\n    \u003c2a7\u003e   DW_AT_const_value : 2\n    \u003c2a8\u003e   DW_AT_abstract_origin: \u003c0x265\u003e\n...\nwhile the source contains just two calls:\n...\n    35\tint\n    36\tmain (void)\n    37\t{\n    38\t  if ((global \u0026\u0026 bar (1)) || bar (2))\n    39\t    return 0;\n    40\t  return 1;\n    41\t}\n...\n\nThis is a bug in the debug info.\n\nI don\u0027t see a way to work around this in gdb, so work around this in the\ntest-case by bailing out if there are more or less than two breakpoint\nlocations for function bar.\n\nTested on x86_64-linux.\n\nApproved-By: Tom Tromey \u003ctom@tromey.com\u003e\n\nBug: https://sourceware.org/bugzilla/show_bug.cgi?id\u003d33953\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "937deecff99ceefd0ba162b519330900f2679997",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.opt/inline-entry.exp",
      "new_id": "588105491a75229c7e41a05dd0022a6f85090adc",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.opt/inline-entry.exp"
    }
  ]
}
