Details
Description
When compiled with HP aCC 6 on HP-UX running on IPF hardware the newly added test 18.numeric.special.float.cpp fails a bunch of assertions.
One of them look like a configuration problem in the library (has_denorm) while others (min(), max(), and epsilon()) like problems in the test
$ nice gmake 18.numeric.special.float -r && ./18.numeric.special.float aCC -c -D_RWSTDDEBUG -mt -I/amd/devco/sebor/stdcxx/include \ -I/build/sebor/stdcxx-aCC-6.15-15D/include -I/amd/devco/sebor/stdcxx/tests/include \ -AA -g +d +DD64 +w +W392 +W655 +W684 +W818 +W819 +W849 +W2193 +W2236 +W2261 \ +W2340 +W2401 +W2487 +W4227 +W4229 +W4231 +W4235 +W4237 +W4249 +W4255 +W4272 \ +W4284 +W4285 +W4286 /amd/devco/sebor/stdcxx/tests/support/18.numeric.special.float.cpp "/amd/devco/sebor/stdcxx/include/limits", line 449: warning #4070-D: floating point underflow exception _RWSTD_STATIC_FUN (long double, (min), _RWSTD_LDBL_MIN) ^ aCC 18.numeric.special.float.o -o 18.numeric.special.float \ -L/build/sebor/stdcxx-aCC-6.15-15D/rwtest -lrwtest15D -AA +nostl -Wl,+s -mt +DD64 \ -L/build/sebor/stdcxx-aCC-6.15-15D/lib \ -Wl,+b/build/sebor/stdcxx-aCC-6.15-15D/lib:/build/sebor/stdcxx-aCC-6.15-15D/rwtest \ -lstd15D -lm rm 18.numeric.special.float.o # INFO (S1) (10 lines): # TEXT: # COMPILER: HP aCC, __HP_aCC = 61500, __EDG_VERSION__ = 308 # ENVIRONMENT: ia64 running hp-ux # FILE: 18.numeric.special.float.cpp # COMPILED: Jan 24 2008, 17:28:57 # COMMENT: floating specializations ############################################################ # CLAUSE: numeric.special # ASSERTION (S7) (4 lines): # TEXT: numeric_limits<float>::has_denorm == -1, got 1 # CLAUSE: numeric.special # LINE: 1366 # ASSERTION (S7) (4 lines): # TEXT: numeric_limits<double>::has_denorm == -1, got 1 # CLAUSE: numeric.special # LINE: 1366 # ASSERTION (S7) (4 lines): # TEXT: numeric_limits<long double>::min() == 3.3621e-4932, got 3.3621e-4932 # CLAUSE: numeric.special # LINE: 1253 # ASSERTION (S7) (4 lines): # TEXT: numeric_limits<long double>::max() == 1.18973e+4932, got 1.18973e+4932 # CLAUSE: numeric.special # LINE: 1254 # ASSERTION (S7) (4 lines): # TEXT: numeric_limits<long double>::epsilon() == 1.92593e-34, got 1.0842e-19 # CLAUSE: numeric.special # LINE: 1262 # ASSERTION (S7) (4 lines): # TEXT: numeric_limits<long double>::has_denorm == -1, got 1 # CLAUSE: numeric.special # LINE: 1366 # +-----------------------+----------+----------+----------+ # | DIAGNOSTIC | ACTIVE | TOTAL | INACTIVE | # +-----------------------+----------+----------+----------+ # | (S1) INFO | 1 | 1 | 0% | # | (S5) WARNING | 0 | 3 | 100% | # | (S7) ASSERTION | 6 | 134 | 95% | # +-----------------------+----------+----------+----------+