Rollup merge of #72019 - matthewjasper:dont-skip-binder, r=davidtwco
Fix debug assertion in error code Closes #70813
This commit is contained in:
commit
705671ef49
3 changed files with 45 additions and 0 deletions
|
|
@ -0,0 +1,18 @@
|
|||
// Regression test for #70813 (this used to trigger a debug assertion)
|
||||
|
||||
trait Trait {}
|
||||
|
||||
struct S;
|
||||
|
||||
impl<'a> Trait for &'a mut S {}
|
||||
|
||||
fn foo<X>(_: X)
|
||||
where
|
||||
for<'b> &'b X: Trait,
|
||||
{
|
||||
}
|
||||
|
||||
fn main() {
|
||||
let s = S;
|
||||
foo::<S>(s); //~ ERROR the trait bound `for<'b> &'b S: Trait` is not satisfied
|
||||
}
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
error[E0277]: the trait bound `for<'b> &'b S: Trait` is not satisfied
|
||||
--> $DIR/imm-ref-trait-object-literal-bound-regions.rs:17:5
|
||||
|
|
||||
LL | fn foo<X>(_: X)
|
||||
| --- required by a bound in this
|
||||
LL | where
|
||||
LL | for<'b> &'b X: Trait,
|
||||
| ----- required by this bound in `foo`
|
||||
...
|
||||
LL | foo::<S>(s);
|
||||
| ^^^^^^^^ the trait `for<'b> Trait` is not implemented for `&'b S`
|
||||
|
|
||||
= help: the following implementations were found:
|
||||
<&'a mut S as Trait>
|
||||
|
||||
error: aborting due to previous error
|
||||
|
||||
For more information about this error, try `rustc --explain E0277`.
|
||||
Loading…
Add table
Add a link
Reference in a new issue