From: Ramsay Jones Date: Wed, 23 Jun 2010 19:40:19 +0000 (+0100) Subject: msvc: Fix some "expr evaluates to function" compiler warnings X-Git-Tag: v1.7.2-rc0~7^2~2 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=4e0d7a80186c27f1a008dd10eaea6f25b0e1fe19;p=git.git msvc: Fix some "expr evaluates to function" compiler warnings In particular, the following warning is issued while compiling notes.c: notes.c(927) : warning C4550: expression evaluates to a \ function which is missing an argument list along with identical warnings on lines 928, 1016 and 1017. In order to suppress the warning, we change the definition of combine_notes_fn, so that the symbol type is an (explicit) "pointer to function ...". As a result, several other declarations need some minor fix-up to take account of the new typedef. Signed-off-by: Ramsay Jones Acked-by: Johan Herland Signed-off-by: Junio C Hamano --- diff --git a/builtin.h b/builtin.h index 322901f33..fdae0279e 100644 --- a/builtin.h +++ b/builtin.h @@ -26,13 +26,13 @@ struct notes_rewrite_cfg { struct notes_tree **trees; const char *cmd; int enabled; - combine_notes_fn *combine; + combine_notes_fn combine; struct string_list *refs; int refs_from_env; int mode_from_env; }; -combine_notes_fn *parse_combine_notes_fn(const char *v); +combine_notes_fn parse_combine_notes_fn(const char *v); struct notes_rewrite_cfg *init_copy_notes_for_rewrite(const char *cmd); int copy_note_for_rewrite(struct notes_rewrite_cfg *c, const unsigned char *from_obj, const unsigned char *to_obj); diff --git a/builtin/notes.c b/builtin/notes.c index 26617546c..da504ee0a 100644 --- a/builtin/notes.c +++ b/builtin/notes.c @@ -313,7 +313,7 @@ int commit_notes(struct notes_tree *t, const char *msg) return 0; } -combine_notes_fn *parse_combine_notes_fn(const char *v) +combine_notes_fn parse_combine_notes_fn(const char *v) { if (!strcasecmp(v, "overwrite")) return combine_notes_overwrite; diff --git a/notes.h b/notes.h index 9f59277c5..109bc8f78 100644 --- a/notes.h +++ b/notes.h @@ -18,7 +18,7 @@ * combine_notes_concatenate(), which appends the contents of the new note to * the contents of the existing note. */ -typedef int combine_notes_fn(unsigned char *cur_sha1, const unsigned char *new_sha1); +typedef int (*combine_notes_fn)(unsigned char *cur_sha1, const unsigned char *new_sha1); /* Common notes combinators */ int combine_notes_concatenate(unsigned char *cur_sha1, const unsigned char *new_sha1); @@ -38,7 +38,7 @@ extern struct notes_tree { struct int_node *root; struct non_note *first_non_note, *prev_non_note; char *ref; - combine_notes_fn *combine_notes; + combine_notes_fn combine_notes; int initialized; int dirty; } default_notes_tree;