]>
git.proxmox.com Git - rustc.git/blob - src/test/ui/traits/trait-inheritance-num5.rs
2 // pretty-expanded FIXME #23616
4 pub trait NumCast
: Sized
{
5 fn from(i
: i32) -> Option
<Self>;
8 pub trait NumExt
: PartialEq
+ NumCast {}
10 impl NumExt
for f32 {}
11 impl NumExt
for isize {}
13 impl NumCast
for f32 {
14 fn from(i
: i32) -> Option
<f32> { Some(i as f32) }
16 impl NumCast
for isize {
17 fn from(i
: i32) -> Option
<isize> { Some(i as isize) }
20 fn num_eq_one
<T
:NumExt
>() -> T
{
21 NumCast
::from(1).unwrap()
25 num_eq_one
::<isize>(); // you need to actually use the function to trigger the ICE