2008/8/13 Tom Tromey <tromey@redhat.com>:
Failing implementation of the full dream perhaps we can keep just two
locations -- one for the start of the top-level macro expansion and
one for the original location of the token. This information is
already available to libcpp users -- just not really inside libcpp
itself. This is a bizarre consequence of a hack needed to get mapped
locations working well enough to enable.
I think that two locations would be enough for 99% of our purposes.
AFAIK, that is what clang does (Chris?). They encode two locations per
location cookie.