diff options
Diffstat (limited to '')
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/complex.rs (renamed from src/test/ui/higher-rank-trait-bounds/complex.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/due-to-where-clause.rs (renamed from src/test/ui/higher-rank-trait-bounds/due-to-where-clause.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/due-to-where-clause.stderr (renamed from src/test/ui/higher-rank-trait-bounds/due-to-where-clause.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hang-on-deeply-nested-dyn.rs | 16 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hang-on-deeply-nested-dyn.stderr | 22 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-binder-levels-in-object-types.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-binder-levels-in-object-types.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-cache-issue-54302.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-cache-issue-54302.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-cache-issue-54302.stderr (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-cache-issue-54302.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-conflate-regions.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-conflate-regions.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-conflate-regions.stderr (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-conflate-regions.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-debruijn-in-receiver.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-debruijn-in-receiver.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-debruijn-in-receiver.stderr (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-debruijn-in-receiver.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-debruijn-object-types-in-closures.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-debruijn-object-types-in-closures.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-exists-forall-fn.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-exists-forall-fn.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-exists-forall-fn.stderr (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-exists-forall-fn.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-contravariant.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-contravariant.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-contravariant.stderr (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-contravariant.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-covariant.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-covariant.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-invariant.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-invariant.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-invariant.stderr (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-invariant.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-fn-like-trait-object.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-fn-like-trait-object.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-fn-like-trait.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-fn-like-trait.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits-transitive.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits-transitive.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits-transitive.stderr (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits-transitive.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits.stderr (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-identity-fn-borrows.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-identity-fn-borrows.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-identity-fn-borrows.stderr (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-identity-fn-borrows.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-just-for-static.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-just-for-static.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-just-for-static.stderr (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-just-for-static.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-malformed-lifetime-generics.rs | 20 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-malformed-lifetime-generics.stderr | 62 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-opt-in-copy.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-opt-in-copy.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-parse.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-parse.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-perfect-forwarding.polonius.stderr (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-perfect-forwarding.polonius.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-perfect-forwarding.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-perfect-forwarding.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-perfect-forwarding.stderr (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-perfect-forwarding.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-precedence-of-plus-where-clause.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-precedence-of-plus-where-clause.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-precedence-of-plus.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-precedence-of-plus.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-resolve-lifetime.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-resolve-lifetime.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-trait-object-paren-notation.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-trait-object-paren-notation.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-trait-object-passed-to-closure.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-trait-object-passed-to-closure.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-type-outlives.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-type-outlives.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-unboxed-closure-trait.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-unboxed-closure-trait.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-wrong-kind.rs (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-wrong-kind.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/hrtb-wrong-kind.stderr (renamed from src/test/ui/higher-rank-trait-bounds/hrtb-wrong-kind.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/issue-100689.rs (renamed from src/test/ui/higher-rank-trait-bounds/issue-100689.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/issue-102899.rs (renamed from src/test/ui/higher-rank-trait-bounds/issue-102899.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/issue-30786.rs (renamed from src/test/ui/higher-rank-trait-bounds/issue-30786.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/issue-30786.stderr (renamed from src/test/ui/higher-rank-trait-bounds/issue-30786.stderr) | 8 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/issue-36139-normalize-closure-sig.rs (renamed from src/test/ui/higher-rank-trait-bounds/issue-36139-normalize-closure-sig.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/issue-42114.rs | 20 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/issue-43623.rs (renamed from src/test/ui/higher-rank-trait-bounds/issue-43623.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/issue-46989.rs (renamed from src/test/ui/higher-rank-trait-bounds/issue-46989.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/issue-46989.stderr (renamed from src/test/ui/higher-rank-trait-bounds/issue-46989.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/issue-57639.rs (renamed from src/test/ui/higher-rank-trait-bounds/issue-57639.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/issue-58451.rs (renamed from src/test/ui/higher-rank-trait-bounds/issue-58451.rs) | 2 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/issue-58451.stderr (renamed from src/test/ui/higher-rank-trait-bounds/issue-58451.stderr) | 4 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/issue-59311.rs (renamed from src/test/ui/higher-rank-trait-bounds/issue-59311.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/issue-59311.stderr (renamed from src/test/ui/higher-rank-trait-bounds/issue-59311.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/issue-60283.rs (renamed from src/test/ui/higher-rank-trait-bounds/issue-60283.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/issue-62203-hrtb-ice.rs (renamed from src/test/ui/higher-rank-trait-bounds/issue-62203-hrtb-ice.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/issue-62203-hrtb-ice.stderr (renamed from src/test/ui/higher-rank-trait-bounds/issue-62203-hrtb-ice.stderr) | 9 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/issue-88446.rs (renamed from src/test/ui/higher-rank-trait-bounds/issue-88446.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/issue-88586-hr-self-outlives-in-trait-def.rs (renamed from src/test/ui/higher-rank-trait-bounds/issue-88586-hr-self-outlives-in-trait-def.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/issue-90177.rs (renamed from src/test/ui/higher-rank-trait-bounds/issue-90177.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/issue-95034.rs (renamed from src/test/ui/higher-rank-trait-bounds/issue-95034.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/issue-95230.rs (renamed from src/test/ui/higher-rank-trait-bounds/issue-95230.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-44005.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-44005.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-56556.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-56556.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-1.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-1.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-2.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-2.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-3.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-3.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-3.stderr (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-3.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-4.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-4.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-5.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-5.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-6.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-6.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-70120.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-70120.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-71955.migrate.stderr (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-71955.migrate.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-71955.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-71955.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-71955.stderr (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-71955.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-74261.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-74261.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-76956.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-76956.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-80706.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-80706.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-80956.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-80956.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-81809.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-81809.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-85455.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-85455.rs) | 1 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-85455.stderr | 25 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-89118.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-89118.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-89118.stderr (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-89118.stderr) | 12 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-89436.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-89436.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90612.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90612.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90638.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90638.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90875.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90875.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90950.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90950.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90950.stderr (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90950.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/norm-before-method-resolution.rs (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/norm-before-method-resolution.rs) | 0 | ||||
-rw-r--r-- | tests/ui/higher-rank-trait-bounds/normalize-under-binder/norm-before-method-resolution.stderr (renamed from src/test/ui/higher-rank-trait-bounds/normalize-under-binder/norm-before-method-resolution.stderr) | 0 |
98 files changed, 188 insertions, 13 deletions
diff --git a/src/test/ui/higher-rank-trait-bounds/complex.rs b/tests/ui/higher-rank-trait-bounds/complex.rs index 8cdfe247e..8cdfe247e 100644 --- a/src/test/ui/higher-rank-trait-bounds/complex.rs +++ b/tests/ui/higher-rank-trait-bounds/complex.rs diff --git a/src/test/ui/higher-rank-trait-bounds/due-to-where-clause.rs b/tests/ui/higher-rank-trait-bounds/due-to-where-clause.rs index 1afd15613..1afd15613 100644 --- a/src/test/ui/higher-rank-trait-bounds/due-to-where-clause.rs +++ b/tests/ui/higher-rank-trait-bounds/due-to-where-clause.rs diff --git a/src/test/ui/higher-rank-trait-bounds/due-to-where-clause.stderr b/tests/ui/higher-rank-trait-bounds/due-to-where-clause.stderr index 520938a63..520938a63 100644 --- a/src/test/ui/higher-rank-trait-bounds/due-to-where-clause.stderr +++ b/tests/ui/higher-rank-trait-bounds/due-to-where-clause.stderr diff --git a/tests/ui/higher-rank-trait-bounds/hang-on-deeply-nested-dyn.rs b/tests/ui/higher-rank-trait-bounds/hang-on-deeply-nested-dyn.rs new file mode 100644 index 000000000..d34b7a296 --- /dev/null +++ b/tests/ui/higher-rank-trait-bounds/hang-on-deeply-nested-dyn.rs @@ -0,0 +1,16 @@ +// normalize-stderr-test: "long-type-\d+" -> "long-type-hash" + +fn id( + f: &dyn Fn(u32), +) -> &dyn Fn( + &dyn Fn( + &dyn Fn( + &dyn Fn(&dyn Fn(&dyn Fn(&dyn Fn(&dyn Fn(&dyn Fn(&dyn Fn(&dyn Fn(&dyn Fn(u32))))))))), + ), + ), +) { + f + //~^ ERROR mismatched types +} + +fn main() {} diff --git a/tests/ui/higher-rank-trait-bounds/hang-on-deeply-nested-dyn.stderr b/tests/ui/higher-rank-trait-bounds/hang-on-deeply-nested-dyn.stderr new file mode 100644 index 000000000..71e196c32 --- /dev/null +++ b/tests/ui/higher-rank-trait-bounds/hang-on-deeply-nested-dyn.stderr @@ -0,0 +1,22 @@ +error[E0308]: mismatched types + --> $DIR/hang-on-deeply-nested-dyn.rs:12:5 + | +LL | ) -> &dyn Fn( + | ______- +LL | | &dyn Fn( +LL | | &dyn Fn( +LL | | &dyn Fn(&dyn Fn(&dyn Fn(&dyn Fn(&dyn Fn(&dyn Fn(&dyn Fn(&dyn Fn(&dyn Fn(u32))))))))), +LL | | ), +LL | | ), +LL | | ) { + | |_- expected `&dyn for<'a> Fn(&'a (dyn for<'a> Fn(&'a (dyn for<'a> Fn(&'a (dyn for<'a> Fn(&'a (dyn for<'a> Fn(&'a (dyn for<'a> Fn(&'a (dyn for<'a> Fn(&'a (dyn for<'a> Fn(&'a (dyn for<'a> Fn(&'a (dyn for<'a> Fn(&'a (dyn for<'a> Fn(&'a (dyn Fn(u32) + 'a)) + 'a)) + 'a)) + 'a)) + 'a)) + 'a)) + 'a)) + 'a)) + 'a)) + 'a)) + 'a))` because of return type +LL | f + | ^ expected reference, found `u32` + | + = note: expected reference `&dyn for<'a> Fn(&'a (dyn for<'a> Fn(&'a (dyn for<'a> Fn(&'a (dyn for<'a> Fn(&'a ...) + 'a)) + 'a)) + 'a))` + the full type name has been written to '$TEST_BUILD_DIR/higher-rank-trait-bounds/hang-on-deeply-nested-dyn/hang-on-deeply-nested-dyn.long-type-hash.txt' + found reference `&dyn Fn(u32)` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-binder-levels-in-object-types.rs b/tests/ui/higher-rank-trait-bounds/hrtb-binder-levels-in-object-types.rs index cc766c060..cc766c060 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-binder-levels-in-object-types.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-binder-levels-in-object-types.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-cache-issue-54302.rs b/tests/ui/higher-rank-trait-bounds/hrtb-cache-issue-54302.rs index a20d03c77..a20d03c77 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-cache-issue-54302.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-cache-issue-54302.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-cache-issue-54302.stderr b/tests/ui/higher-rank-trait-bounds/hrtb-cache-issue-54302.stderr index f014eab86..f014eab86 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-cache-issue-54302.stderr +++ b/tests/ui/higher-rank-trait-bounds/hrtb-cache-issue-54302.stderr diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-conflate-regions.rs b/tests/ui/higher-rank-trait-bounds/hrtb-conflate-regions.rs index e83686404..e83686404 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-conflate-regions.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-conflate-regions.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-conflate-regions.stderr b/tests/ui/higher-rank-trait-bounds/hrtb-conflate-regions.stderr index 46f5308dd..46f5308dd 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-conflate-regions.stderr +++ b/tests/ui/higher-rank-trait-bounds/hrtb-conflate-regions.stderr diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-debruijn-in-receiver.rs b/tests/ui/higher-rank-trait-bounds/hrtb-debruijn-in-receiver.rs index 05d3e1a43..05d3e1a43 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-debruijn-in-receiver.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-debruijn-in-receiver.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-debruijn-in-receiver.stderr b/tests/ui/higher-rank-trait-bounds/hrtb-debruijn-in-receiver.stderr index fa391ecba..fa391ecba 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-debruijn-in-receiver.stderr +++ b/tests/ui/higher-rank-trait-bounds/hrtb-debruijn-in-receiver.stderr diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-debruijn-object-types-in-closures.rs b/tests/ui/higher-rank-trait-bounds/hrtb-debruijn-object-types-in-closures.rs index 8431226a3..8431226a3 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-debruijn-object-types-in-closures.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-debruijn-object-types-in-closures.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-exists-forall-fn.rs b/tests/ui/higher-rank-trait-bounds/hrtb-exists-forall-fn.rs index 567802376..567802376 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-exists-forall-fn.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-exists-forall-fn.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-exists-forall-fn.stderr b/tests/ui/higher-rank-trait-bounds/hrtb-exists-forall-fn.stderr index 9914783d9..9914783d9 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-exists-forall-fn.stderr +++ b/tests/ui/higher-rank-trait-bounds/hrtb-exists-forall-fn.stderr diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-contravariant.rs b/tests/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-contravariant.rs index 921061916..921061916 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-contravariant.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-contravariant.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-contravariant.stderr b/tests/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-contravariant.stderr index 364b613fc..364b613fc 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-contravariant.stderr +++ b/tests/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-contravariant.stderr diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-covariant.rs b/tests/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-covariant.rs index f95496a6c..f95496a6c 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-covariant.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-covariant.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-invariant.rs b/tests/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-invariant.rs index 9b9e4496a..9b9e4496a 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-invariant.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-invariant.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-invariant.stderr b/tests/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-invariant.stderr index cb2ce8a41..cb2ce8a41 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-invariant.stderr +++ b/tests/ui/higher-rank-trait-bounds/hrtb-exists-forall-trait-invariant.stderr diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-fn-like-trait-object.rs b/tests/ui/higher-rank-trait-bounds/hrtb-fn-like-trait-object.rs index ff84ad9d2..ff84ad9d2 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-fn-like-trait-object.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-fn-like-trait-object.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-fn-like-trait.rs b/tests/ui/higher-rank-trait-bounds/hrtb-fn-like-trait.rs index afab9986c..afab9986c 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-fn-like-trait.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-fn-like-trait.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits-transitive.rs b/tests/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits-transitive.rs index f9ae1429e..f9ae1429e 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits-transitive.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits-transitive.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits-transitive.stderr b/tests/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits-transitive.stderr index 8cda76b94..8cda76b94 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits-transitive.stderr +++ b/tests/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits-transitive.stderr diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits.rs b/tests/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits.rs index 48ebe5017..48ebe5017 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits.stderr b/tests/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits.stderr index 88793a152..88793a152 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits.stderr +++ b/tests/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits.stderr diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-identity-fn-borrows.rs b/tests/ui/higher-rank-trait-bounds/hrtb-identity-fn-borrows.rs index 89fc4705a..89fc4705a 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-identity-fn-borrows.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-identity-fn-borrows.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-identity-fn-borrows.stderr b/tests/ui/higher-rank-trait-bounds/hrtb-identity-fn-borrows.stderr index 4886a3c8b..4886a3c8b 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-identity-fn-borrows.stderr +++ b/tests/ui/higher-rank-trait-bounds/hrtb-identity-fn-borrows.stderr diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-just-for-static.rs b/tests/ui/higher-rank-trait-bounds/hrtb-just-for-static.rs index 8fb4218f8..8fb4218f8 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-just-for-static.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-just-for-static.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-just-for-static.stderr b/tests/ui/higher-rank-trait-bounds/hrtb-just-for-static.stderr index 31e11e128..31e11e128 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-just-for-static.stderr +++ b/tests/ui/higher-rank-trait-bounds/hrtb-just-for-static.stderr diff --git a/tests/ui/higher-rank-trait-bounds/hrtb-malformed-lifetime-generics.rs b/tests/ui/higher-rank-trait-bounds/hrtb-malformed-lifetime-generics.rs new file mode 100644 index 000000000..4b096be59 --- /dev/null +++ b/tests/ui/higher-rank-trait-bounds/hrtb-malformed-lifetime-generics.rs @@ -0,0 +1,20 @@ +// Test that Fn-family traits with lifetime parameters shouldn't compile and +// we suggest the usage of higher-rank trait bounds instead. + +fn fa(_: impl Fn<'a>(&'a str) -> bool) {} +//~^ ERROR `Fn` traits cannot take lifetime parameters + +fn fb(_: impl FnMut<'a, 'b>(&'a str, &'b str) -> bool) {} +//~^ ERROR `Fn` traits cannot take lifetime parameters + +fn fc(_: impl std::fmt::Display + FnOnce<'a>(&'a str) -> bool + std::fmt::Debug) {} +//~^ ERROR `Fn` traits cannot take lifetime parameters + +use std::ops::Fn as AliasedFn; +fn fd(_: impl AliasedFn<'a>(&'a str) -> bool) {} +//~^ ERROR `Fn` traits cannot take lifetime parameters + +fn fe<F>(_: F) where F: Fn<'a>(&'a str) -> bool {} +//~^ ERROR `Fn` traits cannot take lifetime parameters + +fn main() {} diff --git a/tests/ui/higher-rank-trait-bounds/hrtb-malformed-lifetime-generics.stderr b/tests/ui/higher-rank-trait-bounds/hrtb-malformed-lifetime-generics.stderr new file mode 100644 index 000000000..e8f6d63b5 --- /dev/null +++ b/tests/ui/higher-rank-trait-bounds/hrtb-malformed-lifetime-generics.stderr @@ -0,0 +1,62 @@ +error: `Fn` traits cannot take lifetime parameters + --> $DIR/hrtb-malformed-lifetime-generics.rs:4:17 + | +LL | fn fa(_: impl Fn<'a>(&'a str) -> bool) {} + | ^^^^ + | +help: consider using a higher-ranked trait bound instead + | +LL - fn fa(_: impl Fn<'a>(&'a str) -> bool) {} +LL + fn fa(_: impl for<'a> Fn(&'a str) -> bool) {} + | + +error: `Fn` traits cannot take lifetime parameters + --> $DIR/hrtb-malformed-lifetime-generics.rs:7:20 + | +LL | fn fb(_: impl FnMut<'a, 'b>(&'a str, &'b str) -> bool) {} + | ^^^^^^^^ + | +help: consider using a higher-ranked trait bound instead + | +LL - fn fb(_: impl FnMut<'a, 'b>(&'a str, &'b str) -> bool) {} +LL + fn fb(_: impl for<'a, 'b> FnMut(&'a str, &'b str) -> bool) {} + | + +error: `Fn` traits cannot take lifetime parameters + --> $DIR/hrtb-malformed-lifetime-generics.rs:10:41 + | +LL | fn fc(_: impl std::fmt::Display + FnOnce<'a>(&'a str) -> bool + std::fmt::Debug) {} + | ^^^^ + | +help: consider using a higher-ranked trait bound instead + | +LL - fn fc(_: impl std::fmt::Display + FnOnce<'a>(&'a str) -> bool + std::fmt::Debug) {} +LL + fn fc(_: impl std::fmt::Display + for<'a> FnOnce(&'a str) -> bool + std::fmt::Debug) {} + | + +error: `Fn` traits cannot take lifetime parameters + --> $DIR/hrtb-malformed-lifetime-generics.rs:14:24 + | +LL | fn fd(_: impl AliasedFn<'a>(&'a str) -> bool) {} + | ^^^^ + | +help: consider using a higher-ranked trait bound instead + | +LL - fn fd(_: impl AliasedFn<'a>(&'a str) -> bool) {} +LL + fn fd(_: impl for<'a> AliasedFn(&'a str) -> bool) {} + | + +error: `Fn` traits cannot take lifetime parameters + --> $DIR/hrtb-malformed-lifetime-generics.rs:17:27 + | +LL | fn fe<F>(_: F) where F: Fn<'a>(&'a str) -> bool {} + | ^^^^ + | +help: consider using a higher-ranked trait bound instead + | +LL - fn fe<F>(_: F) where F: Fn<'a>(&'a str) -> bool {} +LL + fn fe<F>(_: F) where F: for<'a> Fn(&'a str) -> bool {} + | + +error: aborting due to 5 previous errors + diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-opt-in-copy.rs b/tests/ui/higher-rank-trait-bounds/hrtb-opt-in-copy.rs index 04519f116..04519f116 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-opt-in-copy.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-opt-in-copy.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-parse.rs b/tests/ui/higher-rank-trait-bounds/hrtb-parse.rs index 1fab9758c..1fab9758c 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-parse.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-parse.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-perfect-forwarding.polonius.stderr b/tests/ui/higher-rank-trait-bounds/hrtb-perfect-forwarding.polonius.stderr index a94c80eb3..a94c80eb3 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-perfect-forwarding.polonius.stderr +++ b/tests/ui/higher-rank-trait-bounds/hrtb-perfect-forwarding.polonius.stderr diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-perfect-forwarding.rs b/tests/ui/higher-rank-trait-bounds/hrtb-perfect-forwarding.rs index d45fa183c..d45fa183c 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-perfect-forwarding.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-perfect-forwarding.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-perfect-forwarding.stderr b/tests/ui/higher-rank-trait-bounds/hrtb-perfect-forwarding.stderr index 727b9e6be..727b9e6be 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-perfect-forwarding.stderr +++ b/tests/ui/higher-rank-trait-bounds/hrtb-perfect-forwarding.stderr diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-precedence-of-plus-where-clause.rs b/tests/ui/higher-rank-trait-bounds/hrtb-precedence-of-plus-where-clause.rs index 42247798f..42247798f 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-precedence-of-plus-where-clause.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-precedence-of-plus-where-clause.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-precedence-of-plus.rs b/tests/ui/higher-rank-trait-bounds/hrtb-precedence-of-plus.rs index 6834c392d..6834c392d 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-precedence-of-plus.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-precedence-of-plus.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-resolve-lifetime.rs b/tests/ui/higher-rank-trait-bounds/hrtb-resolve-lifetime.rs index b97fdf4df..b97fdf4df 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-resolve-lifetime.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-resolve-lifetime.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-trait-object-paren-notation.rs b/tests/ui/higher-rank-trait-bounds/hrtb-trait-object-paren-notation.rs index d8c726cdd..d8c726cdd 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-trait-object-paren-notation.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-trait-object-paren-notation.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-trait-object-passed-to-closure.rs b/tests/ui/higher-rank-trait-bounds/hrtb-trait-object-passed-to-closure.rs index 41ebb3f5a..41ebb3f5a 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-trait-object-passed-to-closure.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-trait-object-passed-to-closure.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-type-outlives.rs b/tests/ui/higher-rank-trait-bounds/hrtb-type-outlives.rs index 88d396101..88d396101 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-type-outlives.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-type-outlives.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-unboxed-closure-trait.rs b/tests/ui/higher-rank-trait-bounds/hrtb-unboxed-closure-trait.rs index a4a8a5ac6..a4a8a5ac6 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-unboxed-closure-trait.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-unboxed-closure-trait.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-wrong-kind.rs b/tests/ui/higher-rank-trait-bounds/hrtb-wrong-kind.rs index 1a9bb2523..1a9bb2523 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-wrong-kind.rs +++ b/tests/ui/higher-rank-trait-bounds/hrtb-wrong-kind.rs diff --git a/src/test/ui/higher-rank-trait-bounds/hrtb-wrong-kind.stderr b/tests/ui/higher-rank-trait-bounds/hrtb-wrong-kind.stderr index f31aa5546..f31aa5546 100644 --- a/src/test/ui/higher-rank-trait-bounds/hrtb-wrong-kind.stderr +++ b/tests/ui/higher-rank-trait-bounds/hrtb-wrong-kind.stderr diff --git a/src/test/ui/higher-rank-trait-bounds/issue-100689.rs b/tests/ui/higher-rank-trait-bounds/issue-100689.rs index 2db7f8a35..2db7f8a35 100644 --- a/src/test/ui/higher-rank-trait-bounds/issue-100689.rs +++ b/tests/ui/higher-rank-trait-bounds/issue-100689.rs diff --git a/src/test/ui/higher-rank-trait-bounds/issue-102899.rs b/tests/ui/higher-rank-trait-bounds/issue-102899.rs index 952b81584..952b81584 100644 --- a/src/test/ui/higher-rank-trait-bounds/issue-102899.rs +++ b/tests/ui/higher-rank-trait-bounds/issue-102899.rs diff --git a/src/test/ui/higher-rank-trait-bounds/issue-30786.rs b/tests/ui/higher-rank-trait-bounds/issue-30786.rs index e5f46f711..e5f46f711 100644 --- a/src/test/ui/higher-rank-trait-bounds/issue-30786.rs +++ b/tests/ui/higher-rank-trait-bounds/issue-30786.rs diff --git a/src/test/ui/higher-rank-trait-bounds/issue-30786.stderr b/tests/ui/higher-rank-trait-bounds/issue-30786.stderr index c1e235441..0458d2535 100644 --- a/src/test/ui/higher-rank-trait-bounds/issue-30786.stderr +++ b/tests/ui/higher-rank-trait-bounds/issue-30786.stderr @@ -1,4 +1,4 @@ -error[E0599]: the method `filterx` exists for struct `Map<Repeat, [closure@$DIR/issue-30786.rs:117:27: 117:34]>`, but its trait bounds were not satisfied +error[E0599]: the method `filterx` exists for struct `Map<Repeat, [closure@issue-30786.rs:117:27]>`, but its trait bounds were not satisfied --> $DIR/issue-30786.rs:118:22 | LL | pub struct Map<S, F> { @@ -8,7 +8,7 @@ LL | pub struct Map<S, F> { | doesn't satisfy `_: StreamExt` ... LL | let filter = map.filterx(|x: &_| true); - | ^^^^^^^ method cannot be called on `Map<Repeat, [closure@$DIR/issue-30786.rs:117:27: 117:34]>` due to unsatisfied trait bounds + | ^^^^^^^ method cannot be called on `Map<Repeat, [closure@issue-30786.rs:117:27]>` due to unsatisfied trait bounds | note: the following trait bounds were not satisfied: `&'a mut &Map<Repeat, [closure@$DIR/issue-30786.rs:117:27: 117:34]>: Stream` @@ -19,7 +19,7 @@ note: the following trait bounds were not satisfied: LL | impl<T> StreamExt for T where for<'a> &'a mut T: Stream {} | --------- - ^^^^^^ unsatisfied trait bound introduced here -error[E0599]: the method `countx` exists for struct `Filter<Map<Repeat, for<'a> fn(&'a u64) -> &'a u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:129:30: 129:37]>`, but its trait bounds were not satisfied +error[E0599]: the method `countx` exists for struct `Filter<Map<Repeat, for<'a> fn(&'a u64) -> &'a u64 {identity::<u64>}>, [closure@issue-30786.rs:129:30]>`, but its trait bounds were not satisfied --> $DIR/issue-30786.rs:130:24 | LL | pub struct Filter<S, F> { @@ -29,7 +29,7 @@ LL | pub struct Filter<S, F> { | doesn't satisfy `_: StreamExt` ... LL | let count = filter.countx(); - | ^^^^^^ method cannot be called on `Filter<Map<Repeat, for<'a> fn(&'a u64) -> &'a u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:129:30: 129:37]>` due to unsatisfied trait bounds + | ^^^^^^ method cannot be called due to unsatisfied trait bounds | note: the following trait bounds were not satisfied: `&'a mut &Filter<Map<Repeat, for<'a> fn(&'a u64) -> &'a u64 {identity::<u64>}>, [closure@$DIR/issue-30786.rs:129:30: 129:37]>: Stream` diff --git a/src/test/ui/higher-rank-trait-bounds/issue-36139-normalize-closure-sig.rs b/tests/ui/higher-rank-trait-bounds/issue-36139-normalize-closure-sig.rs index 2d49151ff..2d49151ff 100644 --- a/src/test/ui/higher-rank-trait-bounds/issue-36139-normalize-closure-sig.rs +++ b/tests/ui/higher-rank-trait-bounds/issue-36139-normalize-closure-sig.rs diff --git a/tests/ui/higher-rank-trait-bounds/issue-42114.rs b/tests/ui/higher-rank-trait-bounds/issue-42114.rs new file mode 100644 index 000000000..01515fdc9 --- /dev/null +++ b/tests/ui/higher-rank-trait-bounds/issue-42114.rs @@ -0,0 +1,20 @@ +// check-pass + +fn lifetime<'a>() +where + &'a (): 'a, +{ + /* do nothing */ +} + +fn doesnt_work() +where + for<'a> &'a (): 'a, +{ + /* do nothing */ +} + +fn main() { + lifetime(); + doesnt_work(); +} diff --git a/src/test/ui/higher-rank-trait-bounds/issue-43623.rs b/tests/ui/higher-rank-trait-bounds/issue-43623.rs index cedcf7c36..cedcf7c36 100644 --- a/src/test/ui/higher-rank-trait-bounds/issue-43623.rs +++ b/tests/ui/higher-rank-trait-bounds/issue-43623.rs diff --git a/src/test/ui/higher-rank-trait-bounds/issue-46989.rs b/tests/ui/higher-rank-trait-bounds/issue-46989.rs index 4a09f4be1..4a09f4be1 100644 --- a/src/test/ui/higher-rank-trait-bounds/issue-46989.rs +++ b/tests/ui/higher-rank-trait-bounds/issue-46989.rs diff --git a/src/test/ui/higher-rank-trait-bounds/issue-46989.stderr b/tests/ui/higher-rank-trait-bounds/issue-46989.stderr index 3f874220a..3f874220a 100644 --- a/src/test/ui/higher-rank-trait-bounds/issue-46989.stderr +++ b/tests/ui/higher-rank-trait-bounds/issue-46989.stderr diff --git a/src/test/ui/higher-rank-trait-bounds/issue-57639.rs b/tests/ui/higher-rank-trait-bounds/issue-57639.rs index 392e7233b..392e7233b 100644 --- a/src/test/ui/higher-rank-trait-bounds/issue-57639.rs +++ b/tests/ui/higher-rank-trait-bounds/issue-57639.rs diff --git a/src/test/ui/higher-rank-trait-bounds/issue-58451.rs b/tests/ui/higher-rank-trait-bounds/issue-58451.rs index f36d549e4..6006a108c 100644 --- a/src/test/ui/higher-rank-trait-bounds/issue-58451.rs +++ b/tests/ui/higher-rank-trait-bounds/issue-58451.rs @@ -9,5 +9,5 @@ where {} fn main() { - f(&[f()]); //~ ERROR this function takes 1 argument + f(&[f()]); //~ ERROR function takes 1 argument } diff --git a/src/test/ui/higher-rank-trait-bounds/issue-58451.stderr b/tests/ui/higher-rank-trait-bounds/issue-58451.stderr index 09e25f4dc..0f051be21 100644 --- a/src/test/ui/higher-rank-trait-bounds/issue-58451.stderr +++ b/tests/ui/higher-rank-trait-bounds/issue-58451.stderr @@ -11,8 +11,8 @@ LL | fn f<I>(i: I) | ^ ---- help: provide the argument | -LL | f(&[f(/* value */)]); - | ~~~~~~~~~~~~~ +LL | f(&[f(/* i */)]); + | ~~~~~~~~~ error: aborting due to previous error diff --git a/src/test/ui/higher-rank-trait-bounds/issue-59311.rs b/tests/ui/higher-rank-trait-bounds/issue-59311.rs index 3ad548450..3ad548450 100644 --- a/src/test/ui/higher-rank-trait-bounds/issue-59311.rs +++ b/tests/ui/higher-rank-trait-bounds/issue-59311.rs diff --git a/src/test/ui/higher-rank-trait-bounds/issue-59311.stderr b/tests/ui/higher-rank-trait-bounds/issue-59311.stderr index c01ab8e34..c01ab8e34 100644 --- a/src/test/ui/higher-rank-trait-bounds/issue-59311.stderr +++ b/tests/ui/higher-rank-trait-bounds/issue-59311.stderr diff --git a/src/test/ui/higher-rank-trait-bounds/issue-60283.rs b/tests/ui/higher-rank-trait-bounds/issue-60283.rs index 05315b3f9..05315b3f9 100644 --- a/src/test/ui/higher-rank-trait-bounds/issue-60283.rs +++ b/tests/ui/higher-rank-trait-bounds/issue-60283.rs diff --git a/src/test/ui/higher-rank-trait-bounds/issue-62203-hrtb-ice.rs b/tests/ui/higher-rank-trait-bounds/issue-62203-hrtb-ice.rs index e70f6fc34..e70f6fc34 100644 --- a/src/test/ui/higher-rank-trait-bounds/issue-62203-hrtb-ice.rs +++ b/tests/ui/higher-rank-trait-bounds/issue-62203-hrtb-ice.rs diff --git a/src/test/ui/higher-rank-trait-bounds/issue-62203-hrtb-ice.stderr b/tests/ui/higher-rank-trait-bounds/issue-62203-hrtb-ice.stderr index ab5598e36..810f7c28c 100644 --- a/src/test/ui/higher-rank-trait-bounds/issue-62203-hrtb-ice.stderr +++ b/tests/ui/higher-rank-trait-bounds/issue-62203-hrtb-ice.stderr @@ -1,4 +1,4 @@ -error[E0271]: type mismatch resolving `for<'r> <L<[closure@$DIR/issue-62203-hrtb-ice.rs:42:16: 42:19]> as T0<'r, (&'r u8,)>>::O == <_ as Ty<'r>>::V` +error[E0271]: type mismatch resolving `for<'r> <L<[closure@issue-62203-hrtb-ice.rs:42:16]> as T0<'r, (&'r u8,)>>::O == <_ as Ty<'r>>::V` --> $DIR/issue-62203-hrtb-ice.rs:39:9 | LL | let v = Unit2.m( @@ -10,7 +10,7 @@ LL | | f: |x| { ... | LL | | }, LL | | }, - | |_________^ type mismatch resolving `for<'r> <L<[closure@$DIR/issue-62203-hrtb-ice.rs:42:16: 42:19]> as T0<'r, (&'r u8,)>>::O == <_ as Ty<'r>>::V` + | |_________^ type mismatch resolving `for<'r> <L<[closure@issue-62203-hrtb-ice.rs:42:16]> as T0<'r, (&'r u8,)>>::O == <_ as Ty<'r>>::V` | note: expected this to be `<_ as Ty<'_>>::V` --> $DIR/issue-62203-hrtb-ice.rs:21:14 @@ -30,7 +30,7 @@ LL | where LL | F: for<'r> T0<'r, (<Self as Ty<'r>>::V,), O = <B as Ty<'r>>::V>, | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `T1::m` -error[E0271]: expected `[closure@$DIR/issue-62203-hrtb-ice.rs:42:16: 42:19]` to be a closure that returns `Unit3`, but it returns `Unit4` +error[E0271]: expected `[closure@issue-62203-hrtb-ice.rs:42:16]` to be a closure that returns `Unit3`, but it returns `Unit4` --> $DIR/issue-62203-hrtb-ice.rs:39:9 | LL | let v = Unit2.m( @@ -49,6 +49,9 @@ note: required for `L<[closure@$DIR/issue-62203-hrtb-ice.rs:42:16: 42:19]>` to i | LL | impl<'a, A, T> T0<'a, A> for L<T> | ^^^^^^^^^ ^^^^ +LL | where +LL | T: FnMut(A) -> Unit3, + | ----- unsatisfied trait bound introduced here note: required by a bound in `T1::m` --> $DIR/issue-62203-hrtb-ice.rs:27:12 | diff --git a/src/test/ui/higher-rank-trait-bounds/issue-88446.rs b/tests/ui/higher-rank-trait-bounds/issue-88446.rs index 571b85317..571b85317 100644 --- a/src/test/ui/higher-rank-trait-bounds/issue-88446.rs +++ b/tests/ui/higher-rank-trait-bounds/issue-88446.rs diff --git a/src/test/ui/higher-rank-trait-bounds/issue-88586-hr-self-outlives-in-trait-def.rs b/tests/ui/higher-rank-trait-bounds/issue-88586-hr-self-outlives-in-trait-def.rs index 92b7c5deb..92b7c5deb 100644 --- a/src/test/ui/higher-rank-trait-bounds/issue-88586-hr-self-outlives-in-trait-def.rs +++ b/tests/ui/higher-rank-trait-bounds/issue-88586-hr-self-outlives-in-trait-def.rs diff --git a/src/test/ui/higher-rank-trait-bounds/issue-90177.rs b/tests/ui/higher-rank-trait-bounds/issue-90177.rs index b151a9d3a..b151a9d3a 100644 --- a/src/test/ui/higher-rank-trait-bounds/issue-90177.rs +++ b/tests/ui/higher-rank-trait-bounds/issue-90177.rs diff --git a/src/test/ui/higher-rank-trait-bounds/issue-95034.rs b/tests/ui/higher-rank-trait-bounds/issue-95034.rs index af4946a18..af4946a18 100644 --- a/src/test/ui/higher-rank-trait-bounds/issue-95034.rs +++ b/tests/ui/higher-rank-trait-bounds/issue-95034.rs diff --git a/src/test/ui/higher-rank-trait-bounds/issue-95230.rs b/tests/ui/higher-rank-trait-bounds/issue-95230.rs index 92c506eab..92c506eab 100644 --- a/src/test/ui/higher-rank-trait-bounds/issue-95230.rs +++ b/tests/ui/higher-rank-trait-bounds/issue-95230.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-44005.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-44005.rs index f255eac0c..f255eac0c 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-44005.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-44005.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-56556.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-56556.rs index 4d38cb19e..4d38cb19e 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-56556.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-56556.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-1.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-1.rs index c6f29fa59..c6f29fa59 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-1.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-1.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-2.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-2.rs index 002054732..002054732 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-2.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-2.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-3.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-3.rs index d84e30f49..d84e30f49 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-3.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-3.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-3.stderr b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-3.stderr index b30dd36d2..b30dd36d2 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-3.stderr +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-3.stderr diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-4.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-4.rs index 8c2a59868..8c2a59868 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-4.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-4.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-5.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-5.rs index 03f257a02..03f257a02 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-5.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-5.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-6.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-6.rs index 74a4785e4..74a4785e4 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-6.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-62529-6.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-70120.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-70120.rs index 3ced40230..3ced40230 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-70120.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-70120.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-71955.migrate.stderr b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-71955.migrate.stderr index 0f38f8e32..0f38f8e32 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-71955.migrate.stderr +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-71955.migrate.stderr diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-71955.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-71955.rs index 1d90226a3..1d90226a3 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-71955.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-71955.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-71955.stderr b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-71955.stderr index 4ef96cd95..4ef96cd95 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-71955.stderr +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-71955.stderr diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-74261.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-74261.rs index 93ccb4268..93ccb4268 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-74261.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-74261.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-76956.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-76956.rs index 583470080..583470080 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-76956.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-76956.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-80706.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-80706.rs index 00a866f22..00a866f22 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-80706.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-80706.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-80956.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-80956.rs index 6316ceea1..6316ceea1 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-80956.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-80956.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-81809.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-81809.rs index f6ab9c203..f6ab9c203 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-81809.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-81809.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-85455.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-85455.rs index c10a0888a..8aa29926d 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-85455.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-85455.rs @@ -7,6 +7,7 @@ trait SomeTrait<'a> { fn give_me_ice<T>() { callee::<fn(&()) -> <T as SomeTrait<'_>>::Associated>(); //~^ ERROR the trait bound `for<'a> T: SomeTrait<'a>` is not satisfied [E0277] + //~| ERROR the trait bound `for<'a> T: SomeTrait<'a>` is not satisfied [E0277] } fn callee<T: Fn<(&'static (),)>>() { diff --git a/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-85455.stderr b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-85455.stderr new file mode 100644 index 000000000..3240518fb --- /dev/null +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-85455.stderr @@ -0,0 +1,25 @@ +error[E0277]: the trait bound `for<'a> T: SomeTrait<'a>` is not satisfied + --> $DIR/issue-85455.rs:8:14 + | +LL | callee::<fn(&()) -> <T as SomeTrait<'_>>::Associated>(); + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'a> SomeTrait<'a>` is not implemented for `T` + | +help: consider restricting type parameter `T` + | +LL | fn give_me_ice<T: for<'a> SomeTrait<'a>>() { + | +++++++++++++++++++++++ + +error[E0277]: the trait bound `for<'a> T: SomeTrait<'a>` is not satisfied + --> $DIR/issue-85455.rs:8:5 + | +LL | callee::<fn(&()) -> <T as SomeTrait<'_>>::Associated>(); + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'a> SomeTrait<'a>` is not implemented for `T` + | +help: consider restricting type parameter `T` + | +LL | fn give_me_ice<T: for<'a> SomeTrait<'a>>() { + | +++++++++++++++++++++++ + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-89118.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-89118.rs index fffb54f86..fffb54f86 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-89118.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-89118.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-89118.stderr b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-89118.stderr index 14fe1803b..62d0128fd 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-89118.stderr +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-89118.stderr @@ -8,7 +8,9 @@ note: required for `Ctx<()>` to implement `for<'a> BufferUdpStateContext<&'a ()> --> $DIR/issue-89118.rs:5:23 | LL | impl<B: BufferMut, C> BufferUdpStateContext<B> for C {} - | ^^^^^^^^^^^^^^^^^^^^^^^^ ^ + | --------- ^^^^^^^^^^^^^^^^^^^^^^^^ ^ + | | + | unsatisfied trait bound introduced here note: required by a bound in `StackContext` --> $DIR/issue-89118.rs:9:14 | @@ -28,7 +30,9 @@ note: required for `Ctx<()>` to implement `for<'a> BufferUdpStateContext<&'a ()> --> $DIR/issue-89118.rs:5:23 | LL | impl<B: BufferMut, C> BufferUdpStateContext<B> for C {} - | ^^^^^^^^^^^^^^^^^^^^^^^^ ^ + | --------- ^^^^^^^^^^^^^^^^^^^^^^^^ ^ + | | + | unsatisfied trait bound introduced here note: required by a bound in `EthernetWorker` --> $DIR/issue-89118.rs:28:14 | @@ -48,7 +52,9 @@ note: required for `Ctx<()>` to implement `for<'a> BufferUdpStateContext<&'a ()> --> $DIR/issue-89118.rs:5:23 | LL | impl<B: BufferMut, C> BufferUdpStateContext<B> for C {} - | ^^^^^^^^^^^^^^^^^^^^^^^^ ^ + | --------- ^^^^^^^^^^^^^^^^^^^^^^^^ ^ + | | + | unsatisfied trait bound introduced here note: required by a bound in `StackContext` --> $DIR/issue-89118.rs:9:14 | diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-89436.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-89436.rs index f7e467b37..f7e467b37 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-89436.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-89436.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90612.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90612.rs index effc32945..effc32945 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90612.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90612.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90638.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90638.rs index 628b5cba1..628b5cba1 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90638.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90638.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90875.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90875.rs index ffd6857d8..ffd6857d8 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90875.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90875.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90950.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90950.rs index ab9d9a7ce..ab9d9a7ce 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90950.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90950.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90950.stderr b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90950.stderr index 6206b167b..6206b167b 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90950.stderr +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/issue-90950.stderr diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/norm-before-method-resolution.rs b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/norm-before-method-resolution.rs index 7693b1182..7693b1182 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/norm-before-method-resolution.rs +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/norm-before-method-resolution.rs diff --git a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/norm-before-method-resolution.stderr b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/norm-before-method-resolution.stderr index 51c964600..51c964600 100644 --- a/src/test/ui/higher-rank-trait-bounds/normalize-under-binder/norm-before-method-resolution.stderr +++ b/tests/ui/higher-rank-trait-bounds/normalize-under-binder/norm-before-method-resolution.stderr |