Enable a few additional warnings for CI and fix the issues they uncovered

- `-Wmissing-prototypes` and `-Wmissing-variable-declarations` are
  helpful for finding dead code and/or things that should be `static`
  but aren't marked as such.
- `-Wunused-macros` is of similar utility, but for identifying dead macros.
- `-Wunreachable-code` and `-Wunreachable-code-aggressive` do exactly
  what they say: flag unreachable code.
This commit is contained in:
Kevin Svetlitski 2023-08-10 16:31:35 -07:00 committed by Qi Wang
parent d2c9ed3d1e
commit da66aa391f
11 changed files with 15 additions and 40 deletions

View file

@ -12,8 +12,16 @@ compile_time_malloc_conf='background_thread:true,'\
'zero_realloc:free,'\
'prof_unbias:false,'\
'prof_time_resolution:high'
extra_flags=(
-Wmissing-prototypes
-Wmissing-variable-declarations
-Wstrict-prototypes
-Wunreachable-code
-Wunreachable-code-aggressive
-Wunused-macros
)
EXTRA_CFLAGS='-Wstrict-prototypes' EXTRA_CXXFLAGS='-Wstrict-prototypes' ./autogen.sh \
EXTRA_CFLAGS="${extra_flags[*]}" EXTRA_CXXFLAGS="${extra_flags[*]}" ./autogen.sh \
--with-private-namespace=jemalloc_ \
--disable-cache-oblivious \
--enable-prof \