[PATCH] builtin/fsck.c: don't conflate "int" and "enum" in callback
- From
Ævar Arnfjörð Bjarmason <avarab@gmail.com>
- Date
- Jun 1, 2021, 00:05 UTC
- Message-ID
- <patch-1.1-f109a61b11-20210601T000433Z-avarab@gmail.com>
Fix a warning on AIX's xlc compiler that's been emitted since my a1aad71601a (fsck.h: use "enum object_type" instead of "int", 2021-03-28):
"builtin/fsck.c", line 805.32: 1506-068 (W) Operation between
types "int(*)(struct object*,enum object_type,void*,struct
fsck_options*)" and "int(*)(struct object*,int,void*,struct
fsck_options*)" is not allowed.I.e. it complains about us assigning a function with a prototype "int" where we're expecting "enum object_type". Enums are just ints in C, but it seems xlc is more picky than some about conflating them at the source level.
Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> ---
This is new in v2.32.0, so sending this during the rc phase, just a warning though, so unless you're using fatal warnings on that OS/platform it won't impact anything, and even then it's just a minor annoyance...
builtin/fsck.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/builtin/fsck.c b/builtin/fsck.c index 87a99b0108..b42b6fe21f 100644 --- a/builtin/fsck.c +++ b/builtin/fsck.c @@ -109,7 +109,8 @@ static int fsck_error_func(struct fsck_options *o, static struct object_array pending; -static int mark_object(struct object *obj, int type, void *data, struct fsck_options *options) +static int mark_object(struct object *obj, enum object_type type, + void *data, struct fsck_options *options) { struct object *parent = data;
-- 2.32.0.rc1.460.g26a014da44c