https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79061
--- Comment #10 from Maxim Ostapenko <m.ostapenko at samsung dot com> --- Yeah, but it seems that lto doesn't propagate source location either: /* Output info about new location into bitpack BP. After outputting bitpack, lto_output_location_data has to be done to output actual data. */ void lto_output_location (struct output_block *ob, struct bitpack_d *bp, location_t loc) { expanded_location xloc; loc = LOCATION_LOCUS (loc); bp_pack_int_in_range (bp, 0, RESERVED_LOCATION_COUNT, loc < RESERVED_LOCATION_COUNT ? loc : RESERVED_LOCATION_COUNT); if (loc < RESERVED_LOCATION_COUNT) return; [...] } where RESERVED_LOCATION_COUNT == 2. Or maybe I missed something? We can probably teach it to propagate source location but is it OK for current stage?