gcc should warn when the stack frame for a called varargs function is in excess of a -Wframe-larger-than=NNN bytes. Such a check could be done at each call site, to see whether the outgoing arguments alone already exhaust NNN.
Please be aware that the linux kernel uses this flag in its builds as a tool to help limit runtime stack consumption, as a safety/security matter. So it goes beyond a "nice to have".
Still present as of gcc 4.5.