From b3e4ff59a36ba89dab631e92515b8527b3521359 Mon Sep 17 00:00:00 2001 From: Jason Merrill Date: Thu, 26 Mar 1998 12:21:13 +0000 Subject: [PATCH] call.c (build_over_call): Check IS_AGGR_TYPE, not TYPE_LANG_SPECIFIC. * call.c (build_over_call): Check IS_AGGR_TYPE, not TYPE_LANG_SPECIFIC. * typeck.c (convert_arguments): Likewise. From-SVN: r18846 --- gcc/cp/ChangeLog | 4 ++++ gcc/cp/call.c | 2 +- gcc/cp/typeck.c | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index a25b4415784..15d07097552 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,5 +1,9 @@ Thu Mar 26 11:16:30 1998 Jason Merrill + * call.c (build_over_call): Check IS_AGGR_TYPE, not + TYPE_LANG_SPECIFIC. + * typeck.c (convert_arguments): Likewise. + * decl.c (grokdeclarator): Remove const and volatile from type after setting constp and volatilep. diff --git a/gcc/cp/call.c b/gcc/cp/call.c index 880fce419ae..d9b0d410858 100644 --- a/gcc/cp/call.c +++ b/gcc/cp/call.c @@ -3241,7 +3241,7 @@ build_over_call (fn, convs, args, flags) < TYPE_PRECISION (double_type_node))) /* Convert `float' to `double'. */ val = cp_convert (double_type_node, val); - else if (TYPE_LANG_SPECIFIC (TREE_TYPE (val)) + else if (IS_AGGR_TYPE (TREE_TYPE (val)) && ! TYPE_HAS_TRIVIAL_INIT_REF (TREE_TYPE (val))) cp_warning ("cannot pass objects of type `%T' through `...'", TREE_TYPE (val)); diff --git a/gcc/cp/typeck.c b/gcc/cp/typeck.c index e2d40f5bb47..6336751db97 100644 --- a/gcc/cp/typeck.c +++ b/gcc/cp/typeck.c @@ -2974,7 +2974,7 @@ convert_arguments (return_loc, typelist, values, fndecl, flags) result = expr_tree_cons (NULL_TREE, cp_convert (double_type_node, val), result); - else if (TYPE_LANG_SPECIFIC (TREE_TYPE (val)) + else if (IS_AGGR_TYPE (TREE_TYPE (val)) && ! TYPE_HAS_TRIVIAL_INIT_REF (TREE_TYPE (val))) { cp_warning ("cannot pass objects of type `%T' through `...'",