)]}'
{
  "commit": "4983bb052d3a57fe1b43334071ba61a8443bb5aa",
  "tree": "d23c5020b17d1d11893a511ce38d3c18ee62733f",
  "parents": [
    "4214ca9036c8f5d01025d0505ff1167700af5f98"
  ],
  "author": {
    "name": "Nick Alcock",
    "email": "nick.alcock@oracle.com",
    "time": "Thu Jul 17 17:45:02 2025 +0100"
  },
  "committer": {
    "name": "Nick Alcock",
    "email": "nick.alcock@oracle.com",
    "time": "Wed Jul 23 13:06:16 2025 +0100"
  },
  "message": "libctf: don\u0027t run tests requiring deduplicating linker unless one is in use\n\nBefore now, we were relying on gcc -B to repoint GCC at our freshly-built\nlinker, and assuming we could use this to run tests that do linker dedup.\n\nThis is, alas, not reliable (building --with-ld\u003d/an/absolute/path bypasses\n-B searches for the linker), and we would like the libctf tests in\nparticular to not fail if the compiler uses a linker that cannot deduplicate\n(simply skipping such tests).\n\nAdd a new testsuite function that tries to link one of the lookup tests\u0027\ntestcases (which is known to produce conflicting types, i.e. a dict with\nper-translation-unit children) and then does an objdump and greps it for\nsigns of the per-translation-unit children.  If there are none, the linker\nprobably just concatenated the sections: i.e., it is not a linker that\ncan deduplicate CTF.\n\nlibctf/\n\tPR libctf/33162\n\t* testsuite/config/default.exp (objdump): Introduce.\n\t(OBJDUMPFLAGS): Likewise.\n\t* testsuite/lib/ctf-lib.exp (check_ctf_linker_dedup): New.\n\t* testsuite/libctf-lookup/lookup.exp: Use it.\n\t* testsuite/libctf-regression/libctf-repeat-cu.exp: Likewise.\n\t* testsuite/libctf-regression/regression.exp: Likewise.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f24482620b6c2d0f5c82b3585c432f0ccc1da14d",
      "old_mode": 33188,
      "old_path": "libctf/testsuite/config/default.exp",
      "new_id": "d5e51f418cadb0075e5001c51bde9d5d4278498b",
      "new_mode": 33188,
      "new_path": "libctf/testsuite/config/default.exp"
    },
    {
      "type": "modify",
      "old_id": "64d2a40ad9f219b1956451714a4690c151fe316f",
      "old_mode": 33188,
      "old_path": "libctf/testsuite/lib/ctf-lib.exp",
      "new_id": "4df6619606b99ee75b6d7ceb10b42f80b610b3bd",
      "new_mode": 33188,
      "new_path": "libctf/testsuite/lib/ctf-lib.exp"
    },
    {
      "type": "modify",
      "old_id": "a8b09c2df78ac916f242d6102d8d500f7d0f6005",
      "old_mode": 33188,
      "old_path": "libctf/testsuite/libctf-lookup/lookup.exp",
      "new_id": "d15c315729de991c58d1f54b1681290b6fc63027",
      "new_mode": 33188,
      "new_path": "libctf/testsuite/libctf-lookup/lookup.exp"
    },
    {
      "type": "modify",
      "old_id": "e29cf63fce95713b1c4177311c47f9484c4e6b91",
      "old_mode": 33188,
      "old_path": "libctf/testsuite/libctf-regression/libctf-repeat-cu.exp",
      "new_id": "7c19fe8f6a75a71374f70343850d66becd2d546b",
      "new_mode": 33188,
      "new_path": "libctf/testsuite/libctf-regression/libctf-repeat-cu.exp"
    },
    {
      "type": "modify",
      "old_id": "e4b63473691daeb9fa2fa650a5da61395dcc39f1",
      "old_mode": 33188,
      "old_path": "libctf/testsuite/libctf-regression/regression.exp",
      "new_id": "0270cca0cba2b960cfedcdb0ca6f104db82aec06",
      "new_mode": 33188,
      "new_path": "libctf/testsuite/libctf-regression/regression.exp"
    }
  ]
}
