https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103980
Bug ID: 103980 Summary: -Wdouble-promotion triggers on s390x when it shouldn't. Product: gcc Version: 10.2.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: rmaguire314 at gmail dot com Target Milestone: --- The file bug.c: #include <stdio.h> int main(void) { float x = 1.0F; if (x == 0.0F) puts("Hi!"); return 0; } Build with: gcc -Wdouble-promotion bug.c -o test No errors. Build with: gcc -Wdouble-promotion -std=c89 bug.c -o test Produces: bug.c: In function 'main': bug.c:7:11: warning: implicit conversion from 'float' to 'double' to match other operand of binary expression [-Wdouble-promotion] 7 | if (x == 0.0F) This only occurs on the s390x architecture. arm64 and amd64 work normally. I'm running Debian 11 s390x version via emulating and chroot (host is amd64). GCC version: gcc (Debian 10.2.1-6) 10.2.1 20210110