diff options
Diffstat (limited to 'src/test/ui/associated-types/point-at-type-on-obligation-failure.rs')
-rw-r--r-- | src/test/ui/associated-types/point-at-type-on-obligation-failure.rs | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/test/ui/associated-types/point-at-type-on-obligation-failure.rs b/src/test/ui/associated-types/point-at-type-on-obligation-failure.rs new file mode 100644 index 000000000..666660068 --- /dev/null +++ b/src/test/ui/associated-types/point-at-type-on-obligation-failure.rs @@ -0,0 +1,21 @@ +trait Bar { + type Ok; + type Sibling: Bar2<Ok=Self::Ok>; +} +trait Bar2 { + type Ok; +} + +struct Foo; +struct Foo2; + +impl Bar for Foo { + type Ok = (); + type Sibling = Foo2; + //~^ ERROR type mismatch resolving `<Foo2 as Bar2>::Ok == ()` +} +impl Bar2 for Foo2 { + type Ok = u32; +} + +fn main() {} |