It turns out the issue is that g++ assumes that any header found via a '-I' path is not a system header. As such, since in my case I had <stdio.h> and it was found in -ID:\Dev\MinGW\include (since the path was defined in the 'include' directories) the g++ compiler did not consider a system header. Since I wanted to keep the '-pedantic', I removed the path from the include directories (in the compiler setup dialog), since g++ knows where to find it's own headers, everything works fine.
By default C::B auto-populates (at least for me it did) the include, lib and resource directories to 'C:\MinGW\include' or 'C:\MinGW\lib', perhaps it should not for the gcc compiler configuration, so that this issue is not experienced by other users (thereby hopefully cutting down on some false positive bug reports).
To thomas's point this is only if you specify '-pedantic', and as thomas pointed the '__MSVCRT__' was a red herring, I realized that too after thinking about it (unfortunately after I posted).