From c3da6f12b809fb040bc5090ed36a461db4e9c3ad Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Fri, 27 Aug 1999 03:01:20 +0000 Subject: tree.c (copy_node): Improve documentation. * tree.c (copy_node): Improve documentation. (cplus_unsave_expr_now): Don't return a value. From-SVN: r28911 --- gcc/tree.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'gcc/tree.c') diff --git a/gcc/tree.c b/gcc/tree.c index 6b5630d..dcc0ac7 100644 --- a/gcc/tree.c +++ b/gcc/tree.c @@ -1127,8 +1127,11 @@ make_node (code) return t; } -/* Return a new node with the same contents as NODE - except that its TREE_CHAIN is zero and it has a fresh uid. */ +/* Return a new node with the same contents as NODE except that its + TREE_CHAIN is zero and it has a fresh uid. Unlike make_node, this + function always performs the allocation on the CURRENT_OBSTACK; + it's up to the caller to pick the right obstack before calling this + function. */ tree copy_node (node) @@ -2244,7 +2247,7 @@ array_type_nelts (type) if (! TREE_CONSTANT (min)) { STRIP_NOPS (min); - if (TREE_CODE (min) == SAVE_EXPR) + if (TREE_CODE (min) == SAVE_EXPR && SAVE_EXPR_RTL (min)) min = build (RTL_EXPR, TREE_TYPE (TYPE_MIN_VALUE (index_type)), 0, SAVE_EXPR_RTL (min)); else @@ -2254,7 +2257,7 @@ array_type_nelts (type) if (! TREE_CONSTANT (max)) { STRIP_NOPS (max); - if (TREE_CODE (max) == SAVE_EXPR) + if (TREE_CODE (max) == SAVE_EXPR && SAVE_EXPR_RTL (max)) max = build (RTL_EXPR, TREE_TYPE (TYPE_MAX_VALUE (index_type)), 0, SAVE_EXPR_RTL (max)); else -- cgit v1.1