Agree with @fox, but additionally there are platform dependent behaviour, and undefined behaviour (GCC tried to define these where it can). These may differ by platform OS and hardware. However Gcc will try to keep things consistent (where it can).
An example of differences, will be the size of the long int and size_t data types may be 32 bit or 64 bit. (on other compilers them may also be 8 bit or 16 bit).