)]}'
{
  "commit": "9dc1523b573cc065d6124e3127009c1d7cb8317b",
  "tree": "93c5b1823d9158cdfd80e06baa3e605e9d4457f6",
  "parents": [
    "5e632eca05f38ea7229f103e0636e02c6dfcd9fa"
  ],
  "author": {
    "name": "Simon Marchi",
    "email": "simon.marchi@efficios.com",
    "time": "Tue May 09 10:23:44 2023 -0400"
  },
  "committer": {
    "name": "Simon Marchi",
    "email": "simon.marchi@efficios.com",
    "time": "Thu May 25 08:46:23 2023 -0400"
  },
  "message": "gdb: add breakpoint \"has locations\" methods\n\nAdd three convenience methods to struct breakpoint:\n\n - has_locations: returns true if the breakpoint has at least one\n   location\n - has_single_location: returns true if the breakpoint has exactly one\n   location\n - has_multiple_locations: returns true if the breakpoint has more than\n   one location\n\nA subsequent patch changes the list of breakpoints to be an\nintrusive_list, so all these spots would need to change.  But in any\ncase, I think that this:\n\n  if (b-\u003ehas_multiple_locations ())\n\nconveys the intention better than:\n\n  if (b-\u003eloc !\u003d nullptr \u0026\u0026 b-\u003eloc-\u003enext !\u003d nullptr)\n\nChange-Id: Ib18c3605fd35d425ef9df82cb7aacff1606c6747\nReviewed-By: Andrew Burgess \u003caburgess@redhat.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b5a8b4bf5447eb007189cb6eb7e78f8a2ec24eba",
      "old_mode": 33188,
      "old_path": "gdb/ada-lang.c",
      "new_id": "db07f5b95f31f66a4fd1ce4ef57defbe396dc0b9",
      "new_mode": 33188,
      "new_path": "gdb/ada-lang.c"
    },
    {
      "type": "modify",
      "old_id": "30b985ab5bc908a1dc8af99ccef9a70ecb83c0d3",
      "old_mode": 33188,
      "old_path": "gdb/breakpoint.c",
      "new_id": "4fcaf007d05abf8e284fab8a1cd6595b7359069b",
      "new_mode": 33188,
      "new_path": "gdb/breakpoint.c"
    },
    {
      "type": "modify",
      "old_id": "80cb91b1a911727f19b2930a9f11cc9a5c7faff2",
      "old_mode": 33188,
      "old_path": "gdb/breakpoint.h",
      "new_id": "2a3a5cf57b8376c811fa0aa5b76b23981f511100",
      "new_mode": 33188,
      "new_path": "gdb/breakpoint.h"
    },
    {
      "type": "modify",
      "old_id": "c17b256df112a7ffedf3e90ff14616498c153142",
      "old_mode": 33188,
      "old_path": "gdb/elfread.c",
      "new_id": "83b20a388c8b2c5b0a672ff0feeabeb9921c178c",
      "new_mode": 33188,
      "new_path": "gdb/elfread.c"
    },
    {
      "type": "modify",
      "old_id": "d8d0f05d049b8322b753a2b3669a7701cc3d0210",
      "old_mode": 33188,
      "old_path": "gdb/tracectf.c",
      "new_id": "ab513b1fa158a539b80d7a2dd722aaff69e56bff",
      "new_mode": 33188,
      "new_path": "gdb/tracectf.c"
    },
    {
      "type": "modify",
      "old_id": "31eb974d41637a663eb4c9a40f0f2cb16b4a3e87",
      "old_mode": 33188,
      "old_path": "gdb/tracefile-tfile.c",
      "new_id": "9c1adee11bc37b4407607bde27bf22da373dd621",
      "new_mode": 33188,
      "new_path": "gdb/tracefile-tfile.c"
    },
    {
      "type": "modify",
      "old_id": "b4543c9bf5fd05b8e1af880a6b1c6642769698fc",
      "old_mode": 33188,
      "old_path": "gdb/tracefile.c",
      "new_id": "883ce4bf375ac215e75f368ba2c87a53897eafc1",
      "new_mode": 33188,
      "new_path": "gdb/tracefile.c"
    },
    {
      "type": "modify",
      "old_id": "9e5ced1893e0082eae1fe7227b4c665721548158",
      "old_mode": 33188,
      "old_path": "gdb/tracepoint.c",
      "new_id": "4b775d1a4a2e0ce2c3baf3c4c5b3b73baa47e7a2",
      "new_mode": 33188,
      "new_path": "gdb/tracepoint.c"
    }
  ]
}
