commit 7cf23450ad628012dfb66d72f1796955d1b34d71
Author:     Roberto E. Vargas Caballero <[email protected]>
AuthorDate: Tue Aug 9 16:01:57 2016 +0200
Commit:     Roberto E. Vargas Caballero <[email protected]>
CommitDate: Tue Aug 9 16:03:58 2016 +0200

    [cc1] Allow declaration of global array variables
    
    It is desirable to declare global array variables with
    an incomplete type, because in this case we are not defining
    them and we can have later a definition.

diff --git a/cc1/decl.c b/cc1/decl.c
index 20df8fd..8ecb40d 100644
--- a/cc1/decl.c
+++ b/cc1/decl.c
@@ -732,7 +732,7 @@ identifier(struct decl *dcl)
        /* TODO: Add warning about ANSI limits */
        if (!(tp->prop & TDEFINED)                &&
            sclass != EXTERN && sclass != TYPEDEF &&
-           !(tp->op == ARY && yytoken == '=')) {
+           (tp->op != ARY || yytoken != '=' && curctx != GLOBALCTX)) {
                errorp("declared variable '%s' of incomplete type", name);
        }
 

Reply via email to