Fix an enum assignment issue spotted by Sun Studio

In builtin/fast-export.c we'd assign to variables of the
tag_of_filtered_mode enum type with constants defined for the
signed_tag_mode enum.

We'd get the intended value since both the value we were assigning
with and the one we actually wanted had the same positional within
their respective enums, but doing it this way makes no sense.

This issue was spotted by Sun Studio 12 Update 1:

    "builtin/fast-export.c", line 54: warning: enum type mismatch: op "=" (E_ENUM_TYPE_MISMATCH_OP)

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Ævar Arnfjörð Bjarmason 2011-12-21 01:18:19 +00:00 committed by Junio C Hamano
parent 3daff7c319
commit d7a10c3140

View File

@ -25,7 +25,7 @@ static const char *fast_export_usage[] = {
static int progress; static int progress;
static enum { ABORT, VERBATIM, WARN, STRIP } signed_tag_mode = ABORT; static enum { ABORT, VERBATIM, WARN, STRIP } signed_tag_mode = ABORT;
static enum { ERROR, DROP, REWRITE } tag_of_filtered_mode = ABORT; static enum { ERROR, DROP, REWRITE } tag_of_filtered_mode = ERROR;
static int fake_missing_tagger; static int fake_missing_tagger;
static int use_done_feature; static int use_done_feature;
static int no_data; static int no_data;
@ -51,7 +51,7 @@ static int parse_opt_tag_of_filtered_mode(const struct option *opt,
const char *arg, int unset) const char *arg, int unset)
{ {
if (unset || !strcmp(arg, "abort")) if (unset || !strcmp(arg, "abort"))
tag_of_filtered_mode = ABORT; tag_of_filtered_mode = ERROR;
else if (!strcmp(arg, "drop")) else if (!strcmp(arg, "drop"))
tag_of_filtered_mode = DROP; tag_of_filtered_mode = DROP;
else if (!strcmp(arg, "rewrite")) else if (!strcmp(arg, "rewrite"))