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

           Summary: Missing temporary ?
           Product: gcc
           Version: 4.6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: joost.vandevond...@pci.uzh.ch


this one seems like a missing temporary:

MODULE M1
 TYPE T1
   INTEGER, DIMENSION(:), ALLOCATABLE :: data
 END TYPE T1
CONTAINS
 SUBROUTINE S1(T,d)
   INTEGER, DIMENSION(:), POINTER :: d
   TYPE(T1), POINTER :: T
    d(1:5)=T%data(3:7)
 END SUBROUTINE
END MODULE

USE M1
TYPE(T1), POINTER :: T
INTEGER, DIMENSION(:), POINTER :: d
ALLOCATE(T)
ALLOCATE(T%data(10))
T%data=(/(i,i=1,10)/)
d=>T%data(5:9)
CALL S1(T,d)
IF (ANY(d.NE.(/3,4,5,6,7/))) CALL ABORT()
DEALLOCATE(T%data)
DEALLOCATE(T)
END

-- 
Configure bugmail: http://gcc.gnu.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

Reply via email to