expr.c (cplus_expand_expr, [...]): Use expand_start_stmt_expr and expand_end_stmt_expr directly.
* expr.c (cplus_expand_expr, case STMT_EXPR): Use expand_start_stmt_expr and expand_end_stmt_expr directly. Set RTL_EXPR_HAS_NO_SCOPE. * pt.c (instantiate_decl): Clear TI_PENDING_TEMPLATE_FLAG a little later. * dump.c (dequeue_and_dump): Dump SCOPE_NO_CLEANUPS_P. From-SVN: r32345
This commit is contained in:
parent
9f93702662
commit
971cbc146e
@ -1,3 +1,14 @@
|
|||||||
|
2000-03-05 Mark Mitchell <mark@codesourcery.com>
|
||||||
|
|
||||||
|
* expr.c (cplus_expand_expr, case STMT_EXPR): Use
|
||||||
|
expand_start_stmt_expr and expand_end_stmt_expr directly. Set
|
||||||
|
RTL_EXPR_HAS_NO_SCOPE.
|
||||||
|
|
||||||
|
* pt.c (instantiate_decl): Clear TI_PENDING_TEMPLATE_FLAG a little
|
||||||
|
later.
|
||||||
|
|
||||||
|
* dump.c (dequeue_and_dump): Dump SCOPE_NO_CLEANUPS_P.
|
||||||
|
|
||||||
2000-03-05 Nathan Sidwell <nathan@codesourcery.com>
|
2000-03-05 Nathan Sidwell <nathan@codesourcery.com>
|
||||||
|
|
||||||
* call.c (convert_like): Macrofy.
|
* call.c (convert_like): Macrofy.
|
||||||
|
@ -768,6 +768,8 @@ dequeue_and_dump (di)
|
|||||||
dump_string (di, "end");
|
dump_string (di, "end");
|
||||||
if (SCOPE_NULLIFIED_P (t))
|
if (SCOPE_NULLIFIED_P (t))
|
||||||
dump_string (di, "null");
|
dump_string (di, "null");
|
||||||
|
if (!SCOPE_NO_CLEANUPS_P (t))
|
||||||
|
dump_string (di, "clnp");
|
||||||
dump_next_stmt (di, t);
|
dump_next_stmt (di, t);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -145,9 +145,10 @@ cplus_expand_expr (exp, target, tmode, modifier)
|
|||||||
|
|
||||||
case STMT_EXPR:
|
case STMT_EXPR:
|
||||||
{
|
{
|
||||||
tree rtl_expr = begin_stmt_expr ();
|
tree rtl_expr = expand_start_stmt_expr ();
|
||||||
expand_stmt (STMT_EXPR_STMT (exp));
|
expand_stmt (STMT_EXPR_STMT (exp));
|
||||||
finish_stmt_expr (rtl_expr);
|
expand_end_stmt_expr (rtl_expr);
|
||||||
|
RTL_EXPR_HAS_NO_SCOPE (rtl_expr) = 1;
|
||||||
return expand_expr (rtl_expr, target, tmode, modifier);
|
return expand_expr (rtl_expr, target, tmode, modifier);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -9569,9 +9569,6 @@ instantiate_decl (d)
|
|||||||
try to instantiate it again. */
|
try to instantiate it again. */
|
||||||
DECL_TEMPLATE_INSTANTIATED (d) = 1;
|
DECL_TEMPLATE_INSTANTIATED (d) = 1;
|
||||||
|
|
||||||
/* And we're not deferring instantiation any more. */
|
|
||||||
TI_PENDING_TEMPLATE_FLAG (DECL_TEMPLATE_INFO (d)) = 0;
|
|
||||||
|
|
||||||
/* Regenerate the declaration in case the template has been modified
|
/* Regenerate the declaration in case the template has been modified
|
||||||
by a subsequent redeclaration. */
|
by a subsequent redeclaration. */
|
||||||
regenerate_decl_from_template (d, td);
|
regenerate_decl_from_template (d, td);
|
||||||
@ -9611,6 +9608,9 @@ instantiate_decl (d)
|
|||||||
expand_body (finish_function (lineno, 0));
|
expand_body (finish_function (lineno, 0));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* We're not deferring instantiation any more. */
|
||||||
|
TI_PENDING_TEMPLATE_FLAG (DECL_TEMPLATE_INFO (d)) = 0;
|
||||||
|
|
||||||
out:
|
out:
|
||||||
lineno = line;
|
lineno = line;
|
||||||
input_filename = file;
|
input_filename = file;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user