ir.texi: Document BIND_EXPR, LOOP_EXPR, and EXIT_EXPR.

* ir.texi: Document BIND_EXPR, LOOP_EXPR, and EXIT_EXPR.
	* dump.c (dequeue_and_dump): Dump them.

From-SVN: r29835
This commit is contained in:
Mark Mitchell 1999-10-05 23:59:27 +00:00 committed by Mark Mitchell
parent cd6642cbec
commit 3651fb44bb
3 changed files with 29 additions and 2 deletions

View File

@ -1,7 +1,8 @@
1999-10-05 Mark Mitchell <mark@codesourcery.com>
* ir.texi: Document LOOP_EXPR and EXIT_EXPR.
* ir.texi: Document BIND_EXPR, LOOP_EXPR, and EXIT_EXPR.
* dump.c (dequeue_and_dump): Dump them.
* method.c (synthesize_method): Call setup_vtbl_ptr for destructors.
* decl.c (start_function): Set current_in_charge_parm for

View File

@ -903,6 +903,24 @@ dequeue_and_dump (di)
dump_child ("stmt", STMT_EXPR_STMT (t));
break;
case BIND_EXPR:
if (dump_children_p)
{
dump_child ("vars", TREE_OPERAND (t, 0));
dump_child ("body", TREE_OPERAND (t, 1));
}
break;
case LOOP_EXPR:
if (dump_children_p)
dump_child ("body", TREE_OPERAND (t, 0));
break;
case EXIT_EXPR:
if (dump_children_p)
dump_child ("cond", TREE_OPERAND (t, 0));
break;
case TARGET_EXPR:
if (dump_children_p)
{

View File

@ -1466,6 +1466,7 @@ The @code{WHILE_BODY} is the body of the loop.
@tindex CALL_EXPR
@tindex CONSTRUCTOR
@tindex STMT_EXPR
@tindex BIND_EXPR
@tindex LOOP_EXPR
@tindex EXIT_EXPR
@tindex ARRAY_REF
@ -1819,6 +1820,13 @@ contained in the expression; this is always a @code{COMPOUND_STMT}. The
value of the expression is the value of the last sub-statement in the
@code{COMPOUND_STMT}.
@item BIND_EXPR
These nodes represent local blocks. The first operand is a list of
temporary variables, connected via their @code{TREE_CHAIN} field. These
will never require cleanups. The scope of these variables is just the
body of the @code{BIND_EXPR}. The body of the @code{BIND_EXPR} is the
second operand.
@item LOOP_EXPR
These nodes represent ``infinite'' loops. The @code{LOOP_EXPR_BODY}
represents the body of the loop. It should be executed forever, unless