[Bug fortran/33759] Unequal character lengths in MERGE intrinsic not detected at run time

dominiq at lps dot ens dot fr gcc-bugzilla@gcc.gnu.org
Thu Oct 25 09:49:00 GMT 2007



------- Comment #6 from dominiq at lps dot ens dot fr  2007-10-25 09:48 -------
> and survives "dg.exp=gfortran/transfer*".

Let me just point out that gfortran.dg/transfer_simplify_4.f90 fails
with any optimization starting at -O1 due to the failure of the reduced test:

! { dg-do run }
! { dg-options "-O0" }
! Tests that the in-memory representation of a transferred variable
! propagates properly.
!
  implicit none

  integer, parameter :: ip1 = 42
  logical, parameter :: ap1 = transfer(ip1, .true.)
  integer, parameter :: ip2 = transfer(ap1, 0)

  logical :: a
  integer :: i

  i = ip1
  a = transfer(i, .true.)
  i = transfer(a, 0)
  print *, i, ip1
  if (i .ne. ip1) call abort ()

end

[karma] f90/bug% gfc -O1 transfer_simplify_4_red.f90
[karma] f90/bug% a.out
           0          42
Abort


-- 


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



More information about the Gcc-bugs mailing list