summaryrefslogtreecommitdiffstats
path: root/src/test/ui/associated-types/associated-types-invalid-trait-ref-issue-18865.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/associated-types/associated-types-invalid-trait-ref-issue-18865.rs')
-rw-r--r--src/test/ui/associated-types/associated-types-invalid-trait-ref-issue-18865.rs14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/test/ui/associated-types/associated-types-invalid-trait-ref-issue-18865.rs b/src/test/ui/associated-types/associated-types-invalid-trait-ref-issue-18865.rs
new file mode 100644
index 000000000..3bd3f3a75
--- /dev/null
+++ b/src/test/ui/associated-types/associated-types-invalid-trait-ref-issue-18865.rs
@@ -0,0 +1,14 @@
+// Test that we report an error if the trait ref in a qualified type
+// uses invalid type arguments.
+
+trait Foo<T> {
+ type Bar;
+ fn get_bar(&self) -> Self::Bar;
+}
+
+fn f<T:Foo<isize>>(t: &T) {
+ let u: <T as Foo<usize>>::Bar = t.get_bar();
+ //~^ ERROR the trait bound `T: Foo<usize>` is not satisfied
+}
+
+fn main() { }