[ 
https://issues.apache.org/jira/browse/STDCXX-708?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12584263#action_12584263
 ] 

Martin Sebor commented on STDCXX-708:
-------------------------------------

I'm having a hard time reading your comment on the issue because of Jira 
formatting (use the {{\{noformat\}}} tag to disable it).

The multiline preprocessor conditional that I copied from the {{_config.h}} 
header in my comment above is what I think should be used in {{float_defs.h}} 
to enable the macro definitions just for the vanilla EDG eccp front end. We 
don't want the macros enabled for any other compiler, regardless of whether it 
uses the EDG front end or not.

I think you're right that the conditional on line 67 should read {{#if defined 
(\_\_GNUC__) && \_\_GNUC\_\_ < 4}} in case the EDG eccp front end is being used 
with some compiler other than gcc for a back end (e.g., Sun C on Solaris or 
MSVC on Windows).

> [HP aCC 6.15/HP-UX/IPF] 18.numeric.special.float fails assertions
> -----------------------------------------------------------------
>
>                 Key: STDCXX-708
>                 URL: https://issues.apache.org/jira/browse/STDCXX-708
>             Project: C++ Standard Library
>          Issue Type: Bug
>          Components: Tests
>    Affects Versions: trunk
>         Environment: {noformat}
> $ uname -srm && aCC -V
> HP-UX B.11.31 ia64
> aCC: HP C/aC++ B3910B A.06.15 [May 16 2007]
> {noformat}
>            Reporter: Martin Sebor
>            Assignee: Eric Lemings
>             Fix For: 4.2.1
>
>   Original Estimate: 4h
>          Time Spent: 6h
>  Remaining Estimate: 0h
>
> When compiled with HP aCC 6 on HP-UX running on IPF hardware the newly added 
> test 
> [18.numeric.special.float.cpp|http://svn.apache.org/viewvc/stdcxx/trunk/tests/support/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
> {noformat}
> $ 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% |
> # +-----------------------+----------+----------+----------+
> {noformat}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to