File tree Expand file tree Collapse file tree 1 file changed +7
-0
lines changed Expand file tree Collapse file tree 1 file changed +7
-0
lines changed Original file line number Diff line number Diff line change 44#![ feature( const_panic) ]
55#![ feature( const_if_match) ]
66#![ feature( const_float_bits_conv) ]
7+ #![ feature( const_float_classify) ]
78
89// Don't promote
910const fn nop < T > ( x : T ) -> T { x }
@@ -44,6 +45,9 @@ fn f32() {
4445 const MASKED_NAN1 : u32 = f32:: NAN . to_bits ( ) ^ 0x002A_AAAA ;
4546 const MASKED_NAN2 : u32 = f32:: NAN . to_bits ( ) ^ 0x0055_5555 ;
4647
48+ const_assert ! ( f32 :: from_bits( MASKED_NAN1 ) . is_nan( ) ) ;
49+ const_assert ! ( f32 :: from_bits( MASKED_NAN1 ) . is_nan( ) ) ;
50+
4751 const_assert ! ( f32 :: from_bits( MASKED_NAN1 ) . to_bits( ) , MASKED_NAN1 ) ;
4852 const_assert ! ( f32 :: from_bits( MASKED_NAN2 ) . to_bits( ) , MASKED_NAN2 ) ;
4953}
@@ -69,6 +73,9 @@ fn f64() {
6973 const MASKED_NAN1 : u64 = f64:: NAN . to_bits ( ) ^ 0x000A_AAAA_AAAA_AAAA ;
7074 const MASKED_NAN2 : u64 = f64:: NAN . to_bits ( ) ^ 0x0005_5555_5555_5555 ;
7175
76+ const_assert ! ( f64 :: from_bits( MASKED_NAN1 ) . is_nan( ) ) ;
77+ const_assert ! ( f64 :: from_bits( MASKED_NAN1 ) . is_nan( ) ) ;
78+
7279 const_assert ! ( f64 :: from_bits( MASKED_NAN1 ) . to_bits( ) , MASKED_NAN1 ) ;
7380 const_assert ! ( f64 :: from_bits( MASKED_NAN2 ) . to_bits( ) , MASKED_NAN2 ) ;
7481}
You can’t perform that action at this time.
0 commit comments