diff options
Diffstat (limited to 'tests/ui/feature-gates/feature-gate-return_type_notation.rs')
-rw-r--r-- | tests/ui/feature-gates/feature-gate-return_type_notation.rs | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/ui/feature-gates/feature-gate-return_type_notation.rs b/tests/ui/feature-gates/feature-gate-return_type_notation.rs new file mode 100644 index 000000000..5028b9ec9 --- /dev/null +++ b/tests/ui/feature-gates/feature-gate-return_type_notation.rs @@ -0,0 +1,22 @@ +// edition: 2021 +// revisions: cfg no + +//[no] check-pass +// Since we're not adding new syntax, `cfg`'d out RTN must pass. + +#![feature(async_fn_in_trait)] +//~^ WARN the feature `async_fn_in_trait` is incomplete + +trait Trait { + async fn m(); +} + +#[cfg(cfg)] +fn foo<T: Trait<m(): Send>>() {} +//[cfg]~^ ERROR return type notation is experimental +//[cfg]~| ERROR parenthesized generic arguments cannot be used in associated type constraints +//[cfg]~| ERROR associated type `m` not found for `Trait` +//[no]~^^^^ WARN return type notation is experimental +//[no]~| WARN unstable syntax can change at any point in the future, causing a hard error! + +fn main() {} |