]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/tr1/test/test_cmath.cpp
add subtree-ish sources for 12.0.3
[ceph.git] / ceph / src / boost / libs / tr1 / test / test_cmath.cpp
1 // (C) Copyright John Maddock 2008.
2 // Use, modification and distribution are subject to the
3 // Boost Software License, Version 1.0. (See accompanying file
4 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
5
6 // These are the headers included by the Boost.TR1 implementation,
7 // by including these directly we probe for problems with cyclic
8 // dependencies when the TR1 headers are in the include search path.
9
10 #ifdef TEST_STD_HEADERS
11 #include <cmath>
12 #else
13 #include <boost/tr1/cmath.hpp>
14 #endif
15
16 #include "verify_return.hpp"
17
18 int main(int argc, const char* [])
19 {
20 if(argc > 500)
21 {
22 float f = 0;
23 double d = 0;
24 long double ld = 0;
25 unsigned ui = 0;
26 int i = 0;
27 long int li = 0;
28 bool b = false;
29 const char* nan_str = "";
30 #ifdef BOOST_HAS_LONG_LONG
31 long long lli = 0;
32 #endif
33 verify_return_type((std::tr1::acosh)(d), d);
34 verify_return_type((std::tr1::acosh)(f), f);
35 verify_return_type((std::tr1::acosh)(ld), ld);
36 verify_return_type((std::tr1::acoshf)(f), f);
37 verify_return_type((std::tr1::acoshl)(ld), ld);
38 verify_return_type((std::tr1::asinh)(d), d);
39 verify_return_type((std::tr1::asinh)(f), f);
40 verify_return_type((std::tr1::asinh)(ld), ld);
41 verify_return_type((std::tr1::asinhf)(f), f);
42 verify_return_type((std::tr1::asinhl)(ld), ld);
43 verify_return_type((std::tr1::atanh)(d), d);
44 verify_return_type((std::tr1::atanh)(f), f);
45 verify_return_type((std::tr1::atanh)(ld), ld);
46 verify_return_type((std::tr1::atanhf)(f), f);
47 verify_return_type((std::tr1::atanhl)(ld), ld);
48 verify_return_type((std::tr1::cbrt)(d), d);
49 verify_return_type((std::tr1::cbrt)(f), f);
50 verify_return_type((std::tr1::cbrt)(ld), ld);
51 verify_return_type((std::tr1::cbrtf)(f), f);
52 verify_return_type((std::tr1::cbrtl)(ld), ld);
53 verify_return_type((std::tr1::copysign)(d, d), d);
54 verify_return_type((std::tr1::copysign)(f, f), f);
55 verify_return_type((std::tr1::copysign)(ld, ld), ld);
56 verify_return_type((std::tr1::copysignf)(f, f), f);
57 verify_return_type((std::tr1::copysignl)(ld, ld), ld);
58 verify_return_type((std::tr1::erf)(d), d);
59 verify_return_type((std::tr1::erf)(f), f);
60 verify_return_type((std::tr1::erf)(ld), ld);
61 verify_return_type((std::tr1::erff)(f), f);
62 verify_return_type((std::tr1::erfl)(ld), ld);
63 verify_return_type((std::tr1::erfc)(d), d);
64 verify_return_type((std::tr1::erfc)(f), f);
65 verify_return_type((std::tr1::erfc)(ld), ld);
66 verify_return_type((std::tr1::erfcf)(f), f);
67 verify_return_type((std::tr1::erfcl)(ld), ld);
68 #if 0
69 verify_return_type((std::tr1::exp2)(d), d);
70 verify_return_type((std::tr1::exp2)(f), f);
71 verify_return_type((std::tr1::exp2)(ld), ld);
72 verify_return_type((std::tr1::exp2f)(f), f);
73 verify_return_type((std::tr1::exp2l)(ld), ld);
74 #endif
75 verify_return_type((std::tr1::expm1)(d), d);
76 verify_return_type((std::tr1::expm1)(f), f);
77 verify_return_type((std::tr1::expm1)(ld), ld);
78 verify_return_type((std::tr1::expm1f)(f), f);
79 verify_return_type((std::tr1::expm1l)(ld), ld);
80 #if 0
81 verify_return_type((std::tr1::fdim)(d, d), d);
82 verify_return_type((std::tr1::fdim)(f, f), f);
83 verify_return_type((std::tr1::fdim)(ld, ld), ld);
84 verify_return_type((std::tr1::fdimf)(f, f), f);
85 verify_return_type((std::tr1::fdiml)(ld, ld), ld);
86 verify_return_type((std::tr1::fma)(d, d, d), d);
87 verify_return_type((std::tr1::fma)(f, f, f), f);
88 verify_return_type((std::tr1::fma)(ld, ld, ld), ld);
89 verify_return_type((std::tr1::fmaf)(f, f, f), f);
90 verify_return_type((std::tr1::fmal)(ld, ld, ld), ld);
91 #endif
92 verify_return_type((std::tr1::fmax)(d, d), d);
93 verify_return_type((std::tr1::fmax)(f, f), f);
94 verify_return_type((std::tr1::fmax)(ld, ld), ld);
95 verify_return_type((std::tr1::fmaxf)(f, f), f);
96 verify_return_type((std::tr1::fmaxl)(ld, ld), ld);
97 verify_return_type((std::tr1::fmin)(d, d), d);
98 verify_return_type((std::tr1::fmin)(f, f), f);
99 verify_return_type((std::tr1::fmin)(ld, ld), ld);
100 verify_return_type((std::tr1::fminf)(f, f), f);
101 verify_return_type((std::tr1::fminl)(ld, ld), ld);
102 verify_return_type((std::tr1::hypot)(d, d), d);
103 verify_return_type((std::tr1::hypot)(f, f), f);
104 verify_return_type((std::tr1::hypot)(ld, ld), ld);
105 verify_return_type((std::tr1::hypotf)(f, f), f);
106 verify_return_type((std::tr1::hypotl)(ld, ld), ld);
107 #if 0
108 verify_return_type((std::tr1::ilogb)(d), d);
109 verify_return_type((std::tr1::ilogb)(f), f);
110 verify_return_type((std::tr1::ilogb)(ld), ld);
111 verify_return_type((std::tr1::ilogbf)(f), f);
112 verify_return_type((std::tr1::ilogbl)(ld), ld);
113 #endif
114 verify_return_type((std::tr1::lgamma)(d), d);
115 verify_return_type((std::tr1::lgamma)(f), f);
116 verify_return_type((std::tr1::lgamma)(ld), ld);
117 verify_return_type((std::tr1::lgammaf)(f), f);
118 verify_return_type((std::tr1::lgammal)(ld), ld);
119 #if 0
120 verify_return_type((std::tr1::llrint)(d), d);
121 verify_return_type((std::tr1::llrint)(f), f);
122 verify_return_type((std::tr1::llrint)(ld), ld);
123 verify_return_type((std::tr1::llrintf)(f), f);
124 verify_return_type((std::tr1::llrintl)(ld), ld);
125 #endif
126 #ifdef BOOST_HAS_LONG_LONG
127 verify_return_type((std::tr1::llround)(d), lli);
128 verify_return_type((std::tr1::llround)(f), lli);
129 verify_return_type((std::tr1::llround)(ld), lli);
130 verify_return_type((std::tr1::llroundf)(f), lli);
131 verify_return_type((std::tr1::llroundl)(ld), lli);
132 #endif
133 verify_return_type((std::tr1::log1p)(d), d);
134 verify_return_type((std::tr1::log1p)(f), f);
135 verify_return_type((std::tr1::log1p)(ld), ld);
136 verify_return_type((std::tr1::log1pf)(f), f);
137 verify_return_type((std::tr1::log1pl)(ld), ld);
138 #if 0
139 verify_return_type((std::tr1::log2)(d), d);
140 verify_return_type((std::tr1::log2)(f), f);
141 verify_return_type((std::tr1::log2)(ld), ld);
142 verify_return_type((std::tr1::log2f)(f), f);
143 verify_return_type((std::tr1::log2l)(ld), ld);
144 verify_return_type((std::tr1::logb)(d), d);
145 verify_return_type((std::tr1::logb)(f), f);
146 verify_return_type((std::tr1::logb)(ld), ld);
147 verify_return_type((std::tr1::logbf)(f), f);
148 verify_return_type((std::tr1::logbl)(ld), ld);
149 verify_return_type((std::tr1::lrint)(d), d);
150 verify_return_type((std::tr1::lrint)(f), f);
151 verify_return_type((std::tr1::lrint)(ld), ld);
152 verify_return_type((std::tr1::lrintf)(f), f);
153 verify_return_type((std::tr1::lrintl)(ld), ld);
154 #endif
155 verify_return_type((std::tr1::lround)(d), li);
156 verify_return_type((std::tr1::lround)(f), li);
157 verify_return_type((std::tr1::lround)(ld), li);
158 verify_return_type((std::tr1::lroundf)(f), li);
159 verify_return_type((std::tr1::lroundl)(ld), li);
160 #if 0
161 verify_return_type((std::tr1::nan)(nan_str), d);
162 verify_return_type((std::tr1::nanf)(nan_str), f);
163 verify_return_type((std::tr1::nanl)(nan_str), ld);
164 verify_return_type((std::tr1::nearbyint)(d), d);
165 verify_return_type((std::tr1::nearbyint)(f), f);
166 verify_return_type((std::tr1::nearbyint)(ld), ld);
167 verify_return_type((std::tr1::nearbyintf)(f), f);
168 verify_return_type((std::tr1::nearbyintl)(ld), ld);
169 #endif
170 verify_return_type((std::tr1::nextafter)(d, d), d);
171 verify_return_type((std::tr1::nextafter)(f, f), f);
172 verify_return_type((std::tr1::nextafter)(ld, ld), ld);
173 verify_return_type((std::tr1::nextafterf)(f, f), f);
174 verify_return_type((std::tr1::nextafterl)(ld, ld), ld);
175 verify_return_type((std::tr1::nexttoward)(d, d), d);
176 verify_return_type((std::tr1::nexttoward)(f, f), f);
177 verify_return_type((std::tr1::nexttoward)(ld, ld), ld);
178 verify_return_type((std::tr1::nexttoward)(f, ld), ld);
179 verify_return_type((std::tr1::nexttoward)(f, d), d);
180 verify_return_type((std::tr1::nexttowardf)(f, ld), f);
181 verify_return_type((std::tr1::nexttowardl)(ld, ld), ld);
182 #if 0
183 verify_return_type((std::tr1::remainder)(d, d), d);
184 verify_return_type((std::tr1::remainder)(f, f), f);
185 verify_return_type((std::tr1::remainder)(ld, ld), ld);
186 verify_return_type((std::tr1::remainderf)(f, f), f);
187 verify_return_type((std::tr1::remainderl)(ld, ld), ld);
188 verify_return_type((std::tr1::remquo)(d, d, &i), d);
189 verify_return_type((std::tr1::remquo)(f, f, &i), f);
190 verify_return_type((std::tr1::remquo)(ld, ld, &i), ld);
191 verify_return_type((std::tr1::remquof)(f, f, &i), f);
192 verify_return_type((std::tr1::remquol)(ld, ld, &i), ld);
193 verify_return_type((std::tr1::rint)(d), d);
194 verify_return_type((std::tr1::rint)(f), f);
195 verify_return_type((std::tr1::rint)(ld), ld);
196 verify_return_type((std::tr1::rintf)(f), f);
197 verify_return_type((std::tr1::rintl)(ld), ld);
198 #endif
199 verify_return_type((std::tr1::round)(d), d);
200 verify_return_type((std::tr1::round)(f), f);
201 verify_return_type((std::tr1::round)(ld), ld);
202 verify_return_type((std::tr1::roundf)(f), f);
203 verify_return_type((std::tr1::roundl)(ld), ld);
204 #if 0
205 verify_return_type((std::tr1::scalbln)(d, li), d);
206 verify_return_type((std::tr1::scalbln)(f, li), f);
207 verify_return_type((std::tr1::scalbln)(ld, li), ld);
208 verify_return_type((std::tr1::scalblnf)(f, li), f);
209 verify_return_type((std::tr1::scalblnl)(ld, li), ld);
210 verify_return_type((std::tr1::scalbn)(d, i), d);
211 verify_return_type((std::tr1::scalbn)(f, i), f);
212 verify_return_type((std::tr1::scalbn)(ld, i), ld);
213 verify_return_type((std::tr1::scalbnf)(f, i), f);
214 verify_return_type((std::tr1::scalbnl)(ld, i), ld);
215 #endif
216 verify_return_type((std::tr1::tgamma)(d), d);
217 verify_return_type((std::tr1::tgamma)(f), f);
218 verify_return_type((std::tr1::tgamma)(ld), ld);
219 verify_return_type((std::tr1::tgammaf)(f), f);
220 verify_return_type((std::tr1::tgammal)(ld), ld);
221 verify_return_type((std::tr1::trunc)(d), d);
222 verify_return_type((std::tr1::trunc)(f), f);
223 verify_return_type((std::tr1::trunc)(ld), ld);
224 verify_return_type((std::tr1::truncf)(f), f);
225 verify_return_type((std::tr1::truncl)(ld), ld);
226 verify_return_type((std::tr1::signbit)(d), b);
227 verify_return_type((std::tr1::signbit)(f), b);
228 verify_return_type((std::tr1::signbit)(ld), b);
229 verify_return_type((std::tr1::fpclassify)(d), i);
230 verify_return_type((std::tr1::fpclassify)(f), i);
231 verify_return_type((std::tr1::fpclassify)(ld), i);
232 verify_return_type((std::tr1::isfinite)(d), b);
233 verify_return_type((std::tr1::isfinite)(f), b);
234 verify_return_type((std::tr1::isfinite)(ld), b);
235 verify_return_type((std::tr1::isinf)(d), b);
236 verify_return_type((std::tr1::isinf)(f), b);
237 verify_return_type((std::tr1::isinf)(ld), b);
238 verify_return_type((std::tr1::isnan)(d), b);
239 verify_return_type((std::tr1::isnan)(f), b);
240 verify_return_type((std::tr1::isnan)(ld), b);
241 verify_return_type((std::tr1::isnormal)(d), b);
242 verify_return_type((std::tr1::isnormal)(f), b);
243 verify_return_type((std::tr1::isnormal)(ld), b);
244 #if 0
245 verify_return_type((std::tr1::isgreater)(d, d), b);
246 verify_return_type((std::tr1::isgreater)(f, f), b);
247 verify_return_type((std::tr1::isgreater)(ld, ld), b);
248 verify_return_type((std::tr1::isgreaterequal)(d, d), b);
249 verify_return_type((std::tr1::isgreaterequal)(f, f), b);
250 verify_return_type((std::tr1::isgreaterequal)(ld, ld), b);
251 verify_return_type((std::tr1::isless)(d, d), b);
252 verify_return_type((std::tr1::isless)(f, f), b);
253 verify_return_type((std::tr1::isless)(ld, ld), b);
254 verify_return_type((std::tr1::islessequal)(d, d), b);
255 verify_return_type((std::tr1::islessequal)(f, f), b);
256 verify_return_type((std::tr1::islessequal)(ld, ld), b);
257 verify_return_type((std::tr1::islessgreater)(d, d), b);
258 verify_return_type((std::tr1::islessgreater)(f, f), b);
259 verify_return_type((std::tr1::islessgreater)(ld, ld), b);
260 verify_return_type((std::tr1::isunordered)(d, d), b);
261 verify_return_type((std::tr1::isunordered)(f, f), b);
262 verify_return_type((std::tr1::isunordered)(ld, ld), b);
263 #endif
264
265 // [5.2.1.1] associated Laguerre polynomials:
266 verify_return_type((std::tr1::assoc_laguerre)(ui, ui, d), d);
267 verify_return_type((std::tr1::assoc_laguerre)(ui, ui, f), f);
268 verify_return_type((std::tr1::assoc_laguerre)(ui, ui, ld), ld);
269 verify_return_type((std::tr1::assoc_laguerref)(ui, ui, f), f);
270 verify_return_type((std::tr1::assoc_laguerrel)(ui, ui, ld), ld);
271 // [5.2.1.2] associated Legendre functions:
272 verify_return_type((std::tr1::assoc_legendre)(ui, ui, d), d);
273 verify_return_type((std::tr1::assoc_legendre)(ui, ui, f), f);
274 verify_return_type((std::tr1::assoc_legendre)(ui, ui, ld), ld);
275 verify_return_type((std::tr1::assoc_legendref)(ui, ui, f), f);
276 verify_return_type((std::tr1::assoc_legendrel)(ui, ui, ld), ld);
277 // [5.2.1.3] beta function:
278 verify_return_type((std::tr1::beta)(d, d), d);
279 verify_return_type((std::tr1::beta)(f, f), f);
280 verify_return_type((std::tr1::beta)(ld, ld), ld);
281 verify_return_type((std::tr1::betaf)(f, f), f);
282 verify_return_type((std::tr1::betal)(ld, ld), ld);
283 // [5.2.1.4] (complete) elliptic integral of the first kind:
284 verify_return_type((std::tr1::comp_ellint_1)(d), d);
285 verify_return_type((std::tr1::comp_ellint_1)(f), f);
286 verify_return_type((std::tr1::comp_ellint_1)(ld), ld);
287 verify_return_type((std::tr1::comp_ellint_1f)(f), f);
288 verify_return_type((std::tr1::comp_ellint_1l)(ld), ld);
289 // [5.2.1.5] (complete) elliptic integral of the second kind:
290 verify_return_type((std::tr1::comp_ellint_2)(d), d);
291 verify_return_type((std::tr1::comp_ellint_2)(f), f);
292 verify_return_type((std::tr1::comp_ellint_2)(ld), ld);
293 verify_return_type((std::tr1::comp_ellint_2f)(f), f);
294 verify_return_type((std::tr1::comp_ellint_2l)(ld), ld);
295 // [5.2.1.6] (complete) elliptic integral of the third kind:
296 verify_return_type((std::tr1::comp_ellint_3)(d, d), d);
297 verify_return_type((std::tr1::comp_ellint_3)(f, f), f);
298 verify_return_type((std::tr1::comp_ellint_3)(ld, ld), ld);
299 verify_return_type((std::tr1::comp_ellint_3f)(f, f), f);
300 verify_return_type((std::tr1::comp_ellint_3l)(ld, ld), ld);
301 #if 0
302 // [5.2.1.7] confluent hypergeometric functions:
303 verify_return_type((std::tr1::conf_hyperg)(d, d, d), d);
304 verify_return_type((std::tr1::conf_hyperg)(f, f, f), f);
305 verify_return_type((std::tr1::conf_hyperg)(ld, ld, ld), ld);
306 verify_return_type((std::tr1::conf_hypergf)(f, f, f), f);
307 verify_return_type((std::tr1::conf_hypergl)(ld, ld, ld), ld);
308 #endif
309 // [5.2.1.8] regular modified cylindrical Bessel functions:
310 verify_return_type((std::tr1::cyl_bessel_i)(d, d), d);
311 verify_return_type((std::tr1::cyl_bessel_i)(f, f), f);
312 verify_return_type((std::tr1::cyl_bessel_i)(ld, ld), ld);
313 verify_return_type((std::tr1::cyl_bessel_if)(f, f), f);
314 verify_return_type((std::tr1::cyl_bessel_il)(ld, ld), ld);
315 // [5.2.1.9] cylindrical Bessel functions (of the first kind):
316 verify_return_type((std::tr1::cyl_bessel_j)(d, d), d);
317 verify_return_type((std::tr1::cyl_bessel_j)(f, f), f);
318 verify_return_type((std::tr1::cyl_bessel_j)(ld, ld), ld);
319 verify_return_type((std::tr1::cyl_bessel_jf)(f, f), f);
320 verify_return_type((std::tr1::cyl_bessel_jl)(ld, ld), ld);
321 // [5.2.1.10] irregular modified cylindrical Bessel functions:
322 verify_return_type((std::tr1::cyl_bessel_k)(d, d), d);
323 verify_return_type((std::tr1::cyl_bessel_k)(f, f), f);
324 verify_return_type((std::tr1::cyl_bessel_k)(ld, ld), ld);
325 verify_return_type((std::tr1::cyl_bessel_kf)(f, f), f);
326 verify_return_type((std::tr1::cyl_bessel_kl)(ld, ld), ld);
327 // [5.2.1.11] cylindrical Neumann functions;
328 // cylindrical Bessel functions (of the second kind):
329 verify_return_type((std::tr1::cyl_neumann)(d, d), d);
330 verify_return_type((std::tr1::cyl_neumann)(f, f), f);
331 verify_return_type((std::tr1::cyl_neumann)(ld, ld), ld);
332 verify_return_type((std::tr1::cyl_neumannf)(f, f), f);
333 verify_return_type((std::tr1::cyl_neumannl)(ld, ld), ld);
334 // [5.2.1.12] (incomplete) elliptic integral of the first kind:
335 verify_return_type((std::tr1::ellint_1)(d, d), d);
336 verify_return_type((std::tr1::ellint_1)(f, f), f);
337 verify_return_type((std::tr1::ellint_1)(ld, ld), ld);
338 verify_return_type((std::tr1::ellint_1f)(f, f), f);
339 verify_return_type((std::tr1::ellint_1l)(ld, ld), ld);
340 // [5.2.1.13] (incomplete) elliptic integral of the second kind:
341 verify_return_type((std::tr1::ellint_2)(d, d), d);
342 verify_return_type((std::tr1::ellint_2)(f, f), f);
343 verify_return_type((std::tr1::ellint_2)(ld, ld), ld);
344 verify_return_type((std::tr1::ellint_2f)(f, f), f);
345 verify_return_type((std::tr1::ellint_2l)(ld, ld), ld);
346 // [5.2.1.14] (incomplete) elliptic integral of the third kind:
347 verify_return_type((std::tr1::ellint_3)(d, d, d), d);
348 verify_return_type((std::tr1::ellint_3)(f, f, f), f);
349 verify_return_type((std::tr1::ellint_3)(ld, ld, ld), ld);
350 verify_return_type((std::tr1::ellint_3f)(f, f, f), f);
351 verify_return_type((std::tr1::ellint_3l)(ld, ld, ld), ld);
352 // [5.2.1.15] exponential integral:
353 verify_return_type((std::tr1::expint)(d), d);
354 verify_return_type((std::tr1::expint)(f), f);
355 verify_return_type((std::tr1::expint)(ld), ld);
356 verify_return_type((std::tr1::expintf)(f), f);
357 verify_return_type((std::tr1::expintl)(ld), ld);
358 // [5.2.1.16] Hermite polynomials:
359 verify_return_type((std::tr1::hermite)(ui, d), d);
360 verify_return_type((std::tr1::hermite)(ui, f), f);
361 verify_return_type((std::tr1::hermite)(ui, ld), ld);
362 verify_return_type((std::tr1::hermitef)(ui, f), f);
363 verify_return_type((std::tr1::hermitel)(ui, ld), ld);
364 // [5.2.1.17] hypergeometric functions:
365 #if 0
366 verify_return_type((std::tr1::hyperg)(d, d, d, d), d);
367 verify_return_type((std::tr1::hyperg)(f, f, f, f), f);
368 verify_return_type((std::tr1::hyperg)(ld, ld, ld, ld), ld);
369 verify_return_type((std::tr1::hypergf)(f, f, f, f), f);
370 verify_return_type((std::tr1::hypergl)(ld, ld, ld, ld), ld);
371 #endif
372 // [5.2.1.18] Laguerre polynomials:
373 verify_return_type((std::tr1::laguerre)(ui, d), d);
374 verify_return_type((std::tr1::laguerre)(ui, f), f);
375 verify_return_type((std::tr1::laguerre)(ui, ld), ld);
376 verify_return_type((std::tr1::laguerref)(ui, f), f);
377 verify_return_type((std::tr1::laguerrel)(ui, ld), ld);
378 // [5.2.1.19] Legendre polynomials:
379 verify_return_type((std::tr1::legendre)(ui, d), d);
380 verify_return_type((std::tr1::legendre)(ui, f), f);
381 verify_return_type((std::tr1::legendre)(ui, ld), ld);
382 verify_return_type((std::tr1::legendref)(ui, f), f);
383 verify_return_type((std::tr1::legendrel)(ui, ld), ld);
384 // [5.2.1.20] Riemann zeta function:
385 verify_return_type((std::tr1::riemann_zeta)(d), d);
386 verify_return_type((std::tr1::riemann_zeta)(f), f);
387 verify_return_type((std::tr1::riemann_zeta)(ld), ld);
388 verify_return_type((std::tr1::riemann_zetaf)(f), f);
389 verify_return_type((std::tr1::riemann_zetal)(ld), ld);
390 // [5.2.1.21] spherical Bessel functions (of the first kind):
391 verify_return_type((std::tr1::sph_bessel)(ui, d), d);
392 verify_return_type((std::tr1::sph_bessel)(ui, f), f);
393 verify_return_type((std::tr1::sph_bessel)(ui, ld), ld);
394 verify_return_type((std::tr1::sph_besself)(ui, f), f);
395 verify_return_type((std::tr1::sph_bessell)(ui, ld), ld);
396 // [5.2.1.22] spherical associated Legendre functions:
397 verify_return_type((std::tr1::sph_legendre)(ui, ui, d), d);
398 verify_return_type((std::tr1::sph_legendre)(ui, ui, f), f);
399 verify_return_type((std::tr1::sph_legendre)(ui, ui, ld), ld);
400 verify_return_type((std::tr1::sph_legendref)(ui, ui, f), f);
401 verify_return_type((std::tr1::sph_legendrel)(ui, ui, ld), ld);
402 // [5.2.1.23] spherical Neumann functions;
403 // spherical Bessel functions (of the second kind):
404 verify_return_type((std::tr1::sph_neumann)(ui, d), d);
405 verify_return_type((std::tr1::sph_neumann)(ui, f), f);
406 verify_return_type((std::tr1::sph_neumann)(ui, ld), ld);
407 verify_return_type((std::tr1::sph_neumannf)(ui, f), f);
408 verify_return_type((std::tr1::sph_neumannl)(ui, ld), ld);
409 }
410 return 0;
411 }
412
413
414
415