about summary refs log tree commit diff
path: root/tests/ui/traits/issue-23825.rs
blob: e873a3b35c0f6ba0b4105503fbe6deb0a5f2c696 (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");
}