Avoid calling a trivial default constructor.
authorJason Merrill <jason@redhat.com>
Fri, 26 Aug 2016 15:10:57 +0000 (11:10 -0400)
committerJason Merrill <jason@gcc.gnu.org>
Fri, 26 Aug 2016 15:10:57 +0000 (11:10 -0400)
commitd0b0fbd9fce2f30a82558bf2308b3a7b56c2f364
tree8b759d9ca7a0bbc18fbf82d0501f69c847a84582
parent9729a5d5241257d07aa2a9c2fa6c3abbd73e25e5
Avoid calling a trivial default constructor.

* class.c (default_ctor_p): New.
(in_class_defaulted_default_constructor): Use it.
(type_has_non_user_provided_default_constructor): Use it.
* call.c (build_over_call): Handle trivial default constructor.
* cp-tree.h: Declare default_ctor_p.

From-SVN: r239783
gcc/cp/ChangeLog
gcc/cp/call.c
gcc/cp/class.c
gcc/cp/cp-tree.h
gcc/testsuite/g++.dg/cpp0x/explicit12.C