)]}'
{
  "commit": "632652850db23bfec2499febe03c9ac4aa0b8dce",
  "tree": "d459cf5682fab8c2624eb74cf9151cbfb868d09c",
  "parents": [
    "be01687991aa6c8517b3e635b8f13b0bac6a851a"
  ],
  "author": {
    "name": "Tom de Vries",
    "email": "tdevries@suse.de",
    "time": "Fri Feb 10 15:58:00 2023 +0100"
  },
  "committer": {
    "name": "Tom de Vries",
    "email": "tdevries@suse.de",
    "time": "Fri Feb 10 15:58:00 2023 +0100"
  },
  "message": "[gdb/testsuite] Fix linespec ambiguity in gdb.base/longjmp.exp\n\nPR testsuite/30103 reports the following failure on aarch64-linux\n(ubuntu 22.04):\n...\n(gdb) PASS: gdb.base/longjmp.exp: with_probes\u003d0: pattern 1: next to longjmp\nnext\nwarning: Breakpoint address adjusted from 0x83dc305fef755015 to \\\n  0xffdc305fef755015.\nWarning:\nCannot insert breakpoint 0.\nCannot access memory at address 0xffdc305fef755015\n\n__libc_siglongjmp (env\u003d0xaaaaaaab1018 \u003cenv\u003e, val\u003d1) at ./setjmp/longjmp.c:30\n30\t}\n(gdb) KFAIL: gdb.base/longjmp.exp: with_probes\u003d0: pattern 1: gdb/26967 \\\n  (PRMS: next over longjmp)\ndelete breakpoints\nDelete all breakpoints? (y or n) y\n(gdb) info breakpoints\nNo breakpoints or watchpoints.\n(gdb) break 63\nNo line 63 in the current file.\nMake breakpoint pending on future shared library load? (y or [n]) n\n(gdb) FAIL: gdb.base/longjmp.exp: with_probes\u003d0: pattern 2: setup: breakpoint \\\n  at pattern start (got interactive prompt)\n...\n\nThe test-case intends to set the breakpoint on line number 63 in\ngdb.base/longjmp.c.\n\nIt tries to do so by specifying \"break 63\", which specifies a line in the\n\"current source file\".\n\nDue to the KFAIL PR, gdb stopped in __libc_siglongjmp, and because of presence\nof debug info, the \"current source file\" becomes glibc\u0027s ./setjmp/longjmp.c.\n\nConsequently, setting the breakpoint fails.\n\nFix this by adding a $subdir/$srcfile: prefix to the breakpoint linespecs.\n\nI\u0027ve managed to reproduce the FAIL on x86_64/-m32, by installing the\nglibc-32bit-debuginfo package.  This allowed me to confirm the \"current source\nfile\" that is used:\n...\n(gdb) KFAIL: gdb.base/longjmp.exp: with_probes\u003d0: pattern 1: gdb/26967 \\\n  (PRMS: next over longjmp)\ninfo source^M\nCurrent source file is ../setjmp/longjmp.c^M\n...\n\nTested on x86_64-linux, target boards unix/{-m64,-m32}.\n\nReported-By: Luis Machado \u003cluis.machado@arm.com\u003e\nReviewed-By: Tom Tromey \u003ctom@tromey.com\u003e\n\nPR testsuite/30103\nBug: https://sourceware.org/bugzilla/show_bug.cgi?id\u003d30103\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "96d9c1c80596ef9655a2ca53dd3d1835d696e6f9",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.base/longjmp.exp",
      "new_id": "f74891aa7caa90c15c11774dab4079ba9bdbf227",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.base/longjmp.exp"
    }
  ]
}
