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

Martin Liška <marxin at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|                            |2020-07-30
     Ever confirmed|0                           |1
                 CC|                            |anlauf at gcc dot gnu.org,
                   |                            |marxin at gcc dot gnu.org
             Status|UNCONFIRMED                 |NEW

--- Comment #1 from Martin Liška <marxin at gcc dot gnu.org> ---
Confirmed, one can see it in valgrind as well:

==1018== Invalid read of size 1
==1018==    at 0x7F10BB: gfc_find_derived_vtab(gfc_symbol*) (class.c:2269)
==1018==    by 0x8484F3: gfc_match_assignment() (match.c:1393)
==1018==    by 0x86F742: match_word (parse.c:65)
==1018==    by 0x86F742: decode_statement() (parse.c:361)
==1018==    by 0x874C14: next_free (parse.c:1315)
==1018==    by 0x874C14: next_statement() (parse.c:1547)
==1018==    by 0x87675C: parse_spec(gfc_statement) (parse.c:3962)
==1018==    by 0x87949C: parse_progunit(gfc_statement) (parse.c:5892)
==1018==    by 0x87AB80: gfc_parse_file() (parse.c:6433)
==1018==    by 0x8CC54F: gfc_be_parse_file() (f95-lang.c:212)
==1018==    by 0xE4C123: compile_file() (toplev.c:458)
==1018==    by 0x7D2D91: do_compile (toplev.c:2327)
==1018==    by 0x7D2D91: toplev::main(int, char**) (toplev.c:2466)
==1018==    by 0x7D6B5E: main (main.c:39)
==1018==  Address 0x51264ae is 18 bytes before a block of size 264 free'd
==1018==    at 0x48399AB: free (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==1018==    by 0x7DE7EF: gfc_match_array_spec(gfc_array_spec**, bool, bool)
(array.c:802)
==1018==    by 0x803396: variable_decl (decl.c:2520)
==1018==    by 0x803396: gfc_match_data_decl() (decl.c:6200)
==1018==    by 0x86F88D: match_word (parse.c:65)
==1018==    by 0x86F88D: decode_statement() (parse.c:376)
==1018==    by 0x874C14: next_free (parse.c:1315)
==1018==    by 0x874C14: next_statement() (parse.c:1547)
==1018==    by 0x876CC4: parse_derived (parse.c:3382)
==1018==    by 0x876CC4: parse_spec(gfc_statement) (parse.c:3923)
==1018==    by 0x87949C: parse_progunit(gfc_statement) (parse.c:5892)
==1018==    by 0x87AB80: gfc_parse_file() (parse.c:6433)
==1018==    by 0x8CC54F: gfc_be_parse_file() (f95-lang.c:212)
==1018==    by 0xE4C123: compile_file() (toplev.c:458)
==1018==    by 0x7D2D91: do_compile (toplev.c:2327)
==1018==    by 0x7D2D91: toplev::main(int, char**) (toplev.c:2466)
==1018==    by 0x7D6B5E: main (main.c:39)

Reply via email to