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?
Jason