Skip to content

Commit 90bbebc

Browse files
add fixme regarding powi(snan, 0)
1 parent 66311a1 commit 90bbebc

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

src/tools/miri/tests/pass/float.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1046,9 +1046,6 @@ pub fn libm() {
10461046

10471047
// For pow (powf in rust) the C standard says:
10481048
// x^0 = 1 for all x even a sNaN
1049-
// FIXME: But the ecosystem is inconistent with this, in the future we should return either
1050-
// 1 or the NaN. Add correct tests when we actually do this.
1051-
// Currently we return 1.
10521049
assert_eq!(SINGLE_SNAN.powf(0.0), 1.0);
10531050
assert_eq!(DOUBLE_SNAN.powf(0.0), 1.0);
10541051
// f*::NAN is a quiet NAN and should return 1 as well.
@@ -1062,8 +1059,11 @@ pub fn libm() {
10621059

10631060
// For pown (powi in rust) the C standard says:
10641061
// x^0 = 1 for all x not a sNaN.
1065-
assert_ne!(SINGLE_SNAN.powi(0), 1.0);
1066-
assert_ne!(DOUBLE_SNAN.powi(0), 1.0);
1062+
// FIXME: But the ecosystem is inconistent with this, in the future we should return either
1063+
// 1 or the NaN. Add correct tests when we actually do this.
1064+
// Should we follow glibc and libm or the C Standard itself?
1065+
// assert_ne!(SINGLE_SNAN.powi(0), 1.0);
1066+
// assert_ne!(DOUBLE_SNAN.powi(0), 1.0);
10671067
// f*::NAN is a quiet NAN and should return 1 as well.
10681068
assert_eq!(f32::NAN.powi(0), 1.0);
10691069
assert_eq!(f64::NAN.powi(0), 1.0);

0 commit comments

Comments
 (0)