blob: dbb7120d543d5fe0bcd5ca5665e20ae288bc7af1 [file] [log] [blame] [edit]
//@ run-pass
//@ pretty-expanded FIXME #23616
pub trait Number: NumConv {
fn from<T:Number>(n: T) -> Self;
}
impl Number for f64 {
fn from<T:Number>(n: T) -> f64 { n.to_float() }
}
pub trait NumConv {
fn to_float(&self) -> f64;
}
impl NumConv for f64 {
fn to_float(&self) -> f64 { *self }
}
pub fn main() {
let _: f64 = Number::from(0.0f64);
}