2018-08-30 14:18:55 +02:00
|
|
|
//@ run-pass
|
2016-11-06 20:45:27 +01:00
|
|
|
|
|
|
|
|
trait Foo {
|
|
|
|
|
const NUM: usize;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
impl Foo for i32 {
|
|
|
|
|
const NUM: usize = 1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const FOO: usize = <i32 as Foo>::NUM;
|
|
|
|
|
|
|
|
|
|
fn main() {
|
|
|
|
|
assert_eq!(1, FOO);
|
|
|
|
|
|
|
|
|
|
match 1 {
|
|
|
|
|
<i32 as Foo>::NUM => {},
|
|
|
|
|
_ => assert!(false)
|
|
|
|
|
}
|
|
|
|
|
}
|