On 04/10/2012 03:49 PM, Dodji Seketeli wrote:
Apparently, quite some places in the compiler (like the C/C++
preprocessor, the debug info machinery) expect expand_location to
resolve to locations that are in the main source file, even if the
token at stake comes from a macro that was defined in a header
somewhere. Turning on -ftrack-macro-expansion by default was
triggering a lot of failures (not necessarily related to diagnostics)
because expand_location resolves to spelling locations instead.
Can you elaborate on these failures? For debug info I would think that
the spelling location would be useful information, though I suppose
without any way to "unwind" to the expansion context it could be a bit
confusing. What is the problem for the preprocessor?