https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79350
--- Comment #1 from Jason Merrill <jason at gcc dot gnu.org> --- Author: jason Date: Thu Feb 9 20:55:54 2017 New Revision: 245314 URL: https://gcc.gnu.org/viewcvs?rev=245314&root=gcc&view=rev Log: PR c++/79316 - default argument in deduction guide PR c++/79350 - explicit deduction guide * parser.c (cp_parser_constructor_declarator_p) (cp_parser_direct_declarator): Parse deduction guides more like constructors. * cp-tree.h (enum special_function_kind): Add sfk_deduction_guide. * tree.c (special_function_p): Return it. * decl.c (check_special_function_return_type): Handle it. (grokdeclarator, grokfndecl): Adjust. (cp_finish_decl): Pass flags to do_auto_deduction. * error.c (dump_decl_name): Use TFF_UNQUALIFIED_NAME. * pt.c (dguide_name_p): Take a const_tree. (do_class_deduction): Handle explicit. (do_auto_deduction): Pass flags through. (build_deduction_guide): Copy explicit flag. Added: trunk/gcc/testsuite/g++.dg/cpp1z/class-deduction27.C trunk/gcc/testsuite/g++.dg/cpp1z/class-deduction28.C Modified: trunk/gcc/cp/ChangeLog trunk/gcc/cp/cp-tree.h trunk/gcc/cp/decl.c trunk/gcc/cp/error.c trunk/gcc/cp/parser.c trunk/gcc/cp/pt.c trunk/gcc/cp/tree.c trunk/gcc/testsuite/g++.dg/cpp1z/class-deduction9.C