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

--- Comment #6 from Alexandre Oliva <aoliva at gcc dot gnu.org> ---
Author: aoliva
Date: Fri Mar 23 01:19:01 2018
New Revision: 258791

URL: https://gcc.gnu.org/viewcvs?rev=258791&root=gcc&view=rev
Log:
[PR c++/84729] reject parenthesized array init

A parenthesized initializer was only accepted when new()ing an array in
permissive mode.  We were not careful, however, to convert the
TREE_LIST initializer to the array element type in this extension.

Instead of fixing it, converting the initializer to the base type
after turning the TREE_LIST initializer to a compound_expr, we disable
this deprecated extension.


for  gcc/cp/ChangeLog

        PR c++/84729
        * init.c (build_vec_init): Error at parenthesized array init.

for  gcc/testsuite/ChangeLog

        PR c++/84729
        * g++.dg/pr84729.C: New.
        * g++.old-deja/g++.ext/arrnew2.C: Require error.
        * g++.old-deja/g++.robertl/eb58.C: Likewise.
        * g++.old-deja/g++.robertl/eb63.C: Likewise.

Added:
    trunk/gcc/testsuite/g++.dg/pr84729.C
Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/init.c
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/g++.old-deja/g++.ext/arrnew2.C
    trunk/gcc/testsuite/g++.old-deja/g++.robertl/eb58.C
    trunk/gcc/testsuite/g++.old-deja/g++.robertl/eb63.C

Reply via email to