[Bug preprocessor/69650] [6 Regression] ICE in linemap_line_start, at libcpp/line-map.c:803

rogero at howzatt dot demon.co.uk gcc-bugzilla@gcc.gnu.org
Mon Apr 11 11:55:00 GMT 2016


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

--- Comment #55 from Roger Orr <rogero at howzatt dot demon.co.uk> ---
Note - I should have added that I am not at all sure the fix above is
*correct*, simply that it prevents accessing the freed entry.

I don't know enough about how the code works to know whether the value obtained
by re-loading via:

maps = LINEMAPS_LAST_ORDINARY_MAP (pfile->line_table);

is reading the the value that _actually_ needs to be verified in the subsequent
code: the logical entry referred to by "LINEMAPS_LAST_ORDINARY_MAP" might have
changed from the one obtained at the start of the function.


More information about the Gcc-bugs mailing list