mirror of
https://github.com/git/git.git
synced 2024-05-05 05:56:13 +02:00
153fb49e60
Remove the USE_PARENS_AROUND_GETTEXT_N compile-time option which was meant to catch an inadvertent mistake which is too obscure to maintain this facility. The backstory of how USE_PARENS_AROUND_GETTEXT_N came about is: When I added the N_() macro in6578483036
(i18n: add no-op _() and N_() wrappers, 2011-02-22) it was defined as: #define N_(msgid) (msgid) This is non-standard C, as was noticed and fixed in642f85faab
(i18n: avoid parenthesized string as array initializer, 2011-04-07). I.e. this needed to be defined as: #define N_(msgid) msgid Then ine62cd35a3e
(i18n: log: mark parseopt strings for translation, 2012-08-20) when "builtin_log_usage" was marked for translation the string concatenation for passing to usage() added in1c370ea4e5
(Show usage string for 'git log -h', 'git show -h' and 'git diff -h', 2009-08-06) was faithfully preserved: - "git log [<options>] [<since>..<until>] [[--] <path>...]\n" - " or: git show [options] <object>...", + N_("git log [<options>] [<since>..<until>] [[--] <path>...]\n") + N_(" or: git show [options] <object>..."), This was then fixed to be the expected array of usage strings ine66dc0cc4b
(log.c: fix translation markings, 2015-01-06) rather than a string with multiple "\n"-delimited usage strings, and finally in290c8e7a3f
(gettext.h: add parentheses around N_ expansion if supported, 2015-01-11) USE_PARENS_AROUND_GETTEXT_N was added to ensure this mistake didn't happen again. I think that even if this was a N_()-specific issue this USE_PARENS_AROUND_GETTEXT_N facility wouldn't be worth it, the issue would be too rare to worry about. But I also think that290c8e7a3f
which introduced USE_PARENS_AROUND_GETTEXT_N misattributed the problem. The issue wasn't with the N_() macro added ine62cd35a3e
, but that before the N_() macro existed in the codebase the initial migration to parse_options() in1c370ea4e5
continued passsing in a "\n"-delimited string, when the new API it was migrating to supported and expected the passing of an array. Helped-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Carlo Marcelo Arenas Belón <carenas@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
50 lines
1.6 KiB
Plaintext
50 lines
1.6 KiB
Plaintext
ifeq ($(filter no-error,$(DEVOPTS)),)
|
|
DEVELOPER_CFLAGS += -Werror
|
|
SPARSE_FLAGS += -Wsparse-error
|
|
endif
|
|
ifneq ($(filter pedantic,$(DEVOPTS)),)
|
|
DEVELOPER_CFLAGS += -pedantic
|
|
endif
|
|
DEVELOPER_CFLAGS += -Wall
|
|
DEVELOPER_CFLAGS += -Wdeclaration-after-statement
|
|
DEVELOPER_CFLAGS += -Wformat-security
|
|
DEVELOPER_CFLAGS += -Wold-style-definition
|
|
DEVELOPER_CFLAGS += -Woverflow
|
|
DEVELOPER_CFLAGS += -Wpointer-arith
|
|
DEVELOPER_CFLAGS += -Wstrict-prototypes
|
|
DEVELOPER_CFLAGS += -Wunused
|
|
DEVELOPER_CFLAGS += -Wvla
|
|
DEVELOPER_CFLAGS += -fno-common
|
|
|
|
ifndef COMPILER_FEATURES
|
|
COMPILER_FEATURES := $(shell ./detect-compiler $(CC))
|
|
endif
|
|
|
|
ifneq ($(filter clang4,$(COMPILER_FEATURES)),)
|
|
DEVELOPER_CFLAGS += -Wtautological-constant-out-of-range-compare
|
|
endif
|
|
|
|
ifneq ($(or $(filter gcc6,$(COMPILER_FEATURES)),$(filter clang4,$(COMPILER_FEATURES))),)
|
|
DEVELOPER_CFLAGS += -Wextra
|
|
# if a function is public, there should be a prototype and the right
|
|
# header file should be included. If not, it should be static.
|
|
DEVELOPER_CFLAGS += -Wmissing-prototypes
|
|
ifeq ($(filter extra-all,$(DEVOPTS)),)
|
|
# These are disabled because we have these all over the place.
|
|
DEVELOPER_CFLAGS += -Wno-empty-body
|
|
DEVELOPER_CFLAGS += -Wno-missing-field-initializers
|
|
DEVELOPER_CFLAGS += -Wno-sign-compare
|
|
DEVELOPER_CFLAGS += -Wno-unused-parameter
|
|
endif
|
|
endif
|
|
|
|
# uninitialized warnings on gcc 4.9.2 in xdiff/xdiffi.c and config.c
|
|
# not worth fixing since newer compilers correctly stop complaining
|
|
ifneq ($(filter gcc4,$(COMPILER_FEATURES)),)
|
|
ifeq ($(filter gcc5,$(COMPILER_FEATURES)),)
|
|
DEVELOPER_CFLAGS += -Wno-uninitialized
|
|
endif
|
|
endif
|
|
|
|
GIT_TEST_PERL_FATAL_WARNINGS = YesPlease
|