Package: gcc-11 Version: 11.2.0-18 Severity: normal Dear Maintainer,
O option affects the return value of isinf(nan). user@m68k-sid:~$ cat n.c #include <math.h> #include <stdio.h> int main() { double inf = HUGE_VAL; double nan = (inf / inf); printf("isinf(inf)=%d\n", isinf(inf)); printf("isinf(nan)=%d\n", isinf(nan)); printf("isnan(inf)=%d\n", isnan(inf)); printf("isnan(nan)=%d\n", isnan(nan)); printf("inf=%f nan=%f\n", inf, nan); return 0; } user@m68k-sid:~$ gcc n.c user@m68k-sid:~$ ./a.out isinf(inf)=1 isinf(nan)=1 isnan(inf)=0 isnan(nan)=1 inf=inf nan=nan user@m68k-sid:~$ gcc -O1 n.c user@m68k-sid:~$ ./a.out isinf(inf)=1 isinf(nan)=0 isnan(inf)=0 isnan(nan)=1 inf=inf nan=nan user@m68k-sid:~$ gcc -O2 n.c user@m68k-sid:~$ ./a.out isinf(inf)=1 isinf(nan)=0 isnan(inf)=0 isnan(nan)=1 inf=inf nan=nan user@m68k-sid:~$ gcc -O3 n.c user@m68k-sid:~$ ./a.out isinf(inf)=1 isinf(nan)=0 isnan(inf)=0 isnan(nan)=1 inf=inf nan=nan user@m68k-sid:~$ -- System Information: Debian Release: bookworm/sid APT prefers unstable APT policy: (500, 'unstable') Architecture: m68k Kernel: Linux 5.13.0-37-generic (SMP w/4 CPU threads) Locale: LANG=C.UTF-8, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) Versions of packages gcc-11 depends on: ii binutils 2.38-2 ii cpp-11 11.2.0-18 ii gcc-11-base 11.2.0-18 ii libc6 2.33-2+qemu1 ii libcc1-0 12-20220319-1 ii libgcc-11-dev 11.2.0-18 ii libgcc-s2 12-20220319-1 ii libgmp10 2:6.2.1+dfsg-3 ii libisl23 0.24-2 ii libmpc3 1.2.1-1 ii libmpfr6 4.1.0-3 ii libstdc++6 12-20220319-1 ii libzstd1 1.4.9+dfsg-1 ii zlib1g 1:1.2.11.dfsg-3 Versions of packages gcc-11 recommends: ii libc6-dev 2.33-2+qemu1 Versions of packages gcc-11 suggests: pn gcc-11-doc <none> pn gcc-11-locales <none> -- no debconf information