You'd have to consider the case of entirely unrelated makefiles
(outside of the gcc tree) potentially having to deal with this as well,
and putting into generic makefiles dependencies like on the compiler's
(not the driver's) filename seems rather ugly and non-portable. As an
example, consider I rebuilt a version of gcc with a fix I'm testing and
then want to re-build the single source file in a larger project where
the problem I'm trying to fix was found. The logical thing is to either
touch the source file or delete the object file, but it's completely
unintuitive (and a compiler implementation detail) to also have to
delete the precompiled header(s), the more that after that test I'd
potentially have to delete the precompiled headers again in order to be
able to build that project with the 'normal' compiler again.