This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
C++ parsing regression?
- From: Richard Guenther <rguenther at suse dot de>
- To: gcc at gcc dot gnu dot org, mark at codesourcery dot com
- Date: Mon, 2 Jan 2006 11:51:02 +0100 (CET)
- Subject: C++ parsing regression?
g++ no longer parses
ScalarCode<CflFunctor<Dim> >(CflFunctor<Dim>(omrot, vis_f))(scratch,
I, cs, nue, v);
correctly, but issues
tramp3d-v4.cpp:53573: error: invalid declarator
which can be fixed by putting parantheses around the decl. Was this
change intended? It happened between r109062 and r109079, where the
only cp/ changes were
+2005-12-26 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/25439
+ * decl.c (grokdeclarator): Remove dead code.
+ * ptree.c (cxx_print_xnode): Handle BASELINK.
+ * parser.c (make_id_declarator): Add sfk parameter.
+ (cp_parser_direct_declarator): Do not pass TYPE_DECLs to
+ make_id_declarator.
+ (cp_parser_declarator_id): Simplify BASELINKs here.
+ (cp_parser_member_declaration): Adjust calls to
+ make_id_declarator.
+
+2005-12-26 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/23171, c++/23172, c++/25417.
+ * typeck.c (build_unary_op): Create temporary variables for
+ compound literals whose addresses are taken.
+ * init.c (expand_aggr_init_1): Use COMPOUND_LITERAL_P.
+ * decl.c (reshape_init_vector): Likewise.
+ (reshape_init): Give it external linkage.
+ (check_initializer): Use COMPOUND_LITERAL_P.
+ (initialize_artificial_var): Allow the initializer to be a
+ CONSTRUCTOR.
+ * call.c (make_temporary_var_for_ref_to_temp): Use
+ create_temporary_var.
+ * cp-tree.h (COMPOUND_LITERAL_P): New macro.
+ (rehape_init): Declare.
+ * typeck2.c (digest_init): Use COMPOUND_LITERAL_P.
+ * semantics.c (finish_compound_literal): Use reshape_init.
and the first one looks parsing related.
Richard.