]> git.lizzy.rs Git - rust.git/commitdiff
Auto merge of #66911 - eddyb:nicer-rustc_regions, r=matthewjasper
authorbors <bors@rust-lang.org>
Fri, 6 Dec 2019 00:22:54 +0000 (00:22 +0000)
committerbors <bors@rust-lang.org>
Fri, 6 Dec 2019 00:22:54 +0000 (00:22 +0000)
rustc_mir: use nicer path printing for #[rustc_regions] NLL tests.

Similar to #66850, spotted while working on #66907.

r? @matthewjasper

16 files changed:
1  2 
src/test/ui/nll/closure-requirements/escape-argument-callee.stderr
src/test/ui/nll/closure-requirements/escape-argument.stderr
src/test/ui/nll/closure-requirements/propagate-approximated-fail-no-postdom.stderr
src/test/ui/nll/closure-requirements/propagate-approximated-ref.stderr
src/test/ui/nll/closure-requirements/propagate-approximated-shorter-to-static-comparing-against-free.stderr
src/test/ui/nll/closure-requirements/propagate-approximated-shorter-to-static-no-bound.stderr
src/test/ui/nll/closure-requirements/propagate-approximated-shorter-to-static-wrong-bound.stderr
src/test/ui/nll/closure-requirements/propagate-approximated-val.stderr
src/test/ui/nll/closure-requirements/propagate-despite-same-free-region.stderr
src/test/ui/nll/closure-requirements/propagate-fail-to-approximate-longer-no-bounds.stderr
src/test/ui/nll/closure-requirements/propagate-fail-to-approximate-longer-wrong-bounds.stderr
src/test/ui/nll/closure-requirements/return-wrong-bound-region.stderr
src/test/ui/nll/ty-outlives/projection-one-region-closure.stderr
src/test/ui/nll/ty-outlives/projection-two-region-trait-bound-closure.stderr
src/test/ui/nll/ty-outlives/ty-param-closure-approximate-lower-bound.stderr
src/test/ui/nll/ty-outlives/ty-param-closure-outlives-from-where-clause.stderr

index abeffee4d3fc294d14d3b7bbad941a0136477a33,a6619b9a8cbb2283f2a4571a51e393933f545857..3d79ff0b706f57e71dac931892ab2300b4059cf8
@@@ -4,9 -4,9 +4,9 @@@ note: No external requirement
  LL |         let mut closure = expect_sig(|p, y| *p = y);
     |                                      ^^^^^^^^^^^^^
     |
-    = note: defining type: DefId(0:4 ~ escape_argument_callee[317d]::test[0]::{{closure}}[0]) with closure substs [
+    = note: defining type: test::{{closure}}#0 with closure substs [
                 i16,
 -               for<'r, 's, 't0> extern "rust-call" fn((&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 'r)) mut &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 's)) i32, &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 't0)) i32)),
 +               for<'r, 's, 't0> extern "rust-call" fn((&ReLateBound(DebruijnIndex(0), BrNamed('r)) mut &ReLateBound(DebruijnIndex(0), BrNamed('s)) i32, &ReLateBound(DebruijnIndex(0), BrNamed('t0)) i32)),
             ]
  
  error: lifetime may not live long enough
@@@ -30,7 -30,7 +30,7 @@@ LL | |     deref(p)
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:3 ~ escape_argument_callee[317d]::test[0]) with substs []
+    = note: defining type: test
  
  error: aborting due to previous error
  
index f750d15533bc4cac7a6a728e94e510083f1d9070,31c7c325d1abde2f1723b52d5ea2f240e47554bd..37f04af6378d9ae24a0945ad22cc221ef7e4854e
@@@ -4,9 -4,9 +4,9 @@@ note: No external requirement
  LL |         let mut closure = expect_sig(|p, y| *p = y);
     |                                      ^^^^^^^^^^^^^
     |
-    = note: defining type: DefId(0:4 ~ escape_argument[317d]::test[0]::{{closure}}[0]) with closure substs [
+    = note: defining type: test::{{closure}}#0 with closure substs [
                 i16,
 -               for<'r, 's> extern "rust-call" fn((&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 'r)) mut &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 's)) i32, &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 's)) i32)),
 +               for<'r, 's> extern "rust-call" fn((&ReLateBound(DebruijnIndex(0), BrNamed('r)) mut &ReLateBound(DebruijnIndex(0), BrNamed('s)) i32, &ReLateBound(DebruijnIndex(0), BrNamed('s)) i32)),
             ]
  
  note: No external requirements
@@@ -21,7 -21,7 +21,7 @@@ LL | |     deref(p)
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:3 ~ escape_argument[317d]::test[0]) with substs []
+    = note: defining type: test
  
  error[E0597]: `y` does not live long enough
    --> $DIR/escape-argument.rs:27:25
index 92f30d400f26ebdedc82b83ab66d99aa7cdbf0ab,eef77b0b2dccfc95ad6f62372dc7bb0263573f37..4e3aa352fffdb3b7b292014a63addb642d1b28d7
@@@ -8,9 -8,9 +8,9 @@@ LL | |             demand_y(x, y, p
  LL | |         },
     | |_________^
     |
-    = note: defining type: DefId(0:18 ~ propagate_approximated_fail_no_postdom[317d]::supply[0]::{{closure}}[0]) with closure substs [
+    = note: defining type: supply::{{closure}}#0 with closure substs [
                 i16,
 -               for<'r, 's> extern "rust-call" fn((std::cell::Cell<&'_#1r &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 'r)) u32>, std::cell::Cell<&'_#2r &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 'r)) u32>, std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 's)) &'_#3r u32>, std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 'r)) u32>, std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 's)) u32>)),
 +               for<'r, 's> extern "rust-call" fn((std::cell::Cell<&'_#1r &ReLateBound(DebruijnIndex(0), BrNamed('r)) u32>, std::cell::Cell<&'_#2r &ReLateBound(DebruijnIndex(0), BrNamed('r)) u32>, std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('s)) &'_#3r u32>, std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('r)) u32>, std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('s)) u32>)),
             ]
     = note: late-bound region is '_#4r
     = note: late-bound region is '_#5r
@@@ -39,7 -39,7 +39,7 @@@ LL | |     )
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:14 ~ propagate_approximated_fail_no_postdom[317d]::supply[0]) with substs []
+    = note: defining type: supply
  
  error: aborting due to previous error
  
index 00bb66afbe5386ec6fa7ca4288aaf4b27a61e552,8b637b1f7257a9df4b1c6b673475ca24f97b5129..cd61b8b5e555e19381ec64ed18b0207461f39d25
@@@ -9,9 -9,9 +9,9 @@@ LL | 
  LL | |     });
     | |_____^
     |
-    = note: defining type: DefId(0:16 ~ propagate_approximated_ref[317d]::supply[0]::{{closure}}[0]) with closure substs [
+    = note: defining type: supply::{{closure}}#0 with closure substs [
                 i16,
 -               for<'r, 's, 't0, 't1, 't2, 't3> extern "rust-call" fn((&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 'r)) std::cell::Cell<&'_#1r &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 's)) u32>, &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 't0)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 't1)) &'_#2r u32>, &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 't2)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 's)) u32>, &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 't3)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 't1)) u32>)),
 +               for<'r, 's, 't0, 't1, 't2, 't3> extern "rust-call" fn((&ReLateBound(DebruijnIndex(0), BrNamed('r)) std::cell::Cell<&'_#1r &ReLateBound(DebruijnIndex(0), BrNamed('s)) u32>, &ReLateBound(DebruijnIndex(0), BrNamed('t0)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('t1)) &'_#2r u32>, &ReLateBound(DebruijnIndex(0), BrNamed('t2)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('s)) u32>, &ReLateBound(DebruijnIndex(0), BrNamed('t3)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('t1)) u32>)),
             ]
     = note: late-bound region is '_#3r
     = note: late-bound region is '_#4r
@@@ -30,7 -30,7 +30,7 @@@ LL | |     })
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:13 ~ propagate_approximated_ref[317d]::supply[0]) with substs []
+    = note: defining type: supply
  
  error: lifetime may not live long enough
    --> $DIR/propagate-approximated-ref.rs:45:9
index 2b05503b58dbe17cd839df6d5f8818233dbb10d9,2cd21de419d90e93c1be4432569d3084d085b9db..259140c2e5a3df14c96bf35c34d3b6fe3a71d8cd
@@@ -8,9 -8,9 +8,9 @@@ LL | 
  LL | |     })
     | |_____^
     |
-    = note: defining type: DefId(0:9 ~ propagate_approximated_shorter_to_static_comparing_against_free[317d]::case1[0]::{{closure}}[0]) with closure substs [
+    = note: defining type: case1::{{closure}}#0 with closure substs [
                 i32,
 -               for<'r> extern "rust-call" fn((std::cell::Cell<&'_#1r u32>, std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 'r)) u32>)),
 +               for<'r> extern "rust-call" fn((std::cell::Cell<&'_#1r u32>, std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('r)) u32>)),
             ]
  
  error[E0521]: borrowed data escapes outside of closure
@@@ -35,7 -35,7 +35,7 @@@ LL | |     }
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:8 ~ propagate_approximated_shorter_to_static_comparing_against_free[317d]::case1[0]) with substs []
+    = note: defining type: case1
  
  note: External requirements
    --> $DIR/propagate-approximated-shorter-to-static-comparing-against-free.rs:35:15
@@@ -46,9 -46,9 +46,9 @@@ LL | |         cell_x.set(cell_a.get())
  LL | |     })
     | |_____^
     |
-    = note: defining type: DefId(0:11 ~ propagate_approximated_shorter_to_static_comparing_against_free[317d]::case2[0]::{{closure}}[0]) with closure substs [
+    = note: defining type: case2::{{closure}}#0 with closure substs [
                 i32,
 -               for<'r> extern "rust-call" fn((std::cell::Cell<&'_#1r u32>, std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 'r)) u32>)),
 +               for<'r> extern "rust-call" fn((std::cell::Cell<&'_#1r u32>, std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('r)) u32>)),
             ]
     = note: number of external vids: 2
     = note: where '_#1r: '_#0r
@@@ -65,7 -65,7 +65,7 @@@ LL | |     }
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:10 ~ propagate_approximated_shorter_to_static_comparing_against_free[317d]::case2[0]) with substs []
+    = note: defining type: case2
  
  error[E0597]: `a` does not live long enough
    --> $DIR/propagate-approximated-shorter-to-static-comparing-against-free.rs:30:26
index ee0f0b7e65dd828cadf3ee42bab86e6c1959c061,e61ab7d9b0d0c1db2b95b82eda0fccb12b7c8672..b3dd682e4f0b72e1079fbfaa6b9fb08707b09be8
@@@ -10,9 -10,9 +10,9 @@@ LL | |         demand_y(x, y, x.get()
  LL | |     });
     | |_____^
     |
-    = note: defining type: DefId(0:16 ~ propagate_approximated_shorter_to_static_no_bound[317d]::supply[0]::{{closure}}[0]) with closure substs [
+    = note: defining type: supply::{{closure}}#0 with closure substs [
                 i16,
 -               for<'r, 's, 't0, 't1, 't2> extern "rust-call" fn((&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 'r)) std::cell::Cell<&'_#1r &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 's)) u32>, &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 't0)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 's)) u32>, &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 't1)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 't2)) u32>)),
 +               for<'r, 's, 't0, 't1, 't2> extern "rust-call" fn((&ReLateBound(DebruijnIndex(0), BrNamed('r)) std::cell::Cell<&'_#1r &ReLateBound(DebruijnIndex(0), BrNamed('s)) u32>, &ReLateBound(DebruijnIndex(0), BrNamed('t0)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('s)) u32>, &ReLateBound(DebruijnIndex(0), BrNamed('t1)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('t2)) u32>)),
             ]
     = note: late-bound region is '_#2r
     = note: late-bound region is '_#3r
@@@ -31,7 -31,7 +31,7 @@@ LL | |     })
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:13 ~ propagate_approximated_shorter_to_static_no_bound[317d]::supply[0]) with substs []
+    = note: defining type: supply
  
  error[E0521]: borrowed data escapes outside of function
    --> $DIR/propagate-approximated-shorter-to-static-no-bound.rs:32:5
index 611a129e00c83c088c08baa1e4ce77ae93a569bf,836a25f7ac20d24a1529578893233731e5675810..ab12d08f7b74eb2ac9ed95cc88683bdf67371f05
@@@ -10,9 -10,9 +10,9 @@@ LL | |         demand_y(x, y, x.get()
  LL | |     });
     | |_____^
     |
-    = note: defining type: DefId(0:16 ~ propagate_approximated_shorter_to_static_wrong_bound[317d]::supply[0]::{{closure}}[0]) with closure substs [
+    = note: defining type: supply::{{closure}}#0 with closure substs [
                 i16,
 -               for<'r, 's, 't0, 't1, 't2, 't3> extern "rust-call" fn((&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 'r)) std::cell::Cell<&'_#1r &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 's)) u32>, &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 't0)) std::cell::Cell<&'_#2r &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 't1)) u32>, &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 't2)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 's)) u32>, &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 't3)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 't1)) u32>)),
 +               for<'r, 's, 't0, 't1, 't2, 't3> extern "rust-call" fn((&ReLateBound(DebruijnIndex(0), BrNamed('r)) std::cell::Cell<&'_#1r &ReLateBound(DebruijnIndex(0), BrNamed('s)) u32>, &ReLateBound(DebruijnIndex(0), BrNamed('t0)) std::cell::Cell<&'_#2r &ReLateBound(DebruijnIndex(0), BrNamed('t1)) u32>, &ReLateBound(DebruijnIndex(0), BrNamed('t2)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('s)) u32>, &ReLateBound(DebruijnIndex(0), BrNamed('t3)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('t1)) u32>)),
             ]
     = note: late-bound region is '_#3r
     = note: late-bound region is '_#4r
@@@ -31,7 -31,7 +31,7 @@@ LL | |     })
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:13 ~ propagate_approximated_shorter_to_static_wrong_bound[317d]::supply[0]) with substs []
+    = note: defining type: supply
  
  error[E0521]: borrowed data escapes outside of function
    --> $DIR/propagate-approximated-shorter-to-static-wrong-bound.rs:35:5
index 9328d05518c6733dfefcad990afd629072160509,dfb1913113f8cbb5749c46c13cc7508bf467d0dd..b2209e9cab0c942eed6de671537839d50d3916e4
@@@ -9,9 -9,9 +9,9 @@@ LL | 
  LL | |     });
     | |_____^
     |
-    = note: defining type: DefId(0:16 ~ propagate_approximated_val[317d]::test[0]::{{closure}}[0]) with closure substs [
+    = note: defining type: test::{{closure}}#0 with closure substs [
                 i16,
 -               for<'r, 's> extern "rust-call" fn((std::cell::Cell<&'_#1r &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 'r)) u32>, std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 's)) &'_#2r u32>, std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 'r)) u32>, std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 's)) u32>)),
 +               for<'r, 's> extern "rust-call" fn((std::cell::Cell<&'_#1r &ReLateBound(DebruijnIndex(0), BrNamed('r)) u32>, std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('s)) &'_#2r u32>, std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('r)) u32>, std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('s)) u32>)),
             ]
     = note: late-bound region is '_#3r
     = note: late-bound region is '_#4r
@@@ -30,7 -30,7 +30,7 @@@ LL | |     })
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:13 ~ propagate_approximated_val[317d]::test[0]) with substs []
+    = note: defining type: test
  
  error: lifetime may not live long enough
    --> $DIR/propagate-approximated-val.rs:38:9
index afac5267c4866100182fd5f084700056d0a152c2,33c927e5660034c7155735a0ae0a6aacea7e2d3e..55ee515a3a821b3d3ad34533aa0ef72dca5c3272
@@@ -8,9 -8,9 +8,9 @@@ LL | |             demand_y(x, y, p
  LL | |         },
     | |_________^
     |
-    = note: defining type: DefId(0:14 ~ propagate_despite_same_free_region[317d]::supply[0]::{{closure}}[0]) with closure substs [
+    = note: defining type: supply::{{closure}}#0 with closure substs [
                 i16,
 -               for<'r, 's> extern "rust-call" fn((std::cell::Cell<&'_#1r &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 'r)) u32>, std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 's)) &'_#2r u32>, std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 'r)) u32>, std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 's)) u32>)),
 +               for<'r, 's> extern "rust-call" fn((std::cell::Cell<&'_#1r &ReLateBound(DebruijnIndex(0), BrNamed('r)) u32>, std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('s)) &'_#2r u32>, std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('r)) u32>, std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('s)) u32>)),
             ]
     = note: late-bound region is '_#3r
     = note: number of external vids: 4
@@@ -28,5 -28,5 +28,5 @@@ LL | |     )
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:12 ~ propagate_despite_same_free_region[317d]::supply[0]) with substs []
+    = note: defining type: supply
  
index 9699e8fbdf8e513bc176563b91815a71809ced21,cadb0a177ae68f64fcd7bf46eaedda4b0eac1038..1c29af8c422105c6c758b2e9bbbef81a6b3abd2a
@@@ -9,9 -9,9 +9,9 @@@ LL | 
  LL | |     });
     | |_____^
     |
-    = note: defining type: DefId(0:16 ~ propagate_fail_to_approximate_longer_no_bounds[317d]::supply[0]::{{closure}}[0]) with closure substs [
+    = note: defining type: supply::{{closure}}#0 with closure substs [
                 i16,
 -               for<'r, 's, 't0, 't1, 't2> extern "rust-call" fn((&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 'r)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 's)) &'_#1r u32>, &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 't0)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 't1)) u32>, &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 't2)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 's)) u32>)),
 +               for<'r, 's, 't0, 't1, 't2> extern "rust-call" fn((&ReLateBound(DebruijnIndex(0), BrNamed('r)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('s)) &'_#1r u32>, &ReLateBound(DebruijnIndex(0), BrNamed('t0)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('t1)) u32>, &ReLateBound(DebruijnIndex(0), BrNamed('t2)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('s)) u32>)),
             ]
     = note: late-bound region is '_#2r
     = note: late-bound region is '_#3r
@@@ -39,7 -39,7 +39,7 @@@ LL | |     })
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:13 ~ propagate_fail_to_approximate_longer_no_bounds[317d]::supply[0]) with substs []
+    = note: defining type: supply
  
  error: aborting due to previous error
  
index 2a18079cdc3a3ef7310dea4ebf5fbdcfc2ef582a,24ba0e8d79e0b8ebb11086319d33b4ec5927c577..afa0e9f619ddc75887c50daaeccc04c55c8deea9
@@@ -9,9 -9,9 +9,9 @@@ LL | 
  LL | |     });
     | |_____^
     |
-    = note: defining type: DefId(0:16 ~ propagate_fail_to_approximate_longer_wrong_bounds[317d]::supply[0]::{{closure}}[0]) with closure substs [
+    = note: defining type: supply::{{closure}}#0 with closure substs [
                 i16,
 -               for<'r, 's, 't0, 't1, 't2, 't3> extern "rust-call" fn((&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 'r)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 's)) &'_#1r u32>, &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 't0)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 't1)) &'_#2r u32>, &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 't2)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 's)) u32>, &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 't3)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 't1)) u32>)),
 +               for<'r, 's, 't0, 't1, 't2, 't3> extern "rust-call" fn((&ReLateBound(DebruijnIndex(0), BrNamed('r)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('s)) &'_#1r u32>, &ReLateBound(DebruijnIndex(0), BrNamed('t0)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('t1)) &'_#2r u32>, &ReLateBound(DebruijnIndex(0), BrNamed('t2)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('s)) u32>, &ReLateBound(DebruijnIndex(0), BrNamed('t3)) std::cell::Cell<&ReLateBound(DebruijnIndex(0), BrNamed('t1)) u32>)),
             ]
     = note: late-bound region is '_#3r
     = note: late-bound region is '_#4r
@@@ -39,7 -39,7 +39,7 @@@ LL | |     })
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:13 ~ propagate_fail_to_approximate_longer_wrong_bounds[317d]::supply[0]) with substs []
+    = note: defining type: supply
  
  error: aborting due to previous error
  
index 8ce0b7758b05b27fc86c0e6de02da00ea760dfa1,f6ed5e3a205720eb19a96e5b8a2f6fb29cd56596..ca794d92666f2ed32fb274f0bb07ae024e47749e
@@@ -4,9 -4,9 +4,9 @@@ note: No external requirement
  LL |     expect_sig(|a, b| b); // ought to return `a`
     |                ^^^^^^^^
     |
-    = note: defining type: DefId(0:4 ~ return_wrong_bound_region[317d]::test[0]::{{closure}}[0]) with closure substs [
+    = note: defining type: test::{{closure}}#0 with closure substs [
                 i16,
 -               for<'r, 's> extern "rust-call" fn((&ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 'r)) i32, &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 's)) i32)) -> &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 'r)) i32,
 +               for<'r, 's> extern "rust-call" fn((&ReLateBound(DebruijnIndex(0), BrNamed('r)) i32, &ReLateBound(DebruijnIndex(0), BrNamed('s)) i32)) -> &ReLateBound(DebruijnIndex(0), BrNamed('r)) i32,
             ]
  
  error: lifetime may not live long enough
@@@ -27,7 -27,7 +27,7 @@@ LL | 
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:3 ~ return_wrong_bound_region[317d]::test[0]) with substs []
+    = note: defining type: test
  
  error: aborting due to previous error
  
index d9cbc71f95456ff255bf957abe28b17ac3c570aa,7473305808d8912e2985ffb9bdaf8d27f677e3c4..7226c520bf138fe9382188a5722ee030cf83c1aa
@@@ -4,9 -4,7 +4,7 @@@ note: External requirement
  LL |     with_signature(cell, t, |cell, t| require(cell, t));
     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^
     |
-    = note: defining type: DefId(0:19 ~ projection_one_region_closure[317d]::no_relationships_late[0]::{{closure}}[0]) with closure substs [
-                '_#1r,
-                T,
+    = note: defining type: no_relationships_late::<'_#1r, T>::{{closure}}#0 with closure substs [
                 i32,
                 extern "rust-call" fn((std::cell::Cell<&'_#2r ()>, T)),
             ]
@@@ -27,10 -25,7 +25,7 @@@ LL | 
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:15 ~ projection_one_region_closure[317d]::no_relationships_late[0]) with substs [
-                '_#1r,
-                T,
-            ]
+    = note: defining type: no_relationships_late::<'_#1r, T>
  
  error[E0309]: the parameter type `T` may not live long enough
    --> $DIR/projection-one-region-closure.rs:45:29
@@@ -38,7 -33,7 +33,7 @@@
  LL |     with_signature(cell, t, |cell, t| require(cell, t));
     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^
     |
 -   = help: consider adding an explicit lifetime bound `T: ReFree(DefId(0:15 ~ projection_one_region_closure[317d]::no_relationships_late[0]), BrNamed(crate0:DefIndex(16), 'a))`...
 +   = help: consider adding an explicit lifetime bound `T: ReFree(DefId(0:15 ~ projection_one_region_closure[317d]::no_relationships_late[0]), BrNamed(DefId(0:16 ~ projection_one_region_closure[317d]::no_relationships_late[0]::'a[0]), 'a))`...
  
  error: lifetime may not live long enough
    --> $DIR/projection-one-region-closure.rs:45:39
@@@ -59,10 -54,7 +54,7 @@@ note: External requirement
  LL |     with_signature(cell, t, |cell, t| require(cell, t));
     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^
     |
-    = note: defining type: DefId(0:24 ~ projection_one_region_closure[317d]::no_relationships_early[0]::{{closure}}[0]) with closure substs [
-                '_#1r,
-                '_#2r,
-                T,
+    = note: defining type: no_relationships_early::<'_#1r, '_#2r, T>::{{closure}}#0 with closure substs [
                 i32,
                 extern "rust-call" fn((std::cell::Cell<&'_#3r ()>, T)),
             ]
@@@ -82,11 -74,7 +74,7 @@@ LL | 
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:20 ~ projection_one_region_closure[317d]::no_relationships_early[0]) with substs [
-                '_#1r,
-                '_#2r,
-                T,
-            ]
+    = note: defining type: no_relationships_early::<'_#1r, '_#2r, T>
  
  error[E0309]: the parameter type `T` may not live long enough
    --> $DIR/projection-one-region-closure.rs:56:29
@@@ -115,10 -103,7 +103,7 @@@ note: External requirement
  LL |     with_signature(cell, t, |cell, t| require(cell, t));
     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^
     |
-    = note: defining type: DefId(0:29 ~ projection_one_region_closure[317d]::projection_outlives[0]::{{closure}}[0]) with closure substs [
-                '_#1r,
-                '_#2r,
-                T,
+    = note: defining type: projection_outlives::<'_#1r, '_#2r, T>::{{closure}}#0 with closure substs [
                 i32,
                 extern "rust-call" fn((std::cell::Cell<&'_#3r ()>, T)),
             ]
@@@ -137,11 -122,7 +122,7 @@@ LL | |     with_signature(cell, t, |cel
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:25 ~ projection_one_region_closure[317d]::projection_outlives[0]) with substs [
-                '_#1r,
-                '_#2r,
-                T,
-            ]
+    = note: defining type: projection_outlives::<'_#1r, '_#2r, T>
  
  note: External requirements
    --> $DIR/projection-one-region-closure.rs:80:29
  LL |     with_signature(cell, t, |cell, t| require(cell, t));
     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^
     |
-    = note: defining type: DefId(0:34 ~ projection_one_region_closure[317d]::elements_outlive[0]::{{closure}}[0]) with closure substs [
-                '_#1r,
-                '_#2r,
-                T,
+    = note: defining type: elements_outlive::<'_#1r, '_#2r, T>::{{closure}}#0 with closure substs [
                 i32,
                 extern "rust-call" fn((std::cell::Cell<&'_#3r ()>, T)),
             ]
@@@ -172,11 -150,7 +150,7 @@@ LL | |     with_signature(cell, t, |cel
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:30 ~ projection_one_region_closure[317d]::elements_outlive[0]) with substs [
-                '_#1r,
-                '_#2r,
-                T,
-            ]
+    = note: defining type: elements_outlive::<'_#1r, '_#2r, T>
  
  error: aborting due to 4 previous errors
  
index ed53ce9113393089d3b55f8a45d913f27ed154d8,72c60eed66ebfbaa4d76cd9d6d1d3136ae729847..501a55e3105db27fbf6699b2c51430ae16e088c9
@@@ -4,10 -4,7 +4,7 @@@ note: External requirement
  LL |     with_signature(cell, t, |cell, t| require(cell, t));
     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^
     |
-    = note: defining type: DefId(0:22 ~ projection_two_region_trait_bound_closure[317d]::no_relationships_late[0]::{{closure}}[0]) with closure substs [
-                '_#1r,
-                '_#2r,
-                T,
+    = note: defining type: no_relationships_late::<'_#1r, '_#2r, T>::{{closure}}#0 with closure substs [
                 i32,
                 extern "rust-call" fn((std::cell::Cell<&'_#3r ()>, T)),
             ]
@@@ -27,11 -24,7 +24,7 @@@ LL | 
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:17 ~ projection_two_region_trait_bound_closure[317d]::no_relationships_late[0]) with substs [
-                '_#1r,
-                '_#2r,
-                T,
-            ]
+    = note: defining type: no_relationships_late::<'_#1r, '_#2r, T>
  
  error[E0309]: the associated type `<T as Anything<'_#5r, '_#6r>>::AssocType` may not live long enough
    --> $DIR/projection-two-region-trait-bound-closure.rs:38:29
@@@ -39,7 -32,7 +32,7 @@@
  LL |     with_signature(cell, t, |cell, t| require(cell, t));
     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^
     |
 -   = help: consider adding an explicit lifetime bound `<T as Anything<'_#5r, '_#6r>>::AssocType: ReFree(DefId(0:17 ~ projection_two_region_trait_bound_closure[317d]::no_relationships_late[0]), BrNamed(crate0:DefIndex(18), 'a))`...
 +   = help: consider adding an explicit lifetime bound `<T as Anything<'_#5r, '_#6r>>::AssocType: ReFree(DefId(0:17 ~ projection_two_region_trait_bound_closure[317d]::no_relationships_late[0]), BrNamed(DefId(0:18 ~ projection_two_region_trait_bound_closure[317d]::no_relationships_late[0]::'a[0]), 'a))`...
  
  note: External requirements
    --> $DIR/projection-two-region-trait-bound-closure.rs:48:29
  LL |     with_signature(cell, t, |cell, t| require(cell, t));
     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^
     |
-    = note: defining type: DefId(0:28 ~ projection_two_region_trait_bound_closure[317d]::no_relationships_early[0]::{{closure}}[0]) with closure substs [
-                '_#1r,
-                '_#2r,
-                '_#3r,
-                T,
+    = note: defining type: no_relationships_early::<'_#1r, '_#2r, '_#3r, T>::{{closure}}#0 with closure substs [
                 i32,
                 extern "rust-call" fn((std::cell::Cell<&'_#4r ()>, T)),
             ]
@@@ -70,12 -59,7 +59,7 @@@ LL | 
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:23 ~ projection_two_region_trait_bound_closure[317d]::no_relationships_early[0]) with substs [
-                '_#1r,
-                '_#2r,
-                '_#3r,
-                T,
-            ]
+    = note: defining type: no_relationships_early::<'_#1r, '_#2r, '_#3r, T>
  
  error[E0309]: the associated type `<T as Anything<'_#6r, '_#7r>>::AssocType` may not live long enough
    --> $DIR/projection-two-region-trait-bound-closure.rs:48:29
@@@ -91,11 -75,7 +75,7 @@@ note: External requirement
  LL |     with_signature(cell, t, |cell, t| require(cell, t));
     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^
     |
-    = note: defining type: DefId(0:34 ~ projection_two_region_trait_bound_closure[317d]::projection_outlives[0]::{{closure}}[0]) with closure substs [
-                '_#1r,
-                '_#2r,
-                '_#3r,
-                T,
+    = note: defining type: projection_outlives::<'_#1r, '_#2r, '_#3r, T>::{{closure}}#0 with closure substs [
                 i32,
                 extern "rust-call" fn((std::cell::Cell<&'_#4r ()>, T)),
             ]
@@@ -114,12 -94,7 +94,7 @@@ LL | |     with_signature(cell, t, |cel
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:29 ~ projection_two_region_trait_bound_closure[317d]::projection_outlives[0]) with substs [
-                '_#1r,
-                '_#2r,
-                '_#3r,
-                T,
-            ]
+    = note: defining type: projection_outlives::<'_#1r, '_#2r, '_#3r, T>
  
  note: External requirements
    --> $DIR/projection-two-region-trait-bound-closure.rs:70:29
  LL |     with_signature(cell, t, |cell, t| require(cell, t));
     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^
     |
-    = note: defining type: DefId(0:40 ~ projection_two_region_trait_bound_closure[317d]::elements_outlive1[0]::{{closure}}[0]) with closure substs [
-                '_#1r,
-                '_#2r,
-                '_#3r,
-                T,
+    = note: defining type: elements_outlive1::<'_#1r, '_#2r, '_#3r, T>::{{closure}}#0 with closure substs [
                 i32,
                 extern "rust-call" fn((std::cell::Cell<&'_#4r ()>, T)),
             ]
@@@ -150,12 -121,7 +121,7 @@@ LL | |     with_signature(cell, t, |cel
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:35 ~ projection_two_region_trait_bound_closure[317d]::elements_outlive1[0]) with substs [
-                '_#1r,
-                '_#2r,
-                '_#3r,
-                T,
-            ]
+    = note: defining type: elements_outlive1::<'_#1r, '_#2r, '_#3r, T>
  
  note: External requirements
    --> $DIR/projection-two-region-trait-bound-closure.rs:79:29
  LL |     with_signature(cell, t, |cell, t| require(cell, t));
     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^
     |
-    = note: defining type: DefId(0:46 ~ projection_two_region_trait_bound_closure[317d]::elements_outlive2[0]::{{closure}}[0]) with closure substs [
-                '_#1r,
-                '_#2r,
-                '_#3r,
-                T,
+    = note: defining type: elements_outlive2::<'_#1r, '_#2r, '_#3r, T>::{{closure}}#0 with closure substs [
                 i32,
                 extern "rust-call" fn((std::cell::Cell<&'_#4r ()>, T)),
             ]
@@@ -186,12 -148,7 +148,7 @@@ LL | |     with_signature(cell, t, |cel
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:41 ~ projection_two_region_trait_bound_closure[317d]::elements_outlive2[0]) with substs [
-                '_#1r,
-                '_#2r,
-                '_#3r,
-                T,
-            ]
+    = note: defining type: elements_outlive2::<'_#1r, '_#2r, '_#3r, T>
  
  note: External requirements
    --> $DIR/projection-two-region-trait-bound-closure.rs:87:29
  LL |     with_signature(cell, t, |cell, t| require(cell, t));
     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^
     |
-    = note: defining type: DefId(0:51 ~ projection_two_region_trait_bound_closure[317d]::two_regions[0]::{{closure}}[0]) with closure substs [
-                '_#1r,
-                T,
+    = note: defining type: two_regions::<'_#1r, T>::{{closure}}#0 with closure substs [
                 i32,
                 extern "rust-call" fn((std::cell::Cell<&'_#2r ()>, T)),
             ]
@@@ -221,10 -176,7 +176,7 @@@ LL | 
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:47 ~ projection_two_region_trait_bound_closure[317d]::two_regions[0]) with substs [
-                '_#1r,
-                T,
-            ]
+    = note: defining type: two_regions::<'_#1r, T>
  
  error: lifetime may not live long enough
    --> $DIR/projection-two-region-trait-bound-closure.rs:87:29
@@@ -245,10 -197,7 +197,7 @@@ note: External requirement
  LL |     with_signature(cell, t, |cell, t| require(cell, t));
     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^
     |
-    = note: defining type: DefId(0:56 ~ projection_two_region_trait_bound_closure[317d]::two_regions_outlive[0]::{{closure}}[0]) with closure substs [
-                '_#1r,
-                '_#2r,
-                T,
+    = note: defining type: two_regions_outlive::<'_#1r, '_#2r, T>::{{closure}}#0 with closure substs [
                 i32,
                 extern "rust-call" fn((std::cell::Cell<&'_#3r ()>, T)),
             ]
@@@ -267,11 -216,7 +216,7 @@@ LL | |     with_signature(cell, t, |cel
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:52 ~ projection_two_region_trait_bound_closure[317d]::two_regions_outlive[0]) with substs [
-                '_#1r,
-                '_#2r,
-                T,
-            ]
+    = note: defining type: two_regions_outlive::<'_#1r, '_#2r, T>
  
  note: External requirements
    --> $DIR/projection-two-region-trait-bound-closure.rs:109:29
  LL |     with_signature(cell, t, |cell, t| require(cell, t));
     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^
     |
-    = note: defining type: DefId(0:60 ~ projection_two_region_trait_bound_closure[317d]::one_region[0]::{{closure}}[0]) with closure substs [
-                '_#1r,
-                T,
+    = note: defining type: one_region::<'_#1r, T>::{{closure}}#0 with closure substs [
                 i32,
                 extern "rust-call" fn((std::cell::Cell<&'_#2r ()>, T)),
             ]
@@@ -300,10 -243,7 +243,7 @@@ LL | |     with_signature(cell, t, |cel
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:57 ~ projection_two_region_trait_bound_closure[317d]::one_region[0]) with substs [
-                '_#1r,
-                T,
-            ]
+    = note: defining type: one_region::<'_#1r, T>
  
  error: aborting due to 3 previous errors
  
index e2a9bd7e3cd08e0d64a231274f59815e970a9f78,6478e504345fe934d65488dab6ee16d72a9bda67..db0bca1dec6f5c19772a6e84000949277edc8cd4
@@@ -4,10 -4,9 +4,9 @@@ note: External requirement
  LL |     twice(cell, value, |a, b| invoke(a, b));
     |                        ^^^^^^^^^^^^^^^^^^^
     |
-    = note: defining type: DefId(0:11 ~ ty_param_closure_approximate_lower_bound[317d]::generic[0]::{{closure}}[0]) with closure substs [
-                T,
+    = note: defining type: generic::<T>::{{closure}}#0 with closure substs [
                 i16,
 -               for<'r, 's> extern "rust-call" fn((std::option::Option<std::cell::Cell<&'_#1r &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 'r)) ()>>, &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 's)) T)),
 +               for<'r, 's> extern "rust-call" fn((std::option::Option<std::cell::Cell<&'_#1r &ReLateBound(DebruijnIndex(0), BrNamed('r)) ()>>, &ReLateBound(DebruijnIndex(0), BrNamed('s)) T)),
             ]
     = note: number of external vids: 2
     = note: where T: '_#1r
@@@ -21,9 -20,7 +20,7 @@@ LL | |     twice(cell, value, |a, b| in
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:9 ~ ty_param_closure_approximate_lower_bound[317d]::generic[0]) with substs [
-                T,
-            ]
+    = note: defining type: generic::<T>
  
  note: External requirements
    --> $DIR/ty-param-closure-approximate-lower-bound.rs:29:24
  LL |     twice(cell, value, |a, b| invoke(a, b));
     |                        ^^^^^^^^^^^^^^^^^^^
     |
-    = note: defining type: DefId(0:15 ~ ty_param_closure_approximate_lower_bound[317d]::generic_fail[0]::{{closure}}[0]) with closure substs [
-                T,
+    = note: defining type: generic_fail::<T>::{{closure}}#0 with closure substs [
                 i16,
 -               for<'r, 's> extern "rust-call" fn((std::option::Option<std::cell::Cell<&'_#1r &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 'r)) ()>>, &ReLateBound(DebruijnIndex(0), BrNamed(crate0:DefIndex(0), 's)) T)),
 +               for<'r, 's> extern "rust-call" fn((std::option::Option<std::cell::Cell<&'_#1r &ReLateBound(DebruijnIndex(0), BrNamed('r)) ()>>, &ReLateBound(DebruijnIndex(0), BrNamed('s)) T)),
             ]
     = note: late-bound region is '_#2r
     = note: number of external vids: 3
@@@ -49,9 -45,7 +45,7 @@@ LL | 
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:12 ~ ty_param_closure_approximate_lower_bound[317d]::generic_fail[0]) with substs [
-                T,
-            ]
+    = note: defining type: generic_fail::<T>
  
  error[E0309]: the parameter type `T` may not live long enough
    --> $DIR/ty-param-closure-approximate-lower-bound.rs:29:24
@@@ -59,7 -53,7 +53,7 @@@
  LL |     twice(cell, value, |a, b| invoke(a, b));
     |                        ^^^^^^^^^^^^^^^^^^^
     |
 -   = help: consider adding an explicit lifetime bound `T: ReFree(DefId(0:12 ~ ty_param_closure_approximate_lower_bound[317d]::generic_fail[0]), BrNamed(crate0:DefIndex(13), 'a))`...
 +   = help: consider adding an explicit lifetime bound `T: ReFree(DefId(0:12 ~ ty_param_closure_approximate_lower_bound[317d]::generic_fail[0]), BrNamed(DefId(0:13 ~ ty_param_closure_approximate_lower_bound[317d]::generic_fail[0]::'a[0]), 'a))`...
  
  error: aborting due to previous error
  
index ffd936b58be377935a19e8abc3df84036accf50a,4383ad4ed8512d20870267e0009cab32543ab4a3..46fef8ee5067bc76720780602e8854eeb91f6172
@@@ -11,8 -11,7 +11,7 @@@ LL | |         require(&x, &y
  LL | |     })
     | |_____^
     |
-    = note: defining type: DefId(0:14 ~ ty_param_closure_outlives_from_where_clause[317d]::no_region[0]::{{closure}}[0]) with closure substs [
-                T,
+    = note: defining type: no_region::<T>::{{closure}}#0 with closure substs [
                 i32,
                 extern "rust-call" fn((std::cell::Cell<&'_#1r ()>, T)),
             ]
@@@ -32,9 -31,7 +31,7 @@@ LL | |     }
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:11 ~ ty_param_closure_outlives_from_where_clause[317d]::no_region[0]) with substs [
-                T,
-            ]
+    = note: defining type: no_region::<T>
  
  error[E0309]: the parameter type `T` may not live long enough
    --> $DIR/ty-param-closure-outlives-from-where-clause.rs:27:26
@@@ -49,7 -46,7 +46,7 @@@ LL | |         require(&x, &y
  LL | |     })
     | |_____^
     |
 -   = help: consider adding an explicit lifetime bound `T: ReFree(DefId(0:11 ~ ty_param_closure_outlives_from_where_clause[317d]::no_region[0]), BrNamed(crate0:DefIndex(12), 'a))`...
 +   = help: consider adding an explicit lifetime bound `T: ReFree(DefId(0:11 ~ ty_param_closure_outlives_from_where_clause[317d]::no_region[0]), BrNamed(DefId(0:12 ~ ty_param_closure_outlives_from_where_clause[317d]::no_region[0]::'a[0]), 'a))`...
  
  note: External requirements
    --> $DIR/ty-param-closure-outlives-from-where-clause.rs:43:26
@@@ -64,9 -61,7 +61,7 @@@ LL | |         require(&x, &y
  LL | |     })
     | |_____^
     |
-    = note: defining type: DefId(0:18 ~ ty_param_closure_outlives_from_where_clause[317d]::correct_region[0]::{{closure}}[0]) with closure substs [
-                '_#1r,
-                T,
+    = note: defining type: correct_region::<'_#1r, T>::{{closure}}#0 with closure substs [
                 i32,
                 extern "rust-call" fn((std::cell::Cell<&'_#2r ()>, T)),
             ]
@@@ -85,10 -80,7 +80,7 @@@ LL | |     }
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:15 ~ ty_param_closure_outlives_from_where_clause[317d]::correct_region[0]) with substs [
-                '_#1r,
-                T,
-            ]
+    = note: defining type: correct_region::<'_#1r, T>
  
  note: External requirements
    --> $DIR/ty-param-closure-outlives-from-where-clause.rs:64:26
@@@ -101,9 -93,7 +93,7 @@@ LL | |         require(&x, &y
  LL | |     })
     | |_____^
     |
-    = note: defining type: DefId(0:23 ~ ty_param_closure_outlives_from_where_clause[317d]::wrong_region[0]::{{closure}}[0]) with closure substs [
-                '_#1r,
-                T,
+    = note: defining type: wrong_region::<'_#1r, T>::{{closure}}#0 with closure substs [
                 i32,
                 extern "rust-call" fn((std::cell::Cell<&'_#2r ()>, T)),
             ]
@@@ -123,10 -113,7 +113,7 @@@ LL | |     }
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:19 ~ ty_param_closure_outlives_from_where_clause[317d]::wrong_region[0]) with substs [
-                '_#1r,
-                T,
-            ]
+    = note: defining type: wrong_region::<'_#1r, T>
  
  error[E0309]: the parameter type `T` may not live long enough
    --> $DIR/ty-param-closure-outlives-from-where-clause.rs:64:26
@@@ -139,7 -126,7 +126,7 @@@ LL | |         require(&x, &y
  LL | |     })
     | |_____^
     |
 -   = help: consider adding an explicit lifetime bound `T: ReFree(DefId(0:19 ~ ty_param_closure_outlives_from_where_clause[317d]::wrong_region[0]), BrNamed(crate0:DefIndex(20), 'a))`...
 +   = help: consider adding an explicit lifetime bound `T: ReFree(DefId(0:19 ~ ty_param_closure_outlives_from_where_clause[317d]::wrong_region[0]), BrNamed(DefId(0:20 ~ ty_param_closure_outlives_from_where_clause[317d]::wrong_region[0]::'a[0]), 'a))`...
  
  note: External requirements
    --> $DIR/ty-param-closure-outlives-from-where-clause.rs:77:26
@@@ -151,10 -138,7 +138,7 @@@ LL | |         require(&x, &y
  LL | |     })
     | |_____^
     |
-    = note: defining type: DefId(0:28 ~ ty_param_closure_outlives_from_where_clause[317d]::outlives_region[0]::{{closure}}[0]) with closure substs [
-                '_#1r,
-                '_#2r,
-                T,
+    = note: defining type: outlives_region::<'_#1r, '_#2r, T>::{{closure}}#0 with closure substs [
                 i32,
                 extern "rust-call" fn((std::cell::Cell<&'_#3r ()>, T)),
             ]
@@@ -173,11 -157,7 +157,7 @@@ LL | |     }
  LL | | }
     | |_^
     |
-    = note: defining type: DefId(0:24 ~ ty_param_closure_outlives_from_where_clause[317d]::outlives_region[0]) with substs [
-                '_#1r,
-                '_#2r,
-                T,
-            ]
+    = note: defining type: outlives_region::<'_#1r, '_#2r, T>
  
  error: aborting due to 2 previous errors