OSDN Git Service

parse-options: add cast to correct pointer type to OPT_SET_PTR
authorJunio C Hamano <gitster@pobox.com>
Sun, 30 Mar 2014 02:01:54 +0000 (19:01 -0700)
committerJunio C Hamano <gitster@pobox.com>
Mon, 31 Mar 2014 18:55:41 +0000 (11:55 -0700)
Do not force users of OPT_SET_PTR to cast pointer to correct
underlying pointer type by integrating cast into OPT_SET_PTR macro.

Cast is required to prevent 'initialization makes integer from pointer
without a cast' compiler warning.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
parse-options.h
test-parse-options.c

index d670cb9..7a24d2e 100644 (file)
@@ -129,7 +129,7 @@ struct option {
 #define OPT_HIDDEN_BOOL(s, l, v, h) { OPTION_SET_INT, (s), (l), (v), NULL, \
                                      (h), PARSE_OPT_NOARG | PARSE_OPT_HIDDEN, NULL, 1}
 #define OPT_SET_PTR(s, l, v, h, p)  { OPTION_SET_PTR, (s), (l), (v), NULL, \
-                                     (h), PARSE_OPT_NOARG, NULL, (p) }
+                                     (h), PARSE_OPT_NOARG, NULL, (intptr_t)(p) }
 #define OPT_CMDMODE(s, l, v, h, i) { OPTION_CMDMODE, (s), (l), (v), NULL, \
                                      (h), PARSE_OPT_NOARG|PARSE_OPT_NONEG, NULL, (i) }
 #define OPT_INTEGER(s, l, v, h)     { OPTION_INTEGER, (s), (l), (v), N_("n"), (h) }
index 6f6c656..10da63e 100644 (file)
@@ -60,7 +60,7 @@ int main(int argc, char **argv)
                OPT_STRING('o', NULL, &string, "str", "get another string"),
                OPT_NOOP_NOARG(0, "obsolete"),
                OPT_SET_PTR(0, "default-string", &string,
-                       "set string to default", (intptr_t)"default"),
+                       "set string to default", "default"),
                OPT_STRING_LIST(0, "list", &list, "str", "add str to list"),
                OPT_GROUP("Magic arguments"),
                OPT_ARGUMENT("quux", "means --quux"),