https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68473
--- Comment #4 from David Malcolm <dmalcolm at gcc dot gnu.org> --- No, I was wrong again. The locus and start of the range are here: (gdb) call inform(line_table->location_adhoc_data_map.data[0x17].src_range.m_start, "m_start") pr68473-1.c:13:12: note: m_start TEST_EQ (fmin); /* { dg-error "x87 register return with x87 disabled" } */ ^ pr68473-1.c:6:13: note: in definition of macro ‘TEST_EQ’ if ((long)FUNC##l(xl,xl) != (long)xl) \ ^~~~ and the finish of the range is here: (gdb) call inform(line_table->location_adhoc_data_map.data[0x17].src_range.m_finish, "m_finish") pr68473-1.c:6:26: note: m_finish if ((long)FUNC##l(xl,xl) != (long)xl) \ ^ pr68473-1.c:13:3: note: in expansion of macro ‘TEST_EQ’ TEST_EQ (fmin); /* { dg-error "x87 register return with x87 disabled" } */ ^~~~~~~ via: Breakpoint 2, error (gmsgid=0x1897930 "x87 register return with x87 disabled") at ../../src/gcc/diagnostic.c:1153 1153 rich_location richloc (line_table, input_location); (gdb) p /x input_location $2 = 0x80000017 (gdb) p line_table->location_adhoc_data_map.data[0x17] $3 = {locus = 2147442627, src_range = {m_start = 2147442627, m_finish = 2147442633}, data = 0x0} (gdb) p /x line_table->location_adhoc_data_map.data[0x17].src_range.m_start $5 = 0x7fff5fc3 (gdb) p /x line_table->location_adhoc_data_map.data[0x17].src_range.m_finish $6 = 0x7fff5fc9