https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93423
Martin Liška <marxin at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |marxin at gcc dot gnu.org --- Comment #6 from Martin Liška <marxin at gcc dot gnu.org> --- I still see the ICE on current master: $ valgrind --trace-children=yes ./xgcc -B. /home/marxin/Programming/gcc/gcc/testsuite/gfortran.dg/pr93423.f90 ... 19 | module procedure bp(s) ! { dg-error "must be in a generic module interface" } | 1 Error: MODULE PROCEDURE at (1) must be in a generic module interface /home/marxin/Programming/gcc/gcc/testsuite/gfortran.dg/pr93423.f90:20:5: 20 | end procedure bp ! { dg-error "Expecting END SUBMODULE statement" } | 1 Error: Expecting END SUBMODULE statement at (1) ==11355== Invalid read of size 1 ==11355== at 0xBE9F24: gfc_resolve_formal_arglist(gfc_symbol*) (resolve.c:309) ==11355== by 0xBED263: find_arglists(gfc_symbol*) (resolve.c:550) ==11355== by 0xD1B1D7: do_traverse_symtree(gfc_symtree*, void (*)(gfc_symtree*), void (*)(gfc_symbol*)) (symbol.c:4170) ==11355== by 0xD1B3E8: gfc_traverse_ns(gfc_namespace*, void (*)(gfc_symbol*)) (symbol.c:4195) ==11355== by 0xBED28C: resolve_formal_arglists(gfc_namespace*) (resolve.c:563) ==11355== by 0xBF4F03: resolve_contained_functions(gfc_namespace*) (resolve.c:1129) ==11355== by 0xCA1D84: resolve_types(gfc_namespace*) (resolve.c:17189) ==11355== by 0xCA2CD1: gfc_resolve(gfc_namespace*) (resolve.c:17315) ==11355== by 0xBCE864: gfc_parse_file() (parse.c:6448) ==11355== by 0xD422D0: gfc_be_parse_file() (f95-lang.c:212) ==11355== by 0x25C632F: compile_file() (toplev.c:458) ==11355== by 0x25CF248: do_compile() (toplev.c:2307) ==11355== Address 0xaa52924 is 84 bytes inside a block of size 344 free'd ==11355== at 0x96A49AB: free (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==11355== by 0xD13F0A: gfc_free_symbol(gfc_symbol*) (symbol.c:3098) ==11355== by 0xD14370: gfc_release_symbol(gfc_symbol*) (symbol.c:3125) ==11355== by 0xD19A34: free_sym_tree(gfc_symtree*) (symbol.c:3902) ==11355== by 0xD1A37E: gfc_free_namespace(gfc_namespace*) (symbol.c:4041) ==11355== by 0xD141E9: gfc_release_symbol(gfc_symbol*) (symbol.c:3117) ==11355== by 0xD19A34: free_sym_tree(gfc_symtree*) (symbol.c:3902) ==11355== by 0xD1A37E: gfc_free_namespace(gfc_namespace*) (symbol.c:4041) ==11355== by 0xBCAA2B: parse_contained(int) (parse.c:5799) ==11355== by 0xBCC76F: parse_module() (parse.c:6126) ==11355== by 0xBCE790: gfc_parse_file() (parse.c:6429) ==11355== by 0xD422D0: gfc_be_parse_file() (f95-lang.c:212) ==11355== Block was alloc'd at ==11355== at 0x96A5B65: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==11355== by 0x50E323A: xcalloc (xmalloc.c:162) ==11355== by 0xD1439C: gfc_new_symbol(char const*, gfc_namespace*) (symbol.c:3136) ==11355== by 0xB5484B: load_needed(pointer_info*) (module.c:5035) ==11355== by 0xB5447C: load_needed(pointer_info*) (module.c:5004) ==11355== by 0xB5447C: load_needed(pointer_info*) (module.c:5004) ==11355== by 0xB54427: load_needed(pointer_info*) (module.c:5003) ==11355== by 0xB5447C: load_needed(pointer_info*) (module.c:5004) ==11355== by 0xB57A23: read_module() (module.c:5489) ==11355== by 0xB67008: gfc_use_module(gfc_use_list*) (module.c:7198) ==11355== by 0xB680A6: gfc_use_modules() (module.c:7322) ==11355== by 0xBB1C1C: use_modules() (parse.c:114)