)]}'
{
  "commit": "120072c7cdc14f2e6e2ca1fe4a8eb5bec9e6e36b",
  "tree": "f28fbfc5972ccaa7accf9e613eda04d77268d35e",
  "parents": [
    "13a7a6aa0d18e1faced5d3b88ab81fa6f95e845f"
  ],
  "author": {
    "name": "Andrew Burgess",
    "email": "aburgess@redhat.com",
    "time": "Thu Feb 12 18:22:50 2026 +0000"
  },
  "committer": {
    "name": "Andrew Burgess",
    "email": "aburgess@redhat.com",
    "time": "Thu Feb 19 10:43:37 2026 +0000"
  },
  "message": "gdb/testsuite: update C++ tests for volatile changes in C++20\n\nI ran the testsuite on a machine where the C++ compiler was C++20 by\ndefault, and noticed a bunch of errors like this:\n\n  gdb compile failed, /tmp/BUILD/gdb-17.1-build/gdb-17.1/gdb/testsuite/gdb.base/infcall-nested-structs.c: In function \u0027void breakpt()\u0027:\n  /tmp/BUILD/gdb-17.1-build/gdb-17.1/gdb/testsuite/gdb.base/infcall-nested-structs.c:414:3: warning: \u0027++\u0027 expression of \u0027volatile\u0027-qualified type is deprecated [-Wvolatile]\n    414 |   v++;\n        |   ^\n  UNRESOLVED: gdb.base/infcall-nested-structs-c++.exp: types-tl: failed to compile\n\nMy understanding is that, in C++20, some operations on volatile\nvariables are now deprecated.  So things like:\n\n  volatile int var \u003d 0;\n  ++var;\n  --var\n  var +\u003d 1;\n  var -\u003d 1;\n\nAre now, I believe, all deprecated.  However, this is still allowed:\n\n  var \u003d var + 1;\n\nThere are a few test cases where this impacts us, though in every case\nthe increment of the volatile only existed in order to create filler\nwork, as far as I can tell the volatile variable is never inspected\nfrom GDB.\n\nIn gdb.base/infcall-nested-structs.c I just deleted the volatile\ncompletely.\n\nIn the other tests I replaced the \u0027++\u0027 with \u0027var \u003d var + 1\u0027 type code.\n\nI don\u0027t believe there should be any change in what is actually being\ntested after this patch.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4f194e81f27cf06b690b5dbdecaa48afe4bb0a3e",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.base/infcall-nested-structs.c",
      "new_id": "9b083f15f11c1b197c2c40b2823cafa109a8e2b8",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.base/infcall-nested-structs.c"
    },
    {
      "type": "modify",
      "old_id": "f2fafeb9438be3f60c45f0a4d581a089b625aac6",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.cp/breakpoint-locs.h",
      "new_id": "35779bec495ff2d51ae6f4d1c0178049436e21c4",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.cp/breakpoint-locs.h"
    },
    {
      "type": "modify",
      "old_id": "7ce3e13ec9a2924ec108356fb421a75fb2b90912",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.opt/empty-inline-cxx.cc",
      "new_id": "c6a084a6e375b5d2637b4e2cbbc92f5fa5a43d04",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.opt/empty-inline-cxx.cc"
    },
    {
      "type": "modify",
      "old_id": "fead05feb2416b8461744877bd4bf0c71931beca",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.threads/next-while-other-thread-longjmps.c",
      "new_id": "c4ebb1f6cfbbe387fe1a1e553a99f258e4ecd51f",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.threads/next-while-other-thread-longjmps.c"
    }
  ]
}
