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)