Skip to content

Commit 27a8757

Browse files
authored
Merge pull request #6506 from n8sh/math-examples-exact
[Trivial] In std.math public tests use exact equality where the specification mandates an exact result merged-on-behalf-of: Jack Stouffer <[email protected]>
2 parents 4748cb6 + beb13a6 commit 27a8757

File tree

1 file changed

+17
-17
lines changed

1 file changed

+17
-17
lines changed

std/math.d

+17-17
Original file line numberDiff line numberDiff line change
@@ -794,7 +794,7 @@ float cos(float x) @safe pure nothrow @nogc { return cos(cast(real) x); }
794794
///
795795
@safe unittest
796796
{
797-
assert(cos(0.0).approxEqual(1.0));
797+
assert(cos(0.0) == 1.0);
798798
assert(cos(1.0).approxEqual(0.540));
799799
assert(cos(3.0).approxEqual(-0.989));
800800
}
@@ -1169,7 +1169,7 @@ Lret: {}
11691169
///
11701170
@safe unittest
11711171
{
1172-
assert(tan(0.0).approxEqual(0));
1172+
assert(isIdentical(tan(0.0), 0.0));
11731173
assert(tan(PI).approxEqual(0));
11741174
assert(tan(PI / 3).approxEqual(sqrt(3.0)));
11751175
}
@@ -1239,7 +1239,7 @@ float asin(float x) @safe pure nothrow @nogc { return asin(cast(real) x); }
12391239
///
12401240
@safe unittest
12411241
{
1242-
assert(asin(0.0).approxEqual(0.0));
1242+
assert(isIdentical(asin(0.0), 0.0));
12431243
assert(asin(0.5).approxEqual(PI / 6));
12441244
assert(asin(PI).isNaN);
12451245
}
@@ -1363,7 +1363,7 @@ float atan(float x) @safe pure nothrow @nogc { return atan(cast(real) x); }
13631363
///
13641364
@safe unittest
13651365
{
1366-
assert(atan(0.0).approxEqual(0.0));
1366+
assert(isIdentical(atan(0.0), 0.0));
13671367
assert(atan(sqrt(3.0)).approxEqual(PI / 3));
13681368
}
13691369

@@ -1516,7 +1516,7 @@ float cosh(float x) @safe pure nothrow @nogc { return cosh(cast(real) x); }
15161516
///
15171517
@safe unittest
15181518
{
1519-
assert(cosh(0.0).approxEqual(1.0));
1519+
assert(cosh(0.0) == 1.0);
15201520
assert(cosh(1.0).approxEqual((E + 1.0 / E) / 2));
15211521
}
15221522

@@ -1558,7 +1558,7 @@ float sinh(float x) @safe pure nothrow @nogc { return sinh(cast(real) x); }
15581558
///
15591559
@safe unittest
15601560
{
1561-
assert(sinh(0.0).approxEqual(0.0));
1561+
assert(isIdentical(sinh(0.0), 0.0));
15621562
assert(sinh(1.0).approxEqual((E - 1.0 / E) / 2));
15631563
}
15641564

@@ -1597,7 +1597,7 @@ float tanh(float x) @safe pure nothrow @nogc { return tanh(cast(real) x); }
15971597
///
15981598
@safe unittest
15991599
{
1600-
assert(tanh(0.0).approxEqual(0.0));
1600+
assert(isIdentical(tanh(0.0), 0.0));
16011601
assert(tanh(1.0).approxEqual(sinh(1.0) / cosh(1.0)));
16021602
}
16031603

@@ -1674,7 +1674,7 @@ float acosh(float x) @safe pure nothrow @nogc { return acosh(cast(real) x); }
16741674
{
16751675
assert(isNaN(acosh(0.9)));
16761676
assert(isNaN(acosh(real.nan)));
1677-
assert(acosh(1.0) == 0.0);
1677+
assert(isIdentical(acosh(1.0), 0.0));
16781678
assert(acosh(real.infinity) == real.infinity);
16791679
assert(isNaN(acosh(0.5)));
16801680
}
@@ -2062,7 +2062,7 @@ float exp(float x) @safe pure nothrow @nogc { return exp(cast(real) x); }
20622062
///
20632063
@safe unittest
20642064
{
2065-
assert(exp(0.0).feqrel(1.0) > 16);
2065+
assert(exp(0.0) == 1.0);
20662066
assert(exp(3.0).feqrel(E * E * E) > 16);
20672067
}
20682068

@@ -2339,7 +2339,7 @@ L_largenegative:
23392339
///
23402340
@safe unittest
23412341
{
2342-
assert(expm1(0.0).feqrel(0) > 16);
2342+
assert(isIdentical(expm1(0.0), 0.0));
23432343
assert(expm1(1.0).feqrel(1.71828) > 16);
23442344
assert(expm1(2.0).feqrel(6.3890) > 16);
23452345
}
@@ -2373,7 +2373,7 @@ real exp2(real x) @nogc @trusted pure nothrow
23732373
///
23742374
@safe unittest
23752375
{
2376-
assert(exp2(0.0).feqrel(1.0) > 16);
2376+
assert(isIdentical(exp2(0.0), 1.0));
23772377
assert(exp2(2.0).feqrel(4.0) > 16);
23782378
assert(exp2(8.0).feqrel(256.0) > 16);
23792379
}
@@ -3809,7 +3809,7 @@ real log1p(real x) @safe pure nothrow @nogc
38093809
///
38103810
@safe pure unittest
38113811
{
3812-
assert(log1p(0.0).feqrel(0.0) > 16);
3812+
assert(isIdentical(log1p(0.0), 0.0));
38133813
assert(log1p(1.0).feqrel(0.69314) > 16);
38143814

38153815
assert(log1p(-1.0) == -real.infinity);
@@ -3957,8 +3957,8 @@ real logb(real x) @trusted nothrow @nogc
39573957
///
39583958
@safe @nogc nothrow unittest
39593959
{
3960-
assert(logb(1.0).feqrel(0.0) > 16);
3961-
assert(logb(100.0).feqrel(6.0) > 16);
3960+
assert(logb(1.0) == 0);
3961+
assert(logb(100.0) == 6);
39623962

39633963
assert(logb(0.0) == -real.infinity);
39643964
assert(logb(real.infinity) == real.infinity);
@@ -3992,7 +3992,7 @@ real fmod(real x, real y) @trusted nothrow @nogc
39923992
///
39933993
@safe unittest
39943994
{
3995-
assert(fmod(0.0, 1.0).feqrel(0.0) > 16);
3995+
assert(isIdentical(fmod(0.0, 1.0), 0.0));
39963996
assert(fmod(5.0, 3.0).feqrel(2.0) > 16);
39973997
assert(isNaN(fmod(5.0, 0.0)));
39983998
}
@@ -4132,8 +4132,8 @@ float fabs(float x) @safe pure nothrow @nogc { return fabs(cast(real) x); }
41324132
///
41334133
@safe unittest
41344134
{
4135-
assert(fabs(0.0) == 0.0);
4136-
assert(fabs(-0.0) == 0.0);
4135+
assert(isIdentical(fabs(0.0), 0.0));
4136+
assert(isIdentical(fabs(-0.0), 0.0));
41374137
assert(fabs(-10.0) == 10.0);
41384138
}
41394139

0 commit comments

Comments
 (0)