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

--- Comment #5 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jakub Jelinek <ja...@gcc.gnu.org>:

https://gcc.gnu.org/g:c6a562de88c44a555e1688c212869b20b02151bc

commit r10-7438-gc6a562de88c44a555e1688c212869b20b02151bc
Author: Jakub Jelinek <ja...@redhat.com>
Date:   Sat Mar 28 10:30:31 2020 +0100

    c: After issuing errors about array size, for error-recovery don't make the
array VLA [PR93573]

    After we report various errors about array size, we set for error-recovery
    the size to be 1, but because size_int_const is false, it still means we
    pretend the array is a VLA, can emit a second diagnostics in that case etc.
    E.g.
    $ ./cc1.unpatched -quiet a.c
    a.c:1:5: error: size of array âfâ has non-integer type
        1 | int f[100.0];
          |     ^
    a.c:1:1: warning: variably modified âfâ at file scope
        1 | int f[100.0];
          | ^~~
    $ ./cc1 -quiet a.c
    a.c:1:5: error: size of array âfâ has non-integer type
        1 | int f[100.0];
          |     ^

    2020-03-28  Jakub Jelinek  <ja...@redhat.com>

            PR c/93573
            * c-decl.c (grokdeclarator): After issuing errors, set
size_int_const
            to true after setting size to integer_one_node.

            * gcc.dg/pr93573-1.c: New test.
            * gcc.dg/pr93573-2.c: New test.

Reply via email to