This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug fortran/37744] ICE-on-invalid with ISO_C_BINDING and TYPEs



------- Comment #2 from dfranke at gcc dot gnu dot org  2008-12-09 19:12 -------
Confirmed. As is, the testcase hangs for me and does not ICE. However, valgrind
shows

==3159==                                                                        
pr37744.f90:22.19:                                                              

  foo%flags(trouble) = .FALSE.
                  1           
Error: Symbol 'trouble' at (1) has no IMPLICIT type
==3159== Invalid read of size 4                    
==3159==    at 0x80C88BB: gfc_delete_symtree (symbol.c:2269)
==3159==    by 0x80C898C: gfc_undo_symbols (symbol.c:2723)  
==3159==    by 0x80A35E4: decode_statement (parse.c:267)    
==3159==    by 0x80A46C4: next_statement (parse.c:661)      
==3159==    by 0x80A6DFB: gfc_parse_file (parse.c:3781)     
==3159==    by 0x80EC438: gfc_init_constants (trans-const.c:197)
==3159==    by 0x80D6CDC: gfc_be_parse_file (f95-lang.c:236)    
==3159==    by 0x83B7FC2: toplev_main (toplev.c:968)            
==3159==    by 0x40D1004: (below main) (in /lib/libc-2.6.1.so)  
==3159==  Address 0x42893e8 is 0 bytes inside a block of size 1,676 free'd
==3159==    at 0x4023F2A: free (vg_replace_malloc.c:323)                  
==3159==    by 0x80C81B5: gfc_free_namespace (symbol.c:3065)              
==3159==    by 0x80EC438: gfc_init_constants (trans-const.c:197)          
==3159==    by 0x80D6CDC: gfc_be_parse_file (f95-lang.c:236)              
==3159==    by 0x83B7FC2: toplev_main (toplev.c:968)                      
==3159==    by 0x40D1004: (below main) (in /lib/libc-2.6.1.so)

[snipped many more invalid reads/writes]

==3159==
==3159== ERROR SUMMARY: 78 errors from 19 contexts (suppressed: 7 from 1)
==3159== malloc/free: in use at exit: 212,092 bytes in 976 blocks.
==3159== malloc/free: 2,238 allocs, 1,268 frees, 522,550 bytes allocated.
==3159== For counts of detected errors, rerun with: -v
==3159== searching for pointers to 976 not-freed blocks.
==3159== checked 2,261,148 bytes.


-- 

dfranke at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |dfranke at gcc dot gnu dot
                   |                            |org
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   GCC host triplet|i686-pc-linux-gnu           |
 GCC target triplet|i686-pc-linux-gnu           |
      Known to fail|                            |4.3.2 4.4.0
   Last reconfirmed|0000-00-00 00:00:00         |2008-12-09 19:12:15
               date|                            |


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]