That's always been the case,
At least in 4.4, 4.5, and 4.6, as I see, libgcc functions are assumed to be cdecl even with -mrtd.
and easily fixable with the switch I mentioned which disables libgcc built-in functions (which shouldn't be used anyway).
I don't know any GCC switch which disables calls to libgcc functions. These are used, for example, to implement long long integer division (happens in classpnp, and it's compiled with -mrtd).
-fno-builtin, it disables built-in functions such as cos or strlen.
For exported functions, I think MS always uses explicit convention in their headers and sample source, so it shouldn't be a problem.
But now with -mrtd, the suffix is not added even to functions explicitly declared as stdcall.