https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88584

            Bug ID: 88584
           Summary: GCC thinks that the type is complete dispite
                    shaddowing.
           Product: gcc
           Version: 9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: anders.granlund.0 at gmail dot com
  Target Milestone: ---

Test program (prog.c):

  int a[1] = { 0 };

  int main()
  {
    int a;
    {
      extern int a[];
      sizeof (a);
    }
  }

Compilation command line:

  gcc prog.c -Wall -Wextra -std=c11 -pedantic-errors 

Observed behaviour:

  No error messages are outputed.

Expected behaviour:

  An error message. Because the file scope declaration is shaddowed  a  should
  not have a complete type in  sizeof (a).

Note:

  Clang outputs the expected error message for the program.

Reply via email to