This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/24406] EQUIVALENCE broken in 32-bit code with optimization -O2
- From: "tobi at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 1 Nov 2005 20:20:07 -0000
- Subject: [Bug fortran/24406] EQUIVALENCE broken in 32-bit code with optimization -O2
- References: <bug-24406-10567@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #6 from tobi at gcc dot gnu dot org 2005-11-01 20:20 -------
(In reply to comment #3)
> The code is illegal, and therefore gfortran can do anything
> it wants (including start WW III).
>
> (1) rteps is never defined, so it can't be reference in the IF
> statement.
>
> (2) Even if rteps was defined prior to the assignments of irt(1) and
> irt(2), rteps would become undefined via 14.7.6(1) of the standard.
>
> (3) The use of BOZ literal constants here is nonstandard although
> gfortran may permit its use in this manner (I haven't checked).
Using equivalences this way is a common extension, and we actually use this in
a number of testcases ourselves, so if we decided to start WWIII in this case,
we probably wouldn't live much longer than our testsuite runs take.
--
tobi at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |tobi at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24406