)]}'
{
  "commit": "e8a28e78a947c2233abbc47ec00bcd8513df7239",
  "tree": "8bb48423d33baebc80a2c58da62edcf2e11b0d81",
  "parents": [
    "d2218f5f5ca3f502772ec4cb69fc2ee44e096512"
  ],
  "author": {
    "name": "Nicholas Nethercote",
    "email": "n.nethercote@gmail.com",
    "time": "Tue Mar 03 09:42:13 2026 +1100"
  },
  "committer": {
    "name": "Nicholas Nethercote",
    "email": "n.nethercote@gmail.com",
    "time": "Wed Mar 04 07:08:43 2026 +1100"
  },
  "message": "Remove `tls::with_related_context`.\n\nThis function gets the current `ImplicitCtxt` and checks that its `tcx`\nmatches the passed-in `tcx`. It\u0027s an extra bit of sanity checking: when\nyou already have a `tcx`, and you need access to the non-`tcx` parts of\n`ImplicitCtxt`, check that your `tcx` matches the one in `ImplicitCtxt`.\n\nHowever, it\u0027s only used in two places: `start_query` and\n`current_query_job`. The non-checked alternatives (`with_context`,\n`with_context_opt`) are used in more places, including some where a\n`tcx` is available. And things would have to go catastrophically wrong\nfor the check to fail -- e.g. if we somehow end up with multiple\n`TyCtxt`s. In my opinion it\u0027s just an extra case to understand in\n`tls.rs` that adds little value.\n\nThis commit removes it. This avoids the need for `tcx` parameters in a\ncouple of places. The commit also adjusts how `start_query` sets up its\n`ImplicitCtxt` to more closely match how similar functions do it, i.e.\nwith `..icx.clone()` for the unchanged fields.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d37ad56c2e83d2346352ed80ea4125e2d4ad9928",
      "old_mode": 33188,
      "old_path": "compiler/rustc_middle/src/ty/context/tls.rs",
      "new_id": "6e89719f265a9f13953d49ee8b7b31b668b0d815",
      "new_mode": 33188,
      "new_path": "compiler/rustc_middle/src/ty/context/tls.rs"
    },
    {
      "type": "modify",
      "old_id": "323d40fdbaabb14610f3b104a1223147e9519fe5",
      "old_mode": 33188,
      "old_path": "compiler/rustc_query_impl/src/execution.rs",
      "new_id": "18e3f045cea43e82977af53bd6552ab0a6878121",
      "new_mode": 33188,
      "new_path": "compiler/rustc_query_impl/src/execution.rs"
    },
    {
      "type": "modify",
      "old_id": "425ca2891007363e05f1b42b4d7cdc7248027baa",
      "old_mode": 33188,
      "old_path": "compiler/rustc_query_impl/src/plumbing.rs",
      "new_id": "51dcd704d833a5e409c1529d57dd125997b83c27",
      "new_mode": 33188,
      "new_path": "compiler/rustc_query_impl/src/plumbing.rs"
    }
  ]
}
