config.mak.dev: enable -Wunused-function

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>
This commit is contained in:
Jeff King 2018-10-18 03:05:22 -04:00 committed by Junio C Hamano
parent cae598d998
commit 36da893114

View File

@ -33,7 +33,6 @@ ifeq ($(filter extra-all,$(DEVOPTS)),)
CFLAGS += -Wno-empty-body CFLAGS += -Wno-empty-body
CFLAGS += -Wno-missing-field-initializers CFLAGS += -Wno-missing-field-initializers
CFLAGS += -Wno-sign-compare CFLAGS += -Wno-sign-compare
CFLAGS += -Wno-unused-function
CFLAGS += -Wno-unused-parameter CFLAGS += -Wno-unused-parameter
endif endif
endif endif