Revert call.c 1.173 change, do same effect, but more obviously.

* call.c (perform_implicit_conversion): Deal with error_mark_node.

From-SVN: r29478
This commit is contained in:
Nathan Sidwell 1999-09-17 18:25:54 +00:00 committed by Nathan Sidwell
parent 963d575811
commit b5534c6553
2 changed files with 11 additions and 8 deletions

View File

@ -1,3 +1,7 @@
1999-09-17 Nathan Sidwell <nathan@acm.org>
* call.c (perform_implicit_conversion): Deal with error_mark_node.
1999-09-17 Mark Mitchell <mark@codesourcery.com> 1999-09-17 Mark Mitchell <mark@codesourcery.com>
* decl.c (warn_extern_redeclared_static): Don't get confused by * decl.c (warn_extern_redeclared_static): Don't get confused by
@ -7,10 +11,6 @@
* decl.c (expand_static_init): Make sure assignments to local * decl.c (expand_static_init): Make sure assignments to local
statics actually occur. statics actually occur.
1999-09-17 Nathan Sidwell <nathan@acm.org>
* call.c (perform_implicit_conversion): Deal with error_mark_node.
1999-09-17 Mark Mitchell <mark@codesourcery.com> 1999-09-17 Mark Mitchell <mark@codesourcery.com>
* cp-tree.h (poplevel_class): Declare. * cp-tree.h (poplevel_class): Declare.

View File

@ -5126,12 +5126,15 @@ perform_implicit_conversion (type, expr)
tree type; tree type;
tree expr; tree expr;
{ {
tree conv = implicit_conversion (type, TREE_TYPE (expr), expr, tree conv;
LOOKUP_NORMAL);
if (expr == error_mark_node)
return error_mark_node;
conv = implicit_conversion (type, TREE_TYPE (expr), expr,
LOOKUP_NORMAL);
if (!conv || ICS_BAD_FLAG (conv)) if (!conv || ICS_BAD_FLAG (conv))
{ {
if (expr != error_mark_node) cp_error ("could not convert `%E' to `%T'", expr, type);
cp_error ("could not convert `%E' to `%T'", expr, type);
return error_mark_node; return error_mark_node;
} }