From 0044c65c7804dd29b4779883dfcda536d847eb3b Mon Sep 17 00:00:00 2001 From: Alexandre Petit-Bianco Date: Fri, 21 Aug 1998 12:32:18 -0700 Subject: [PATCH] tree.def (LABELED_BLOCK_EXPR, [...]): New tree nodes. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit � * tree.def (LABELED_BLOCK_EXPR, EXIT_BLOCK_EXPR): New tree nodes. * tree.h (LABELED_BLOCK_LABEL, LABELED_BLOCK_BODY, EXIT_BLOCK_LABELED_BLOCK, EXIT_BLOCK_RETURN, LOOP_EXPR_BODY): New macros. * expr.c (expand_expr): Handle LABELED_BLOCK_EXPR and EXIT_BLOCK_EXPR. From-SVN: r21896 --- gcc/tree.def | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/gcc/tree.def b/gcc/tree.def index 2519574f9552..c434dbbf38f0 100644 --- a/gcc/tree.def +++ b/gcc/tree.def @@ -742,6 +742,16 @@ DEFTREECODE (EXIT_EXPR, "exit_expr", 's', 1) The type should be void and the value should be ignored. */ DEFTREECODE (LOOP_EXPR, "loop_expr", 's', 1) +/* A labeled block. Operand 0 is the label that will be generated to + mark the end of the block. + Operand 1 is the labeled block body. */ +DEFTREECODE (LABELED_BLOCK_EXPR, "labeled_block_expr", 'e', 2) + +/* Exit a labeled block, possibly returning a value. Operand 0 is a + LABELED_BLOCK_EXPR to exit. Operand 1 is the value to return. It + may be left null. */ +DEFTREECODE (EXIT_BLOCK_EXPR, "exit_block_expr", 'e', 2) + /* Annotates a tree node (usually an expression) with source location information: a file name (EXPR_WFL_FILENAME); a line number (EXPR_WFL_LINENO); and column number (EXPR_WFL_COLNO). It is