At revision 131629 (trunk), the following code

type a_t
  sequence
  integer i
end type a_t

block data bd
  common c
end block data bd

common /a_t/ c
end

gives

1234567.f90:6.13:

block data bd
            1
Error: Unexpected BLOCK DATA statement at (1)
1234567.f90:7.10:

  common c
         1
Error: Unexpected COMMON statement at (1)
1234567.f90:8.3:

end block data bd
  1
Error: Expecting END PROGRAM statement at (1)
1234567.f90:10.14:

common /a_t/ c
             1
Error: Unexpected COMMON statement at (1)
f951: internal compiler error: Segmentation fault

If I have identical copies named 1234567890a.f90 and 1234567890ab.f90, I have
the following behavior:

"gfc 1234567890a.f90" gives only the errors, but
"gfc -m64 gfc 1234567890a.f90" gives the errors + the ICE,
as well as "gfc 1234567890a.f90 -o tmp.o" , and
"gfc 1234567890ab.f90" with or without "-o tmp.o".

I have a similar behavior on powerpc-apple-darwin9.

The problem appeared between 'GNU Fortran (GCC) 4.3.0 20080115' (rev. 131542)
and '4.3.0 20080116' (rev. 131572). I don't see the problem on
x86_64-unknown-linux-gnu rev. 131592 (Tobias Burnus' binaries).


-- 
           Summary: [4.3 Regression] ICE on invalid depending of the length
                    of the source name
           Product: gcc
           Version: 4.3.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: dominiq at lps dot ens dot fr
 GCC build triplet: i686-apple-darwin9
  GCC host triplet: i686-apple-darwin9
GCC target triplet: i686-apple-darwin9


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

Reply via email to