On 10/20/2016 11:42 AM, john smith wrote:
We use the same cross-compiler on two Linux machines: machine A and
machine B. It produces some warnings on machine A but not on machine
B when used to compile the same file and with the same set of options
(specifically we use -Wall and -Wextra). We are absolutely sure that
it's the same compiler - it's in the same version and has the same
md5sum on both machines. However, these 2 Linux machines differ - A
is x32 Ubuntu, B is x64 bit Slackware. I checked all environment
variables on both machines and didn't find anything suspicious - no
CFLAGS, CC or something related to compilation at all. The compiler
in question behaves the same way when invoked from Makefile and when
invoked directly from the command line on both machines.
Is this possible that due to some local differences in
libc/libgcc/whatnot GCC emits warnings on machine A but not on machine
B? What else can I check to learn what's the culprit here?
I would suggest checking the contents of the pre-processed files. Most
likely you've got different headers and the difference would show up in
the preprocessed output.
Adding "-save-temps" to the compilation line will generate the
preprocessed .i files. Compare those.
jeff