about summary refs log tree commit diff
path: root/tests/ui/issues/issue-19850.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/issues/issue-19850.rs')
-rw-r--r--tests/ui/issues/issue-19850.rs22
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/ui/issues/issue-19850.rs b/tests/ui/issues/issue-19850.rs
new file mode 100644
index 00000000000..4a578c398a8
--- /dev/null
+++ b/tests/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() {}