https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69985
--- Comment #18 from Manuel López-Ibáñez <manu at gcc dot gnu.org> --- I think the heuristic I implemented to figure out on which map we can encode the new location does not work. The heuristic assumes that if map[0].start_location <= loc + offset < map[1].start_location, then we can encode loc+offset in map[0], however, this is not true in this case because map[0] does not seem to be able to encode anything beyond loc (any loc+offset returns 4:11). I don't really understand why this is the case: we seem to waste a lot of location numbers that do not point to anything. If there is a way to tell which map should encode a particular line,column, then we simply should use that map if there are free locations left to do so.