x86_64-w64-mingw32-gcc.exe -std=c99 -pedantic -Wall -Werror=all -Wextra -Werror=extra -Wformat-nonliteral \
-Werror=format-nonliteral -Winit-self -Werror=init-self -Werror=conversion -Wsign-conversion \
-Werror=sign-conversion -Wformat-security -Werror=format-security -Wmissing-declarations -Werror=missing-declarations \
-Wno-attributes -Werror -Wlogical-op -Werror=logical-op -Wno-implicit-fallthrough -Os -DNDEBUG -MD test.c
In file included from test.c:3:
test.c: In function 'main':
test.c:6:17: error: conversion from 'double' to 'float' may change value [-Werror=float-conversion]
6 | int t = isinf (y);
| ^
cc1.exe: all warnings being treated as errors
test.c
#include <stdio.h>
#include <math.h>
int main(int argc, const char**argv) {
double y = 0.0;
int t = isinf (y);
printf("%.20le %d %d %p\n", expm1 (7.095e+02), t, argc, (const void*)argv);
}