diff options
Diffstat (limited to '')
-rw-r--r-- | src/test/ui/issues/issue-51044.rs | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/test/ui/issues/issue-51044.rs b/src/test/ui/issues/issue-51044.rs new file mode 100644 index 000000000..628d78769 --- /dev/null +++ b/src/test/ui/issues/issue-51044.rs @@ -0,0 +1,30 @@ +// run-pass +// regression test for issue #50825 +// Check that the feature gate normalizes associated types. + +#![allow(dead_code)] +struct Foo<T>(T); +struct Duck; +struct Quack; + +trait Hello<A> where A: Animal { +} + +trait Animal { + type Noise; +} + +trait Loud<R> { +} + +impl Loud<Quack> for f32 { +} + +impl Animal for Duck { + type Noise = Quack; +} + +impl Hello<Duck> for Foo<f32> where f32: Loud<<Duck as Animal>::Noise> { +} + +fn main() {} |