This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug fortran/22304] gfortran silently changes values in equilvanence'd variables


------- Additional Comments From tkoenig at gcc dot gnu dot org  2005-07-06 11:32 -------
In this case, we forget the common block name.

>From the .t02.original:

MAIN__ ()
{
  static union
  {
    int4 o[300000];
  } equiv.0;

  equiv.0.o[8] = 1;
  mysub ();
}


mysub ()
{
  static union
  {
    int4 o[300000];
  } equiv.1;

The strange thing is that this goes away when the last equivalence
is deleted:

MAIN__ ()
{
  ibm.o[8] = 1;
  mysub ();


mysub ()
{

...

What I find also very strange is the missing closing brace in MAIN__.
This may point towards memory corruption somewhere.

$ gfortran -v
Using built-in specs.
Target: ia64-unknown-linux-gnu
Configured with: ../gcc-4.1-20050702/configure --prefix=/home/zfkts --enable-
languages=c,f95
Thread model: posix
gcc version 4.1.0 20050702 (experimental)


-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |tkoenig at gcc dot gnu dot
                   |                            |org
OtherBugsDependingO|                            |19292, 20405
              nThis|                            |
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|                            |1
      Known to fail|                            |4.1.0
   Last reconfirmed|0000-00-00 00:00:00         |2005-07-06 11:32:02
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22304


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]