https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78746

Arseny Solokha <asolokha at gmx dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |asolokha at gmx dot com

--- Comment #17 from Arseny Solokha <asolokha at gmx dot com> ---
Just in case, w/ gcc/testsuite/gfortran.dg/class_61.f90 (as of r268503):

==20572== Invalid read of size 8
==20572==    at 0x8150A4: resolve_component(gfc_component*, gfc_symbol*)
(resolve.c:13809)
==20572==    by 0x815BB2: resolve_fl_derived0(gfc_symbol*) [clone .part.54]
(resolve.c:14258)
==20572==    by 0x8161FF: resolve_fl_derived0 (resolve.c:14357)
==20572==    by 0x8161FF: resolve_fl_derived(gfc_symbol*) (resolve.c:14387)
==20572==    by 0x812957: resolve_symbol(gfc_symbol*) (resolve.c:14761)
==20572==    by 0x83B222: do_traverse_symtree(gfc_symtree*, void
(*)(gfc_symtree*), void (*)(gfc_symbol*)) (symbol.c:4155)
==20572==    by 0x81FA55: resolve_types(gfc_namespace*) (resolve.c:16673)
==20572==    by 0x8118FE: gfc_resolve(gfc_namespace*) (resolve.c:16787)
==20572==    by 0x8036D6: resolve_all_program_units (parse.c:6073)
==20572==    by 0x8036D6: gfc_parse_file() (parse.c:6323)
==20572==    by 0x850FDE: gfc_be_parse_file() (f95-lang.c:204)
==20572==    by 0xDA085C: compile_file() (toplev.c:456)
==20572==    by 0x76966E: do_compile (toplev.c:2176)
==20572==    by 0x76966E: toplev::main(int, char**) (toplev.c:2311)
==20572==    by 0x76BADD: main (main.c:39)
==20572==  Address 0x4fafcb0 is 192 bytes inside a block of size 344 free'd
==20572==    at 0x4833FEB: free (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==20572==    by 0x841E40: gfc_restore_last_undo_checkpoint() (symbol.c:3705)
==20572==    by 0x7F9786: reject_statement() (parse.c:2576)
==20572==    by 0x7FA577: match_word (parse.c:70)
==20572==    by 0x7FA577: decode_statement() (parse.c:376)
==20572==    by 0x7FE341: next_free (parse.c:1241)
==20572==    by 0x7FE341: next_statement() (parse.c:1473)
==20572==    by 0x800194: parse_derived (parse.c:3285)
==20572==    by 0x800194: parse_spec(gfc_statement) (parse.c:3826)
==20572==    by 0x802AAF: parse_progunit(gfc_statement) (parse.c:5680)
==20572==    by 0x803671: gfc_parse_file() (parse.c:6220)
==20572==    by 0x850FDE: gfc_be_parse_file() (f95-lang.c:204)
==20572==    by 0xDA085C: compile_file() (toplev.c:456)
==20572==    by 0x76966E: do_compile (toplev.c:2176)
==20572==    by 0x76966E: toplev::main(int, char**) (toplev.c:2311)
==20572==    by 0x76BADD: main (main.c:39)
==20572==  Block was alloc'd at
==20572==    at 0x48351A6: calloc (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==20572==    by 0x1671700: xcalloc (xmalloc.c:162)
==20572==    by 0x840848: gfc_new_symbol(char const*, gfc_namespace*)
(symbol.c:3123)
==20572==    by 0x840C77: gfc_get_sym_tree(char const*, gfc_namespace*,
gfc_symtree**, bool) (symbol.c:3373)
==20572==    by 0x840EE1: gfc_get_symbol(char const*, gfc_namespace*,
gfc_symbol**) (symbol.c:3426)
==20572==    by 0x79385F: gfc_match_decl_type_spec(gfc_typespec*, int)
(decl.c:4325)
==20572==    by 0x795E51: gfc_match_data_decl() (decl.c:5934)
==20572==    by 0x7FA55B: match_word (parse.c:65)
==20572==    by 0x7FA55B: decode_statement() (parse.c:376)
==20572==    by 0x7FE341: next_free (parse.c:1241)
==20572==    by 0x7FE341: next_statement() (parse.c:1473)
==20572==    by 0x800194: parse_derived (parse.c:3285)
==20572==    by 0x800194: parse_spec(gfc_statement) (parse.c:3826)
==20572==    by 0x802AAF: parse_progunit(gfc_statement) (parse.c:5680)
==20572==    by 0x803671: gfc_parse_file() (parse.c:6220)

Reply via email to