In recent versions of gcc (4.9.0), we get a few of these: notes.c: In function ‘notes_display_config’: notes.c:970:28: warning: right-hand operand of comma expression has no effect [-Wunused-value] config_error_nonbool(k); ^ Previous commit explains the reason. This reverts commit a469a1019352b8efc4bd7003b0bd59eb60fc428c. Conflicts: cache.h parse-options.h --- cache.h | 3 --- config.c | 1 - parse-options.c | 18 +++++++++--------- parse-options.h | 4 ---- 4 files changed, 9 insertions(+), 17 deletions(-) diff --git a/cache.h b/cache.h index 107ac61..fae077a 100644 --- a/cache.h +++ b/cache.h @@ -1271,9 +1271,6 @@ extern int check_repository_format_version(const char *var, const char *value, v extern int git_env_bool(const char *, int); extern int git_config_system(void); extern int config_error_nonbool(const char *); -#if defined(__GNUC__) && ! defined(__clang__) -#define config_error_nonbool(s) (config_error_nonbool(s), -1) -#endif extern const char *get_log_output_encoding(void); extern const char *get_commit_output_encoding(void); diff --git a/config.c b/config.c index a30cb5c..0083674 100644 --- a/config.c +++ b/config.c @@ -1870,7 +1870,6 @@ int git_config_rename_section(const char *old_name, const char *new_name) * Call this to report error for your variable that should not * get a boolean value (i.e. "[my] var" means "true"). */ -#undef config_error_nonbool int config_error_nonbool(const char *var) { return error("Missing value for '%s'", var); diff --git a/parse-options.c b/parse-options.c index b536896..2b4b8e5 100644 --- a/parse-options.c +++ b/parse-options.c @@ -19,6 +19,15 @@ int optbug(const struct option *opt, const char *reason) return error("BUG: switch '%c' %s", opt->short_name, reason); } +int opterror(const struct option *opt, const char *reason, int flags) +{ + if (flags & OPT_SHORT) + return error("switch `%c' %s", opt->short_name, reason); + if (flags & OPT_UNSET) + return error("option `no-%s' %s", opt->long_name, reason); + return error("option `%s' %s", opt->long_name, reason); +} + static int get_arg(struct parse_opt_ctx_t *p, const struct option *opt, int flags, const char **arg) { @@ -632,12 +641,3 @@ static int parse_options_usage(struct parse_opt_ctx_t *ctx, return usage_with_options_internal(ctx, usagestr, opts, 0, err); } -#undef opterror -int opterror(const struct option *opt, const char *reason, int flags) -{ - if (flags & OPT_SHORT) - return error("switch `%c' %s", opt->short_name, reason); - if (flags & OPT_UNSET) - return error("option `no-%s' %s", opt->long_name, reason); - return error("option `%s' %s", opt->long_name, reason); -} diff --git a/parse-options.h b/parse-options.h index 3189676..3b140d0 100644 --- a/parse-options.h +++ b/parse-options.h @@ -176,10 +176,6 @@ extern NORETURN void usage_msg_opt(const char *msg, extern int optbug(const struct option *opt, const char *reason); extern int opterror(const struct option *opt, const char *reason, int flags); -#if defined(__GNUC__) && ! defined(__clang__) -#define opterror(o,r,f) (opterror((o),(r),(f)), -1) -#endif - /*----- incremental advanced APIs -----*/ enum { -- 1.9.2+fc1.20.g204a630 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html