diff options
author | Michael Goulet <michael@errs.io> | 2023-03-07 05:40:55 +0000 |
---|---|---|
committer | Michael Goulet <michael@errs.io> | 2023-03-07 05:41:08 +0000 |
commit | b7a5f3a41c6613033f0e6be9307c40e3174a9381 (patch) | |
tree | acd5a0df2cde62e70221aa90d0200ff22b891124 /tests | |
parent | f63ccaf25f74151a5d8ce057904cd944074b01d2 (diff) | |
download | rust-b7a5f3a41c6613033f0e6be9307c40e3174a9381.tar.gz |
Instantiate instead of erasing binder when probing param methods
Diffstat (limited to 'tests')
-rw-r--r-- | tests/ui/traits/non_lifetime_binders/method-probe.rs | 16 | ||||
-rw-r--r-- | tests/ui/traits/non_lifetime_binders/method-probe.stderr | 11 |
2 files changed, 27 insertions, 0 deletions
diff --git a/tests/ui/traits/non_lifetime_binders/method-probe.rs b/tests/ui/traits/non_lifetime_binders/method-probe.rs new file mode 100644 index 00000000000..8df240c2082 --- /dev/null +++ b/tests/ui/traits/non_lifetime_binders/method-probe.rs @@ -0,0 +1,16 @@ +// check-pass + +#![feature(non_lifetime_binders)] +//~^ WARN the feature `non_lifetime_binders` is incomplete + +trait Foo: for<T> Bar<T> {} + +trait Bar<T> { + fn method() -> T; +} + +fn x<T: Foo>() { + let _: i32 = T::method(); +} + +fn main() {} diff --git a/tests/ui/traits/non_lifetime_binders/method-probe.stderr b/tests/ui/traits/non_lifetime_binders/method-probe.stderr new file mode 100644 index 00000000000..8f61792e6ce --- /dev/null +++ b/tests/ui/traits/non_lifetime_binders/method-probe.stderr @@ -0,0 +1,11 @@ +warning: the feature `non_lifetime_binders` is incomplete and may not be safe to use and/or cause compiler crashes + --> $DIR/method-probe.rs:3:12 + | +LL | #![feature(non_lifetime_binders)] + | ^^^^^^^^^^^^^^^^^^^^ + | + = note: see issue #108185 <https://github.com/rust-lang/rust/issues/108185> for more information + = note: `#[warn(incomplete_features)]` on by default + +warning: 1 warning emitted + |