summaryrefslogtreecommitdiffstats
path: root/tests/ui/traits/issue-23825.rs
blob: a9f0095d2e245d0f5ae5da6932f769f43dfaef86 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// run-pass
trait Stringify {
    fn to_string(&self) -> String;
}

impl Stringify for u32 {
    fn to_string(&self) -> String { format!("u32: {}", *self) }
}

impl Stringify for f32 {
    fn to_string(&self) -> String { format!("f32: {}", *self) }
}

fn print<T: Stringify>(x: T) -> String {
    x.to_string()
}

fn main() {
    assert_eq!(&print(5), "u32: 5");
    assert_eq!(&print(5.0), "f32: 5");
}