From a76edad998c08a8e5e107d09f22375a5c4479a42 Mon Sep 17 00:00:00 2001 From: Charlie Gordon Date: Thu, 16 Apr 2026 09:13:00 +0200 Subject: [PATCH] Compiler: control more C compiler warnings via pragmas. --- generator/c/c_generator.c2 | 10 ++++++++++ generator/c/c_generator_special.c2 | 4 +--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/generator/c/c_generator.c2 b/generator/c/c_generator.c2 index d4b65c1a8..d1f989da4 100644 --- a/generator/c/c_generator.c2 +++ b/generator/c/c_generator.c2 @@ -1395,6 +1395,11 @@ const char[] Warning_control = # pragma clang diagnostic ignored "-Wsometimes-uninitialized" # pragma clang diagnostic ignored "-Wtypedef-redefinition" # pragma clang diagnostic ignored "-Wstring-plus-int" + # pragma clang diagnostic ignored "-Wunused" + # pragma clang diagnostic ignored "-Wswitch" + # pragma clang diagnostic ignored "-Wunused-parameter" + # pragma clang diagnostic ignored "-Wmissing-field-initializers" + # pragma clang diagnostic ignored "-Wformat-zero-length" # if (__clang_major__ >= 10) # define fallthrough __attribute__((fallthrough)) # endif @@ -1405,12 +1410,17 @@ const char[] Warning_control = # define fallthrough __attribute__((fallthrough)) # endif # pragma GCC diagnostic ignored "-Wmain" + # pragma GCC diagnostic ignored "-Wunused" + # pragma GCC diagnostic ignored "-Wswitch" + # pragma GCC diagnostic ignored "-Wunused-parameter" + # pragma GCC diagnostic ignored "-Wmissing-field-initializers" # if (__GNUC__ >= 10) # pragma GCC diagnostic ignored "-Wzero-length-bounds" # endif # if (__GNUC__ >= 7) # pragma GCC diagnostic ignored "-Wformat-overflow" # pragma GCC diagnostic ignored "-Wstringop-overflow" + # pragma GCC diagnostic ignored "-Wformat-zero-length" # endif #endif diff --git a/generator/c/c_generator_special.c2 b/generator/c/c_generator_special.c2 index 49939c8d3..d42acd914 100644 --- a/generator/c/c_generator_special.c2 +++ b/generator/c/c_generator_special.c2 @@ -58,9 +58,7 @@ fn void Generator.createMakefile(Generator* gen, out.print("CC?=%s\n", cc); - out.add("CFLAGS+=-Wall -Wextra -Wno-unused -Wno-switch\n"); - out.add("CFLAGS+=-Wno-unused-parameter -Wno-missing-field-initializers -Wno-format-zero-length\n"); - out.add("CFLAGS+=-pipe -std=c99 -funsigned-char\n"); + out.add("CFLAGS+=-Wall -Wextra -pipe -std=c99 -funsigned-char\n"); if (gen.fast_build) out.add("CFLAGS+=-O0 -g\n"); else