https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65536
--- Comment #10 from Jakub Jelinek <jakub at gcc dot gnu.org> --- You could just stream another table, containing the { file, line, column } triplets, and stream location_t as indexes into this table (with 0/1 being special for UNKNOWN_LOCATION and BUILTINS_LOCATION), or as pairs { location_t, block }. Then on LTO reading, you could perhaps read the location tables from multiple source files, merge them and for each of the TUs build a hash_map mapping from the table indexes to location_t values.