2010-06-15 Jason Merrill <jason@redhat.com>
+ * class.c (type_has_user_provided_default_constructor): Use
+ sufficient_parms_p.
+
* call.c (is_subseq): Handle ck_aggr, ck_list.
(compare_ics): Treat an aggregate or ambiguous conversion to the
same type as involving the same function.
bool
type_has_user_provided_default_constructor (tree t)
{
- tree fns, args;
+ tree fns;
if (!TYPE_HAS_USER_CONSTRUCTOR (t))
return false;
{
tree fn = OVL_CURRENT (fns);
if (TREE_CODE (fn) == FUNCTION_DECL
- && user_provided_p (fn))
- {
- args = FUNCTION_FIRST_USER_PARMTYPE (fn);
- while (args && TREE_PURPOSE (args))
- args = TREE_CHAIN (args);
- if (!args || args == void_list_node)
- return true;
- }
+ && user_provided_p (fn)
+ && sufficient_parms_p (FUNCTION_FIRST_USER_PARMTYPE (fn)))
+ return true;
}
return false;