packfile: ensure that enum object_type is defined
authorBeat Bolli <dev+git@drbeat.li>
Wed, 25 Jul 2018 21:56:07 +0000 (23:56 +0200)
committerJunio C Hamano <gitster@pobox.com>
Thu, 26 Jul 2018 17:36:26 +0000 (10:36 -0700)
commitb42f98af096bfdf90339def75fe969b9d969b0f6
tree93c9bcae0c184a0c652ff6c921538c2faf9469b2
parentb7bd9486b055c3f967a870311e704e3bb0654e4f
packfile: ensure that enum object_type is defined

When compiling under Apple LLVM version 9.1.0 (clang-902.0.39.2) with
"make DEVELOPER=1 DEVOPTS=pedantic", the compiler says

    error: redeclaration of already-defined enum 'object_type' is a GNU
    extension [-Werror,-Wgnu-redeclared-enum]

According to https://en.cppreference.com/w/c/language/declarations
(section "Redeclaration"), a repeated declaration after the definition
is only legal for structs and unions, but not for enums.

Drop the belated declaration of enum object_type and include cache.h
instead to make sure the enum is defined.

Helped-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Beat Bolli <dev+git@drbeat.li>
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
packfile.h