r240889 - in /trunk: gcc/cp/ChangeLog gcc/cp/ca...

jason@gcc.gnu.org jason@gcc.gnu.org
Sat Oct 8 16:23:00 GMT 2016


Author: jason
Date: Sat Oct  8 16:23:26 2016
New Revision: 240889

URL: https://gcc.gnu.org/viewcvs?rev=240889&root=gcc&view=rev
Log:
	Further P0135 refinement.

	* call.c (build_user_type_conversion_1): Consider conversions from
	a single element in an initializer-list.
	(build_temp): Undo early_elide_copy change.
	(build_over_call): Check that we don't try to copy a TARGET_EXPR
	in C++17 mode.  Set user_conv_p here.
	(convert_like_real): Not here.
	(check_self_delegation): Split out from...
	(build_special_member_call): ...here.  Handle C++17 copy elision.
	* cvt.c (early_elide_copy): Remove.
	(ocp_convert): Undo early_elide_copy change.
	* except.c (build_throw): Likewise.
	* init.c (expand_default_init): Likewise.
	* typeck.c (cp_build_modify_expr): Likewise.

Modified:
    trunk/libstdc++-v3/testsuite/20_util/variant/compile.cc

Changes in other areas also in this revision:
Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/call.c
    trunk/gcc/cp/cp-tree.h
    trunk/gcc/cp/cvt.c
    trunk/gcc/cp/except.c
    trunk/gcc/cp/init.c
    trunk/gcc/cp/typeck.c
    trunk/gcc/testsuite/g++.dg/cpp0x/initlist12.C
    trunk/gcc/testsuite/g++.dg/cpp1z/elide1.C



More information about the Libstdc++-cvs mailing list