Add more GCC warnings to the maintainer build.
* arscan.c: [SV 49112] Correct TEST printf() formatting.
Recommended by Jaak Ristioja <jaak@ristioja.ee>
* hash.c: Correct fprintf() formatting.
* maintMakefile: Add extra GCC warning flags.
diff --git a/arscan.c b/arscan.c
index 6bc5af2..f497848 100644
--- a/arscan.c
+++ b/arscan.c
@@ -137,8 +137,8 @@
#ifdef TEST
/* When testing this code, it is useful to know the length returned */
- printf("Input length = %d, actual = %d\n",
- bufdesc.dsc$w_length, buffer_length);
+ printf ("Input length = %d, actual = %u\n",
+ bufdesc.dsc$w_length, buffer_length);
#endif
/* Conversion from VMS time to C time.
diff --git a/hash.c b/hash.c
index 7b4b271..ed4c876 100644
--- a/hash.c
+++ b/hash.c
@@ -277,10 +277,10 @@
hash_print_stats (struct hash_table *ht, FILE *out_FILE)
{
/* GKM FIXME: honor NO_FLOAT */
- fprintf (out_FILE, _("Load=%ld/%ld=%.0f%%, "), ht->ht_fill, ht->ht_size,
+ fprintf (out_FILE, _("Load=%lu/%lu=%.0f%%, "), ht->ht_fill, ht->ht_size,
100.0 * (double) ht->ht_fill / (double) ht->ht_size);
- fprintf (out_FILE, _("Rehash=%d, "), ht->ht_rehashes);
- fprintf (out_FILE, _("Collisions=%ld/%ld=%.0f%%"), ht->ht_collisions, ht->ht_lookups,
+ fprintf (out_FILE, _("Rehash=%u, "), ht->ht_rehashes);
+ fprintf (out_FILE, _("Collisions=%lu/%lu=%.0f%%"), ht->ht_collisions, ht->ht_lookups,
(ht->ht_lookups
? (100.0 * (double) ht->ht_collisions / (double) ht->ht_lookups)
: 0));
diff --git a/maintMakefile b/maintMakefile
index a275b88..cab8dd6 100644
--- a/maintMakefile
+++ b/maintMakefile
@@ -20,7 +20,14 @@
MAKEWEBDIR ?= $(SRCROOTDIR)/make/make-web
# We like mondo-warnings!
-AM_CFLAGS += -Wall -Wwrite-strings -Wextra -Wdeclaration-after-statement -Wshadow -Wpointer-arith -Wbad-function-cast
+AM_CFLAGS += -Wall -Wextra -Werror -Wwrite-strings -Wshadow -Wpointer-arith \
+ -Wdeclaration-after-statement -Wbad-function-cast -Wformat-security \
+ -Wtype-limits -Wunused-but-set-parameter -Wlogical-op \
+ -Wignored-qualifiers -Wformat-signedness -Wduplicated-cond
+
+# Unfortunately the Guile headers are sometimes broken. Convince GCC
+# to treat them as system headers so warnings are ignored.
+GUILE_CFLAGS := $(patsubst -I%,-isystem %,$(GUILE_CFLAGS))
MAKE_MAINTAINER_MODE := -DMAKE_MAINTAINER_MODE
AM_CPPFLAGS += $(MAKE_MAINTAINER_MODE)