)]}'
{
  "commit": "4e56f8edecf6e4e2be61e3ecf4a4be44c8cdba5c",
  "tree": "791b941d07d0b645020d0b2abe200e64c84c9951",
  "parents": [
    "a4f89407f1bd9439c4ef2c0e54c946309ff51fcb"
  ],
  "author": {
    "name": "devangpratap",
    "email": "115096812+devangpratap@users.noreply.github.com",
    "time": "Tue Sep 08 19:13:49 2026 -0400"
  },
  "committer": {
    "name": "devangpratap",
    "email": "115096812+devangpratap@users.noreply.github.com",
    "time": "Tue Sep 08 19:13:49 2026 -0400"
  },
  "message": "fix: don\u0027t treat a raw identifier as a raw string prefix\n\nCharClasses entered raw string state whenever `r` was followed by `#`,\nwhich also matches a raw identifier such as `r#struct`. That marked the\nfirst few characters as InString, so replace_names copied `r#s` through\nverbatim and registered the leftover `truct` as the metavariable name.\nUndoing the substitution afterwards put the `$` back in the wrong place,\nso `$r#struct` came out as `r#s$truct` and no longer compiled.\n\nOnly enter raw string state when the run of `#`s after `r` ends in a\nquote.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "40e42b53ed1bc4992b5d5edfde759c274a9d1e48",
      "old_mode": 33188,
      "old_path": "src/comment.rs",
      "new_id": "4162b5f0db8249b66fbed3fc258e7b8991685611",
      "new_mode": 33188,
      "new_path": "src/comment.rs"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "daa05387921a64b97300148f2062031a157d4607",
      "new_mode": 33188,
      "new_path": "tests/target/issue-7056.rs"
    }
  ]
}
