[Bug c++/79350] "explicit" deduction guides don't work
jason at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Feb 9 20:56:00 GMT 2017
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
More information about the Gcc-bugs
mailing list