GCC doesn't diagnose function-scope VM declarations of variables with external
or internal linkage.  (VM declarations of function-local statics are OK.)  Four
tests (all should be rejected unconditionally, none are even with -std=c99
-pedantic-errors):

extern int (*a)[];
void f(int b) { extern int (*a)[b]; }

static int (*a)[];
void f(int b) { extern int (*a)[b]; }

extern int (*a)[];
void f(int b) { typedef int (*T)[b]; extern T a; }

static int (*a)[];
void f(int b) { typedef int (*T)[b]; extern T a; }


-- 
           Summary: VM types of external and internal linkage variables not
                    diagnosed
           Product: gcc
           Version: 4.2.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: jsm28 at gcc dot gnu dot org
OtherBugsDependingO 16989
             nThis:


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25802

Reply via email to