diff options
Diffstat (limited to '')
-rw-r--r-- | src/test/ui/issues/issue-19850.rs | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/test/ui/issues/issue-19850.rs b/src/test/ui/issues/issue-19850.rs new file mode 100644 index 000000000..4a578c398 --- /dev/null +++ b/src/test/ui/issues/issue-19850.rs @@ -0,0 +1,22 @@ +// check-pass +#![allow(unused_variables)] +// Test that `<Type as Trait>::Output` and `Self::Output` are accepted as type annotations in let +// bindings + +// pretty-expanded FIXME #23616 + +trait Int { + fn one() -> Self; + fn leading_zeros(self) -> usize; +} + +trait Foo { + type T : Int; + + fn test(&self) { + let r: <Self as Foo>::T = Int::one(); + let r: Self::T = Int::one(); + } +} + +fn main() {} |