diff options
Diffstat (limited to 'src/test/ui/type-alias-impl-trait/generic_duplicate_param_use6.rs')
-rw-r--r-- | src/test/ui/type-alias-impl-trait/generic_duplicate_param_use6.rs | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/test/ui/type-alias-impl-trait/generic_duplicate_param_use6.rs b/src/test/ui/type-alias-impl-trait/generic_duplicate_param_use6.rs new file mode 100644 index 000000000..5120925e5 --- /dev/null +++ b/src/test/ui/type-alias-impl-trait/generic_duplicate_param_use6.rs @@ -0,0 +1,19 @@ +#![feature(type_alias_impl_trait)] + +use std::fmt::Debug; + +fn main() {} + +// test that unused generic parameters are ok +type Two<T, U> = impl Debug; + +fn two<T: Copy + Debug, U: Debug>(t: T, u: U) -> Two<T, U> { + (t, t) + //~^ ERROR `T` doesn't implement `Debug` +} + +fn three<T: Copy + Debug, U: Debug>(t: T, u: U) -> Two<T, U> { + (u, t) + //~^ ERROR `T` doesn't implement `Debug` + //~| ERROR `U` doesn't implement `Debug` +} |