@@ -19,16 +19,16 @@ module m1
1919 real , parameter :: negZero = sign (0 ., - 1 .)
2020 logical , parameter :: test_12 = nearest (negZero, 1 .) == minSubnormal
2121 logical , parameter :: test_13 = nearest (negZero, - 1 .) == - minSubnormal
22- ! WARN: warning: NEAREST: S argument is zero
22+ ! WARN: warning: NEAREST: S argument is zero [-Wfolding-value-checks]
2323 logical , parameter :: test_14 = nearest (0 ., negZero) == - minSubnormal
24- ! WARN: warning: NEAREST: S argument is zero
24+ ! WARN: warning: NEAREST: S argument is zero [-Wfolding-value-checks]
2525 logical , parameter :: test_15 = nearest (negZero, 0 .) == minSubnormal
2626 logical , parameter :: test_16 = nearest (tiny (1 .),- 1 .) == 1.1754942E-38
2727 logical , parameter :: test_17 = nearest (tiny (1 .),1 .) == 1.1754945E-38
2828 contains
2929 subroutine subr (a )
3030 real , intent (in ) :: a
31- ! WARN: warning: NEAREST: S argument is zero
31+ ! WARN: warning: NEAREST: S argument is zero [-Wfolding-value-checks]
3232 print * , nearest (a, 0 .)
3333 end
3434end module
@@ -42,7 +42,7 @@ module m2
4242 logical , parameter :: test_2 = ieee_next_after(minSubnormal, - 1 .) == 0
4343 logical , parameter :: test_3 = ieee_next_after(1 ., 2 .) == 1.0000001
4444 logical , parameter :: test_4 = ieee_next_after(1.0000001 , - 1 .) == 1
45- ! WARN: warning: division by zero
45+ ! WARN: warning: division by zero [-Wfolding-exception]
4646 real , parameter :: inf = 1 . / 0 .
4747 logical , parameter :: test_5 = ieee_next_after(inf, inf) == inf
4848 logical , parameter :: test_6 = ieee_next_after(inf, - inf) == h
@@ -54,12 +54,12 @@ module m2
5454 logical , parameter :: test_11 = ieee_next_after(1.9999999999999999999_10 , 3 .) == 2._10
5555#endif
5656 logical , parameter :: test_12 = ieee_next_after(1 ., 1 .) == 1 .
57- ! WARN: warning: invalid argument on division
57+ ! WARN: warning: invalid argument on division [-Wfolding-exception]
5858 real , parameter :: nan = 0 . / 0 .
59- ! WARN: warning: IEEE_NEXT_AFTER intrinsic folding: arguments are unordered
59+ ! WARN: warning: IEEE_NEXT_AFTER intrinsic folding: arguments are unordered [-Wfolding-value-checks]
6060 real , parameter :: x13 = ieee_next_after(nan, nan)
6161 logical , parameter :: test_13 = .not. (x13 == x13)
62- ! WARN: warning: IEEE_NEXT_AFTER intrinsic folding: arguments are unordered
62+ ! WARN: warning: IEEE_NEXT_AFTER intrinsic folding: arguments are unordered [-Wfolding-value-checks]
6363 real , parameter :: x14 = ieee_next_after(nan, 0 .)
6464 logical , parameter :: test_14 = .not. (x14 == x14)
6565end module
@@ -72,7 +72,7 @@ module m3
7272 logical , parameter :: test_2 = ieee_next_down(0.d0 ) == - minSubnormal
7373 logical , parameter :: test_3 = ieee_next_up(1.d0 ) == 1.0000000000000002d0
7474 logical , parameter :: test_4 = ieee_next_down(1.0000000000000002d0 ) == 1.d0
75- ! WARN: warning: division by zero
75+ ! WARN: warning: division by zero [-Wfolding-exception]
7676 real (kind (0.d0 )), parameter :: inf = 1.d0 / 0.d0
7777 logical , parameter :: test_5 = ieee_next_up(huge (0.d0 )) == inf
7878 logical , parameter :: test_6 = ieee_next_down(- huge (0.d0 )) == - inf
@@ -82,12 +82,12 @@ module m3
8282 logical , parameter :: test_10 = ieee_next_down(- inf) == - inf
8383 logical , parameter :: test_11 = ieee_next_up(1.9999999999999997d0 ) == 2.d0
8484 logical , parameter :: test_12 = ieee_next_down(2.d0 ) == 1.9999999999999997d0
85- ! WARN: warning: invalid argument on division
85+ ! WARN: warning: invalid argument on division [-Wfolding-exception]
8686 real (kind (0.d0 )), parameter :: nan = 0.d0 / 0.d0
87- ! WARN: warning: IEEE_NEXT_UP intrinsic folding: argument is NaN
87+ ! WARN: warning: IEEE_NEXT_UP intrinsic folding: argument is NaN [-Wfolding-exception]
8888 real (kind (0.d0 )), parameter :: x13 = ieee_next_up(nan)
8989 logical , parameter :: test_13 = .not. (x13 == x13)
90- ! WARN: warning: IEEE_NEXT_DOWN intrinsic folding: argument is NaN
90+ ! WARN: warning: IEEE_NEXT_DOWN intrinsic folding: argument is NaN [-Wfolding-exception]
9191 real (kind (0.d0 )), parameter :: x14 = ieee_next_down(nan)
9292 logical , parameter :: test_14 = .not. (x14 == x14)
9393end module
0 commit comments