)]}'
{
  "commit": "20a4cf9f96fee2872c415055179fc3353f37e7f0",
  "tree": "d3d89cbe6bd7beb02e6808b5f81aa20d41ba6b6a",
  "parents": [
    "ae9ccc700bda405b387cd0a6318b00138027f388"
  ],
  "author": {
    "name": "Iain Sandoe",
    "email": "iain@sandoe.co.uk",
    "time": "Thu May 29 15:45:29 2025 +0100"
  },
  "committer": {
    "name": "Iain Sandoe",
    "email": "iain@sandoe.co.uk",
    "time": "Tue Jul 29 16:04:46 2025 +0100"
  },
  "message": "c++, coroutines: Make a check more specific [PR109283].\n\nThe check was intended to assert that we had visited contained\nternary expressions with embedded co_awaits, but had been made\ntoo general - and therefore was ICEing on code that was actually\nOK.  Fixed by checking specifically that no co_awaits embedded.\n\n\tPR c++/109283\n\ngcc/cp/ChangeLog:\n\n\t* coroutines.cc (find_any_await): Only save the statement\n\tpointer if the caller passes a place for it.\n\t(flatten_await_stmt): When checking that ternary expressions\n\thave been handled, also check that they contain a co_await.\n\ngcc/testsuite/ChangeLog:\n\n\t* g++.dg/coroutines/pr109283.C: New test.\n\nSigned-off-by: Iain Sandoe \u003ciain@sandoe.co.uk\u003e\n(cherry picked from commit 977fadd69776e2a8a6daca43e1c898bc4f87154d)\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "04ed5531997a5f16d893816a4d9ae201b061822a",
      "old_mode": 33188,
      "old_path": "gcc/cp/coroutines.cc",
      "new_id": "a8e5143c54dd55284b050f8e2d631cc48f6d4cb5",
      "new_mode": 33188,
      "new_path": "gcc/cp/coroutines.cc"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d73092b595e8942ed1718d43466421aa1d5b1ec0",
      "new_mode": 33188,
      "new_path": "gcc/testsuite/g++.dg/coroutines/pr109283.C"
    }
  ]
}
