blob: 4a578c398a826ef80ed3fd1663217d48fc844253 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
// check-pass
#![allow(unused_variables)]
// Test that `<Type as Trait>::Output` and `Self::Output` are accepted as type annotations in let
// bindings
// pretty-expanded FIXME #23616
trait Int {
fn one() -> Self;
fn leading_zeros(self) -> usize;
}
trait Foo {
type T : Int;
fn test(&self) {
let r: <Self as Foo>::T = Int::one();
let r: Self::T = Int::one();
}
}
fn main() {}
|