From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christian Joensson FOA 72 To: egcs@arnljot.lin.foa.se Subject: A problem with -ansi? Date: Sat, 04 Apr 1998 14:20:00 -0000 Message-id: <199804030900.LAA08225@arnljot.lin.foa.se> X-SW-Source: 1998-04/msg00151.html I found a problem with gcc-2.8.1 on Solaris 2.5 that is based on an old posting from Tony Lacey to news:gnu.gcc.bug , <199702171551.PAA16907@chive.shef.ac.uk>. In the posting, he gives an example code snippet, etest.c that is this one: #include #include int main(void) { double res; res = erf(0.1); printf("%f\n", res); } I'm not really sure of what's going on, but I'm afraid that someting might be working quite that well... Any comments are greatly appreciated. -- Christian Jvnsson chj@lin.foa.se Sweden's Defence Research Establishment Dep't of Communication Systems FOA 72 Compiling with gcc-2.8.1, with and without -anis, on Solaris 2.5 give these two results: gcc -v -o etest etest.c -lm Reading specs from /home/guneri/gnu-980317/lib/gcc-lib/sparc-sun-solaris2.5/2.8.1/specs gcc version 2.8.1 /home/guneri/gnu-980317/lib/gcc-lib/sparc-sun-solaris2.5/2.8.1/cpp -lang-c -v -undef -D__GNUC__=2 -D__GNUC_MINOR__=8 -Dsparc -Dsun -Dunix -D__svr4__ -D__SVR4 -D__sparc__ -D__sun__ -D__unix__ -D__svr4__ -D__SVR4 -D__sparc -D__sun -D__unix -Asystem(unix) -Asystem(svr4) -D__GCC_NEW_VARARGS__ -Acpu(sparc) -Amachine(sparc) etest.c /var/tmp/cca003SF.i GNU CPP version 2.8.1 (sparc) #include "..." search starts here: #include <...> search starts here: /home/guneri/gnu-980317/sparc-sun-solaris2.5/include /home/guneri/gnu-980317/lib/gcc-lib/sparc-sun-solaris2.5/2.8.1/include /usr/include End of search list. /home/guneri/gnu-980317/lib/gcc-lib/sparc-sun-solaris2.5/2.8.1/cc1 /var/tmp/cca003SF.i -quiet -dumpbase etest.c -version -o /var/tmp/cca003SF.s GNU C version 2.8.1 (sparc-sun-solaris2.5) compiled by GNU C version 2.8.1. /home/guneri/gnu-980317/sparc-sun-solaris2.5/bin/as -V -Qy -s -o /var/tmp/cca003SF1.o /var/tmp/cca003SF.s GNU assembler version 980303 (sparc-sun-solaris2.5), using BFD version 2.8.1.0.23 /home/guneri/gnu-980317/sparc-sun-solaris2.5/bin/ld -V -Y P,/usr/ccs/lib:/usr/lib -Qy -o etest /home/guneri/gnu-980317/lib/gcc-lib/sparc-sun-solaris2.5/2.8.1/crt1.o /home/guneri/gnu-980317/lib/gcc-lib/sparc-sun-solaris2.5/2.8.1/crti.o /usr/ccs/lib/values-Xa.o /home/guneri/gnu-980317/lib/gcc-lib/sparc-sun-solaris2.5/2.8.1/crtbegin.o -L/home/guneri/gnu-980317/lib/gcc-lib/sparc-sun-solaris2.5/2.8.1 -L/home/guneri/gnu-980317/sparc-sun-solaris2.5/lib -L/usr/ccs/bin -L/usr/ccs/lib -L/home/guneri/gnu-980317/lib /var/tmp/cca003SF1.o -lm -lgcc -lc -lgcc /home/guneri/gnu-980317/lib/gcc-lib/sparc-sun-solaris2.5/2.8.1/crtend.o /home/guneri/gnu-980317/lib/gcc-lib/sparc-sun-solaris2.5/2.8.1/crtn.o GNU ld version 2.8.2 (with BFD 2.8.1.0.23) Supported emulations: elf32_sparc ./etest 0.112463 gcc -v -ansi -o etest etest.c -lm Reading specs from /home/guneri/gnu-980317/lib/gcc-lib/sparc-sun-solaris2.5/2.8.1/specs gcc version 2.8.1 /home/guneri/gnu-980317/lib/gcc-lib/sparc-sun-solaris2.5/2.8.1/cpp -lang-c89 -v -undef -D__GNUC__=2 -D__GNUC_MINOR__=8 -trigraphs -D__STRICT_ANSI__ -D__sparc__ -D__sun__ -D__unix__ -D__svr4__ -D__SVR4 -D__sparc -D__sun -D__unix -Asystem(unix) -Asystem(svr4) -D__GCC_NEW_VARARGS__ -Acpu(sparc) -Amachine(sparc) etest.c /var/tmp/cca003SP.i GNU CPP version 2.8.1 (sparc) #include "..." search starts here: #include <...> search starts here: /home/guneri/gnu-980317/sparc-sun-solaris2.5/include /home/guneri/gnu-980317/lib/gcc-lib/sparc-sun-solaris2.5/2.8.1/include /usr/include End of search list. /home/guneri/gnu-980317/lib/gcc-lib/sparc-sun-solaris2.5/2.8.1/cc1 /var/tmp/cca003SP.i -quiet -dumpbase etest.c -ansi -ansi -version -o /var/tmp/cca003SP.s GNU C version 2.8.1 (sparc-sun-solaris2.5) compiled by GNU C version 2.8.1. /home/guneri/gnu-980317/sparc-sun-solaris2.5/bin/as -V -Qy -s -o /var/tmp/cca003SP1.o /var/tmp/cca003SP.s GNU assembler version 980303 (sparc-sun-solaris2.5), using BFD version 2.8.1.0.23 /home/guneri/gnu-980317/sparc-sun-solaris2.5/bin/ld -V -Y P,/usr/ccs/lib:/usr/lib -Qy -o etest /home/guneri/gnu-980317/lib/gcc-lib/sparc-sun-solaris2.5/2.8.1/crt1.o /home/guneri/gnu-980317/lib/gcc-lib/sparc-sun-solaris2.5/2.8.1/crti.o /usr/ccs/lib/values-Xc.o /home/guneri/gnu-980317/lib/gcc-lib/sparc-sun-solaris2.5/2.8.1/crtbegin.o -L/home/guneri/gnu-980317/lib/gcc-lib/sparc-sun-solaris2.5/2.8.1 -L/home/guneri/gnu-980317/sparc-sun-solaris2.5/lib -L/usr/ccs/bin -L/usr/ccs/lib -L/home/guneri/gnu-980317/lib /var/tmp/cca003SP1.o -lm -lgcc -lc -lgcc /home/guneri/gnu-980317/lib/gcc-lib/sparc-sun-solaris2.5/2.8.1/crtend.o /home/guneri/gnu-980317/lib/gcc-lib/sparc-sun-solaris2.5/2.8.1/crtn.o GNU ld version 2.8.2 (with BFD 2.8.1.0.23) Supported emulations: elf32_sparc ./etest 1069128089.000000 Doing the similar thing on RHL 5.0/Intel with binutils-2.8.1.0.28-2 added using egcs-980328, I get: gcc -v -o etest etest.c -lm Reading specs from /usr/local/lib/gcc-lib/i586-pc-linux-gnu/egcs-2.91.16/specs gcc version egcs-2.91.16 980328 (gcc-2.8.0 release) /usr/local/lib/gcc-lib/i586-pc-linux-gnu/egcs-2.91.16/cpp -lang-c -v -undef -D__GNUC__=2 -D__GNUC_MINOR__=91 -D__ELF__ -Dunix -Dlinux -D__ELF__ -D__unix__ -D__linux__ -D__unix -D__linux -Asystem(posix) -Di386 -Di586 -Asystem(unix) -Acpu(i386) -Amachine(i386) -D__i386__ -D__i586__ -Asystem(unix) -Acpu(i386) -Amachine(i386) etest.c /tmp/cca08141.i GNU CPP version egcs-2.91.16 980328 (gcc-2.8.0 release) (i386 Linux/ELF) #include "..." search starts here: #include <...> search starts here: /usr/local/include /usr/local/i586-pc-linux-gnu/include /usr/local/lib/gcc-lib/i586-pc-linux-gnu/egcs-2.91.16/include /usr/include End of search list. /usr/local/lib/gcc-lib/i586-pc-linux-gnu/egcs-2.91.16/cc1 /tmp/cca08141.i -quiet -dumpbase etest.c -version -o /tmp/cca08141.s GNU C version egcs-2.91.16 980328 (gcc-2.8.0 release) (i586-pc-linux-gnu) compiled by GNU C version egcs-2.91.16 980328 (gcc-2.8.0 release). as -V -Qy -o /tmp/cca081411.o /tmp/cca08141.s GNU assembler version 980331 (i586-pc-linux-gnu), using BFD version 2.8.1.0.28 /usr/local/lib/gcc-lib/i586-pc-linux-gnu/egcs-2.91.16/ld -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 -o etest /usr/lib/crt1.o /usr/lib/crti.o /usr/local/lib/gcc-lib/i586-pc-linux-gnu/egcs-2.91.16/crtbegin.o -L/usr/local/lib/gcc-lib/i586-pc-linux-gnu/egcs-2.91.16 -L/usr/local/i586-pc-linux-gnu/lib -L/usr/local/lib /tmp/cca081411.o -lm -lgcc -lc -lgcc /usr/local/lib/gcc-lib/i586-pc-linux-gnu/egcs-2.91.16/crtend.o /usr/lib/crtn.o ./etest 0.112463 gcc -v -ansi -o etest etest.c -lm Reading specs from /usr/local/lib/gcc-lib/i586-pc-linux-gnu/egcs-2.91.16/specs gcc version egcs-2.91.16 980328 (gcc-2.8.0 release) /usr/local/lib/gcc-lib/i586-pc-linux-gnu/egcs-2.91.16/cpp -lang-c89 -v -undef -D__GNUC__=2 -D__GNUC_MINOR__=91 -trigraphs -D__STRICT_ANSI__ -D__ELF__ -D__unix__ -D__linux__ -D__unix -D__linux -Asystem(posix) -Di386 -Di586 -Asystem(unix) -Acpu(i386) -Amachine(i386) -D__i386__ -D__i586__ -Asystem(unix) -Acpu(i386) -Amachine(i386) etest.c /tmp/cca08149.i GNU CPP version egcs-2.91.16 980328 (gcc-2.8.0 release) (i386 Linux/ELF) #include "..." search starts here: #include <...> search starts here: /usr/local/include /usr/local/i586-pc-linux-gnu/include /usr/local/lib/gcc-lib/i586-pc-linux-gnu/egcs-2.91.16/include /usr/include End of search list. /usr/local/lib/gcc-lib/i586-pc-linux-gnu/egcs-2.91.16/cc1 /tmp/cca08149.i -quiet -dumpbase etest.c -ansi -ansi -version -o /tmp/cca08149.s GNU C version egcs-2.91.16 980328 (gcc-2.8.0 release) (i586-pc-linux-gnu) compiled by GNU C version egcs-2.91.16 980328 (gcc-2.8.0 release). as -V -Qy -o /tmp/cca081491.o /tmp/cca08149.s GNU assembler version 980331 (i586-pc-linux-gnu), using BFD version 2.8.1.0.28 /usr/local/lib/gcc-lib/i586-pc-linux-gnu/egcs-2.91.16/ld -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 -o etest /usr/lib/crt1.o /usr/lib/crti.o /usr/local/lib/gcc-lib/i586-pc-linux-gnu/egcs-2.91.16/crtbegin.o -L/usr/local/lib/gcc-lib/i586-pc-linux-gnu/egcs-2.91.16 -L/usr/local/i586-pc-linux-gnu/lib -L/usr/local/lib /tmp/cca081491.o -lm -lgcc -lc -lgcc /usr/local/lib/gcc-lib/i586-pc-linux-gnu/egcs-2.91.16/crtend.o /usr/lib/crtn.o ./etest 1069128089.000000