File: float.rs

package info (click to toggle)
rustc 1.92.0%2Bdfsg1-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental, sid
  • size: 956,280 kB
  • sloc: xml: 158,148; javascript: 23,448; sh: 19,588; python: 15,739; ansic: 13,660; cpp: 7,009; asm: 4,376; makefile: 724; lisp: 180; sql: 15
file content (26 lines) | stat: -rw-r--r-- 569 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// Compiler:
//
// Run-time:
//   status: 0

fn main() {
    use std::hint::black_box;

    macro_rules! check {
        ($ty:ty, $expr:expr) => {{
            const EXPECTED: $ty = $expr;
            assert_eq!($expr, EXPECTED);
        }};
    }

    check!(i32, black_box(0.0f32) as i32);

    check!(u64, black_box(f32::NAN) as u64);
    check!(u128, black_box(f32::NAN) as u128);

    check!(i64, black_box(f64::NAN) as i64);
    check!(u64, black_box(f64::NAN) as u64);

    check!(i16, black_box(f32::MIN) as i16);
    check!(i16, black_box(f32::MAX) as i16);
}