config.mak.dev: enable -Wunused-function
authorJeff King <peff@peff.net>
Thu, 18 Oct 2018 07:05:22 +0000 (03:05 -0400)
committerJunio C Hamano <gitster@pobox.com>
Fri, 19 Oct 2018 01:24:11 +0000 (10:24 +0900)
We explicitly omitted -Wunused-function when we added
-Wextra, but there is no need: the current code compiles
cleanly with it. And it's worth having, since it can let you
know when there are cascading effects from a cleanup (e.g.,
deleting one function lets you delete its static helpers).

There are cases where we may need an unused function to
exist, but we can handle these easily:

- macro-generated code like commit-slab; there we have the
MAYBE_UNUSED annotation to silence the compiler

- conditional compilation, where we may or may not need a
static helper. These generally fall into one of two
categories:

- the call should not be conditional, but rather the
function body itself should be (and may just be a
no-op on one side of the #if). That keeps the
conditional pollution out of the main code.

- call-chains of static helpers should all be in the
same #if block, so they are all-or-nothing

And if there's some case that doesn't cover, we still
have MAYBE_UNUSED as a fallback.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
config.mak.dev
index 9a998149d99a8eeebf311d5e84d43f146ed0f90d..cbe82320477af28f5aeac45764f18c938212b121 100644 (file)
@@ -33,7 +33,6 @@ ifeq ($(filter extra-all,$(DEVOPTS)),)
 CFLAGS += -Wno-empty-body
 CFLAGS += -Wno-missing-field-initializers
 CFLAGS += -Wno-sign-compare
-CFLAGS += -Wno-unused-function
 CFLAGS += -Wno-unused-parameter
 endif
 endif