>> Even if you do not use line-map.o, the middle-end does, so you still >> have the duplication. > > Right, this is the only part that is indeed shared and for which Ada requires > libcpp.
There are exactly 6 uses of linemap functions in libcpp. They could be replaced with a handful of function pointers, moving line-map.c to gcc. There are 2 more uses in makedepend.c, which could define its own dummy functions because it does not care about locations at all. Paolo