https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67810
--- Comment #2 from Jason Merrill <jason at gcc dot gnu.org> --- Author: jason Date: Wed Oct 7 01:46:54 2015 New Revision: 228556 URL: https://gcc.gnu.org/viewcvs?rev=228556&root=gcc&view=rev Log: PR c++/67810 * parser.c (cp_parser_fold_expr_p): Remove. (is_binary_op): New. (cp_parser_fold_expression): Take LHS as parameter. (cp_parser_primary_expression): Call it after parsing an expression. (cp_parser_binary_expression, cp_parser_assignment_operator_opt) (cp_parser_expression): Ignore an operator followed by '...'. (is_binary_op): New. * pt.c (tsubst_unary_left_fold, tsubst_binary_left_fold) (tsubst_unary_right_fold, tsubst_binary_right_fold): Handle errors. Added: trunk/gcc/testsuite/g++.dg/cpp1y/var-templ45.C trunk/gcc/testsuite/g++.dg/cpp1z/fold6.C Modified: trunk/gcc/cp/ChangeLog trunk/gcc/cp/parser.c trunk/gcc/cp/pt.c trunk/gcc/testsuite/g++.dg/cpp1z/fold2.C