diff options
Diffstat (limited to '')
-rw-r--r-- | src/test/ui/issues/issue-27859.rs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/test/ui/issues/issue-27859.rs b/src/test/ui/issues/issue-27859.rs new file mode 100644 index 000000000..233670681 --- /dev/null +++ b/src/test/ui/issues/issue-27859.rs @@ -0,0 +1,20 @@ +// run-pass +// ignore-wasm32 issue 42629 + +#[inline(never)] +fn foo(a: f32, b: f32) -> f32 { + a % b +} + +#[inline(never)] +fn bar(a: f32, b: f32) -> f32 { + ((a as f64) % (b as f64)) as f32 +} + +fn main() { + let unknown_float = std::env::args().len(); + println!("{}", foo(4.0, unknown_float as f32)); + println!("{}", foo(5.0, (unknown_float as f32) + 1.0)); + println!("{}", bar(6.0, (unknown_float as f32) + 2.0)); + println!("{}", bar(7.0, (unknown_float as f32) + 3.0)); +} |