This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/36912] [4.2/4.3/4.4 regression] ICE with "-frounding-math -g"
- From: "jakub at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 14 Aug 2008 08:03:02 -0000
- Subject: [Bug c++/36912] [4.2/4.3/4.4 regression] ICE with "-frounding-math -g"
- References: <bug-36912-16507@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #3 from jakub at gcc dot gnu dot org 2008-08-14 08:03 -------
I think the primary question is, do we expect -frounding-math to force this to
be evaluated at runtime or not?
If it should be evaluated at runtime, then I'd say initializer_constant_valid_p
should reject PLUS_EXPR and MINUS_EXPR with FLOAT_TYPE_P (endtype) (and maybe
also narrowing casts like (float) double) if flag_rounding_math. If it
shouldn't be evaluated at runtime, we'd need to figure out where to call
(perhaps recursively) the fold*initializer calls - that's something only the C
FE uses, but not C++.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36912