@@ -19,16 +19,16 @@ module m1
19
19
real , parameter :: negZero = sign (0 ., - 1 .)
20
20
logical , parameter :: test_12 = nearest (negZero, 1 .) == minSubnormal
21
21
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]
23
23
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]
25
25
logical , parameter :: test_15 = nearest (negZero, 0 .) == minSubnormal
26
26
logical , parameter :: test_16 = nearest (tiny (1 .),- 1 .) == 1.1754942E-38
27
27
logical , parameter :: test_17 = nearest (tiny (1 .),1 .) == 1.1754945E-38
28
28
contains
29
29
subroutine subr (a )
30
30
real , intent (in ) :: a
31
- ! WARN: warning: NEAREST: S argument is zero
31
+ ! WARN: warning: NEAREST: S argument is zero [-Wfolding-value-checks]
32
32
print * , nearest (a, 0 .)
33
33
end
34
34
end module
@@ -42,7 +42,7 @@ module m2
42
42
logical , parameter :: test_2 = ieee_next_after(minSubnormal, - 1 .) == 0
43
43
logical , parameter :: test_3 = ieee_next_after(1 ., 2 .) == 1.0000001
44
44
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]
46
46
real , parameter :: inf = 1 . / 0 .
47
47
logical , parameter :: test_5 = ieee_next_after(inf, inf) == inf
48
48
logical , parameter :: test_6 = ieee_next_after(inf, - inf) == h
@@ -54,12 +54,12 @@ module m2
54
54
logical , parameter :: test_11 = ieee_next_after(1.9999999999999999999_10 , 3 .) == 2._10
55
55
#endif
56
56
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]
58
58
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]
60
60
real , parameter :: x13 = ieee_next_after(nan, nan)
61
61
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]
63
63
real , parameter :: x14 = ieee_next_after(nan, 0 .)
64
64
logical , parameter :: test_14 = .not. (x14 == x14)
65
65
end module
@@ -72,7 +72,7 @@ module m3
72
72
logical , parameter :: test_2 = ieee_next_down(0.d0 ) == - minSubnormal
73
73
logical , parameter :: test_3 = ieee_next_up(1.d0 ) == 1.0000000000000002d0
74
74
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]
76
76
real (kind (0.d0 )), parameter :: inf = 1.d0 / 0.d0
77
77
logical , parameter :: test_5 = ieee_next_up(huge (0.d0 )) == inf
78
78
logical , parameter :: test_6 = ieee_next_down(- huge (0.d0 )) == - inf
@@ -82,12 +82,12 @@ module m3
82
82
logical , parameter :: test_10 = ieee_next_down(- inf) == - inf
83
83
logical , parameter :: test_11 = ieee_next_up(1.9999999999999997d0 ) == 2.d0
84
84
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]
86
86
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]
88
88
real (kind (0.d0 )), parameter :: x13 = ieee_next_up(nan)
89
89
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]
91
91
real (kind (0.d0 )), parameter :: x14 = ieee_next_down(nan)
92
92
logical , parameter :: test_14 = .not. (x14 == x14)
93
93
end module
0 commit comments