mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-22 14:55:26 +00:00
31 lines
436 B
Rust
31 lines
436 B
Rust
|
//@ 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() {}
|