From 40edd0bd03d4fc52b7d13ccbfb7f3d8acc53fe7b Mon Sep 17 00:00:00 2001 From: Alexandre Petit-Bianco Date: Fri, 21 Aug 1998 12:32:16 -0700 Subject: [PATCH] tree.def (LABELED_BLOCK_EXPR, [...]): New tree nodes. MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 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: r21895 --- gcc/tree.h | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/gcc/tree.h b/gcc/tree.h index 948787a1960..08bda4881ee 100644 --- a/gcc/tree.h +++ b/gcc/tree.h @@ -688,6 +688,17 @@ struct tree_vec #define TREE_OPERAND(NODE, I) (EXPR_CHECK (NODE)->exp.operands[I]) #define TREE_COMPLEXITY(NODE) (EXPR_CHECK (NODE)->exp.complexity) +/* In a LABELED_BLOCK_EXPR node. */ +#define LABELED_BLOCK_LABEL(NODE) TREE_OPERAND (NODE, 0) +#define LABELED_BLOCK_BODY(NODE) TREE_OPERAND (NODE, 1) + +/* In a EXIT_BLOCK_EXPR node. */ +#define EXIT_BLOCK_LABELED_BLOCK(NODE) TREE_OPERAND (NODE, 0) +#define EXIT_BLOCK_RETURN(NODE) TREE_OPERAND (NODE, 1) + +/* In a LOOP_EXPR node. */ +#define LOOP_EXPR_BODY(NODE) TREE_OPERAND (NODE, 0) + /* In a EXPR_WITH_FILE_LOCATION node. */ #define EXPR_WFL_NODE(NODE) TREE_OPERAND((NODE), 0) #define EXPR_WFL_FILENAME(NODE) (IDENTIFIER_POINTER ((NODE)->common.chain)) -- 2.30.2