Our checks for -Wno-xxx switches do not work with gcc [1].
[1] https://gcc.gnu.org/wiki/FAQ#wnowarning
-Wno-unused-parameter \
-Wno-missing-field-initializers \
-Wno-unused-result \
-Wno-unused-parameter \
-Wno-missing-field-initializers \
-Wno-unused-result \
- -Wno-typedef-redefinition \
-Werror=overflow \
-Wdate-time \
-Wnested-externs \
-Werror=overflow \
-Wdate-time \
-Wnested-externs \
-fstack-protector-strong \
-fPIE \
--param=ssp-buffer-size=4])
-fstack-protector-strong \
-fPIE \
--param=ssp-buffer-size=4])
+
+AS_CASE([$CC], [*clang*],
+ [CC_CHECK_FLAGS_APPEND([with_cppflags], [CPPFLAGS], [\
+ -Wno-typedef-redefinition])])
+
AS_CASE([$CFLAGS], [*-O[[12345\ ]]*],
[CC_CHECK_FLAGS_APPEND([with_cflags], [CFLAGS], [\
-flto -ffat-lto-objects])],
AS_CASE([$CFLAGS], [*-O[[12345\ ]]*],
[CC_CHECK_FLAGS_APPEND([with_cflags], [CFLAGS], [\
-flto -ffat-lto-objects])],