@@ -80,7 +80,7 @@ contains
8080
8181
8282 #:for k1, t1 in INT_KINDS_TYPES
83-
83+ #:set k2, t2 = REAL_KINDS[-2], REAL_TYPES[-2]
8484 subroutine test_logfact_${t1[0]}$${k1}$(error)
8585 type(error_type), allocatable, intent(out) :: error
8686 integer, parameter :: n = 6
@@ -90,32 +90,32 @@ contains
9090
9191 ${t1}$, parameter :: x(n) = [0_${k1}$, 1_${k1}$, 2_${k1}$, 4_${k1}$, &
9292 5_${k1}$, 100_${k1}$]
93- real(dp) , parameter :: ans(n) = [0.0_dp , 0.0_dp , 0.69314718055994_dp , 3.17805383034794_dp , &
94- 4.78749174278204_dp , 3.637393755555e2_dp ]
93+ ${t2}$ , parameter :: ans(n) = [0.0_${k2}$ , 0.0_${k2}$ , 0.69314718055994_${k2}$ , 3.17805383034794_${k2}$ , &
94+ 4.78749174278204_${k2}$ , 3.637393755555e2_${k2}$ ]
9595
9696 #:elif k1 == "int16"
9797
9898 ${t1}$, parameter :: x(n) = [0_${k1}$, 1_${k1}$, 2_${k1}$, 4_${k1}$, &
9999 7_${k1}$, 500_${k1}$]
100- real(dp) , parameter :: ans(n) = [0.0_dp , 0.0_dp , 0.69314718055994_dp , 3.17805383034794_dp , &
101- 8.52516136106541_dp , 2.611330458460e3_dp ]
100+ ${t2}$ , parameter :: ans(n) = [0.0_${k2}$ , 0.0_${k2}$ , 0.69314718055994_${k2}$ , 3.17805383034794_${k2}$ , &
101+ 8.52516136106541_${k2}$ , 2.611330458460e3_${k2}$ ]
102102 #:elif k1 == "int32"
103103
104104 ${t1}$, parameter :: x(n) = [0_${k1}$, 1_${k1}$, 2_${k1}$, 4_${k1}$, &
105105 12_${k1}$, 7000_${k1}$]
106- real(dp) , parameter :: ans(n) = [0.0_dp , 0.0_dp , 0.69314718055994_dp , 3.17805383034794_dp , &
107- 1.998721449566e1_dp , 5.498100377941e4_dp ]
106+ ${t2}$ , parameter :: ans(n) = [0.0_${k2}$ , 0.0_${k2}$ , 0.69314718055994_${k2}$ , 3.17805383034794_${k2}$ , &
107+ 1.998721449566e1_${k2}$ , 5.498100377941e4_${k2}$ ]
108108 #:elif k1 == "int64"
109109
110110 ${t1}$, parameter :: x(n) = [0_${k1}$, 1_${k1}$, 2_${k1}$, 4_${k1}$, &
111111 20_${k1}$, 90000_${k1}$]
112- real(dp) , parameter :: ans(n) = [0.0_dp , 0.0_dp , 0.69314718055994_dp , 3.17805383034794_dp , &
113- 4.233561646075e1_dp , 9.366874681600e5_dp ]
112+ ${t2}$ , parameter :: ans(n) = [0.0_${k2}$ , 0.0_${k2}$ , 0.69314718055994_${k2}$ , 3.17805383034794_${k2}$ , &
113+ 4.233561646075e1_${k2}$ , 9.366874681600e5_${k2}$ ]
114114 #:endif
115115
116116 do i = 1, n
117117 call check(error, log_factorial(x(i)), ans(i), "Integer kind " &
118- //"${k1}$ failed", thr = tol_dp , rel = .true.)
118+ //"${k1}$ failed", thr = tol_${k2}$ , rel = .true.)
119119
120120 end do
121121 end subroutine test_logfact_${t1[0]}$${k1}$
@@ -199,6 +199,7 @@ contains
199199
200200
201201
202+ #:set k2, t2 = REAL_KINDS[-1], REAL_TYPES[-1]
202203 subroutine test_loggamma_${t1[0]}$${k1}$(error)
203204 type(error_type), allocatable, intent(out) :: error
204205 integer, parameter :: n = 4
@@ -208,24 +209,24 @@ contains
208209 #:if k1 == "int8"
209210
210211 ${t1}$, parameter :: x(n) = [1_${k1}$, 2_${k1}$, 10_${k1}$, 47_${k1}$]
211- real(sp) , parameter :: ans(n) = [0.0 , 0.0 , 1.28018274e1 , 1.32952575e2 ]
212+ ${t2}$ , parameter :: ans(n) = [0.0_${k2}$ , 0.0_${k2}$ , 1.28018274e1_${k2}$ , 1.32952575e2_${k2}$ ]
212213
213214 #:elif k1 == "int16"
214215
215216 ${t1}$, parameter :: x(n) = [1_${k1}$, 2_${k1}$, 111_${k1}$, 541_${k1}$]
216- real(sp) , parameter :: ans(n) = [0.0 , 0.0 , 4.10322777e2 , 2.86151221e3 ]
217+ ${t2}$ , parameter :: ans(n) = [0.0_${k2}$ , 0.0_${k2}$ , 4.10322777e2_${k2}$ , 2.86151221e3_${k2}$ ]
217218
218219 #:elif k1 == "int32"
219220
220221 ${t1}$, parameter :: x(n) = [1_${k1}$, 2_${k1}$, 2021_${k1}$, &
221222 42031_${k1}$]
222- real(sp) , parameter :: ans(n) = [0.0 , 0.0 , 1.33586470e4 , 4.05433461e5 ]
223+ ${t2}$ , parameter :: ans(n) = [0.0_${k2}$ , 0.0_${k2}$ , 1.33586470e4_${k2}$ , 4.05433461e5_${k2}$ ]
223224
224225 #:elif k1 == "int64"
225226
226227 ${t1}$, parameter :: x(n) = [1_${k1}$, 2_${k1}$, 2021_${k1}$, &
227228 42031_${k1}$]
228- real(sp) , parameter :: ans(n) = [0.0 , 0.0 , 1.33586470e4 , 4.05433461e5 ]
229+ ${t2}$ , parameter :: ans(n) = [0.0_${k2}$ , 0.0_${k2}$ , 1.33586470e4_${k2}$ , 4.05433461e5_${k2}$ ]
229230
230231 #:elif t1[0] == "c"
231232
@@ -247,7 +248,7 @@ contains
247248 do i = 1, n
248249
249250 call check(error, log_gamma(x(i)), ans(i), "Integer kind ${k1}$ " &
250- //"failed", thr = tol_sp , rel = .true.)
251+ //"failed", thr = tol_${k2}$ , rel = .true.)
251252
252253 end do
253254
0 commit comments