gfortran.dg/transfer_array_intrinsic_2.f90 fails on hppa64-hp-hpux11.11, I
created a cut down test case and the cutdown test fails on hppa64-hp-hpux11.11
and ia64-hp-hpux11.23.  On IA64 it fails in 32 and 64 bit modes.  I think the
problem is with alignment since the program is dying on an 8 byte load of a 4
byte aligned address.  I looked at trans-intrinsic.c but was not able to
exactly identify where the bad code was coming from.  All the targets where I
get the failure require 8 byte alignment of 8 byte loads.

Test case:

   character(8) :: ch(1) = (/"lmnoPQRS"/)
   integer(8) :: ic(1)

   integer :: i = 1
   integer :: q

   q = TRANSFER(i, q)
   ic = transfer (ch, ic)
end


-- 
           Summary: transfer intrinsic does not work on strongly aligned
                    systems
           Product: gcc
           Version: 4.2.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: sje at cup dot hp dot com
  GCC host triplet: hppa64-hp-hpux11.11


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

Reply via email to