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.