t3g, please read this very carefully:
If you want to add something to your copy of a program licensed under the GNU
GPL, you are *not* required to redistribute it. *If* you distribute this
modified version, *then* it must be covered entirely under the GNU GPL. If
you want to keep it to yourself, the GPL is exactly the same as a permissive
license in practice.
You also need to read up on how copyright law actually works. The GPL doesn't
automatically "infect" any code that you accidentally put into it. You have
to license it under the GPL yourself; the situation you describe would at
first have no effect, because as I said, the copyleft only affects
*distribution*. But if you do distribute it, this would be simply a license
violation that needs to be corrected, and the developer can correct it either
by removing the GPL code or relicensing it under the GPL. The stuff under the
Expat License doesn't suddenly change to being under the GPL.
But also, even if code under the Expat License was relicensed under the GPL,
it's still available under the Expat License. If this weren't the case,
dual-licensing, such as what Qt was under when it became free and what Game
Editor is currently under, would not be possible.