[Bug fortran/45005] gfortran.dg/allocate_with_typespec.f90 failed

sgk at troutmask dot apl dot washington dot edu gcc-bugzilla@gcc.gnu.org
Tue Jul 20 23:35:00 GMT 2010



------- Comment #3 from sgk at troutmask dot apl dot washington dot edu  2010-07-20 23:35 -------
Subject: Re:  gfortran.dg/allocate_with_typespec.f90 failed

On Tue, Jul 20, 2010 at 02:41:01PM -0000, burnus at gcc dot gnu dot org wrote:
> 
> gfortran.dg/allocate_with_typespec.f90  shows on x86-64-linux (-m64):
> 
> gfortran.dg/allocate_with_typespec.f90:25:0: internal compiler error:
> Segmentation fault
> 
> ==11535== Invalid read of size 8
> ==11535==    at 0x542506: gfc_delete_symtree (symbol.c:2390)
> ==11535==    by 0x543506: gfc_undo_symbols (symbol.c:2862)
> ==11535==    by 0x5127E4: decode_statement (parse.c:272)
> ==11535==    by 0x5143C4: next_statement (parse.c:727)
> ==11535==    by 0x517EAE: gfc_parse_file (parse.c:4307)
> ==11535==    by 0x54E447: gfc_be_parse_file (f95-lang.c:236)
> ==11535==    by 0x83E279: toplev_main (toplev.c:978)
> ==11535==    by 0x6569B7C: (below main) (in /lib64/libc-2.11.2.so)
> 

The attached patch restores the order of the old match_type_spec.
It uses gfc_match(" %n ", name) to retrieve the next symbol
from the file and uses strcmp to check against intrinsics
types.  Thus, for allocate_with_typespec.f90, when name=real_type
the comparison fails, and we fall through to the matching for
a derived type by match_derived_type_spec().  I did not
write match_derived_type_spec() and have no idea how it works.
The prolific valgrind output that I see I believe is related
to match_derived_type_spec().  I've also attached the
valgrind log.


------- Comment #4 from sgk at troutmask dot apl dot washington dot edu  2010-07-20 23:35 -------
Created an attachment (id=21272)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21272&action=view)


------- Comment #5 from sgk at troutmask dot apl dot washington dot edu  2010-07-20 23:35 -------
Created an attachment (id=21273)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21273&action=view)


-- 


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



More information about the Gcc-bugs mailing list