[Bug fortran/18977] LAPACK test xeigtsts segfaults with optimization

Thomas dot Koenig at online dot de gcc-bugzilla@gcc.gnu.org
Thu Jan 6 17:01:00 GMT 2005


------- Additional Comments From Thomas dot Koenig at online dot de  2005-01-06 17:01 -------
(In reply to comment #5)
> I'm no Fortran guru, but could be this related to PR 17675?

I don't think this is an alignment problem.  Apparently,
ia64-unknown-linux-gnu sets up the processor differently from
HP-UX.

Test case:

$ cat equiv.f
      integer a(5)
      double precision d1,d2
      equivalence (a(1),d1), (a(4),d2)
      call foo(d1,d2)
      print *,d1,d2
      end
      subroutine foo(d1,d2)
      double precision d1,d2
      d1 = 3.14D0
      d2 = 2.71D0
      end
$ gfortran equiv.f
$ ./a.out
   3.14000000000000        2.71000000000000
$ ifort equiv.f
fortcom: Warning: equiv.f, line 2: Alignment of variable or array is
inconsistent with its data type.   [D2]
      double precision d1,d2
--------------------------^
$ ./a.out
   3.14000000000000        2.71000000000000
$ g77 equiv.f
Can't place `d1' as directed by EQUIVALENCE due to alignment restrictions


-- 


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



More information about the Gcc-bugs mailing list