This testcase coms from SPEC CPU 2006:

[EMAIL PROTECTED] wrf-1]$ cat foo.f90
      module foo
      use bar
      implicit none
      private
      type ESMF_Clock
        type(ESMF_Time)  :: CurrTime
      end type
      interface operator (+)
        function add (x, y)
          use bar
          type(ESMF_Time) :: add
          type(ESMF_Time), intent(in) :: x
          type(ESMF_Time), intent(in) :: y
        end function add
      end interface
      contains
      subroutine ESMF_ClockAdvance(clock)
      type(ESMF_Clock), intent(inout) :: clock
      clock%CurrTime = clock%CurrTime + clock%CurrTime
      end subroutine ESMF_ClockAdvance
      end module foo
[EMAIL PROTECTED] wrf-1]$ cat bar.f90
      module bar
      implicit none
      public
      type ESMF_Time
        integer :: DD
      end type
      end module bar
[EMAIL PROTECTED] wrf-1]$ make
/export/build/gnu/gcc-last/build-x86_64-linux/gcc/gfortran
-B/export/build/gnu/gcc-last/build-x86_64-linux/gcc/  -S -o bar.s bar.f90
/export/build/gnu/gcc-last/build-x86_64-linux/gcc/gfortran
-B/export/build/gnu/gcc-last/build-x86_64-linux/gcc/  -S -o foo.s foo.f90
foo.f90: In function ‘esmf_clockadvance’:
foo.f90:17: internal compiler error: in fold_convert, at fold-const.c:2098
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
make: *** [foo.s] Error 1


-- 
           Summary: [4.2 Regression]: fold_convert fails for Fortran
                    operator
           Product: gcc
           Version: 4.2.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: hjl at lucon dot org


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

Reply via email to