Skip to content
  • Junio C Hamano's avatar
    [PATCH] Compilation: zero-length array declaration. · 8f1d2e6f
    Junio C Hamano authored
    
    
    ISO C99 (and GCC 3.x or later) lets you write a flexible array
    at the end of a structure, like this:
    
    	struct frotz {
    		int xyzzy;
    		char nitfol[]; /* more */
    	};
    
    GCC 2.95 and 2.96 let you to do this with "char nitfol[0]";
    unfortunately this is not allowed by ISO C90.
    
    This declares such construct like this:
    
    	struct frotz {
    		int xyzzy;
    		char nitfol[FLEX_ARRAY]; /* more */
    	};
    
    and git-compat-util.h defines FLEX_ARRAY to 0 for gcc 2.95 and
    empty for others.
    
    If you are using a C90 C compiler, you should be able
    to override this with CFLAGS=-DFLEX_ARRAY=1 from the
    command line of "make".
    
    Signed-off-by: default avatarJunio C Hamano <junkio@cox.net>
    8f1d2e6f