aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree.c
diff options
context:
space:
mode:
authorMark Mitchell <mark@codesourcery.com>2001-01-04 19:01:22 +0000
committerMark Mitchell <mmitchel@gcc.gnu.org>2001-01-04 19:01:22 +0000
commit3af4c2573f24b5aeab974c75c47480ed40553e0a (patch)
tree43183e5b0e43cb60aef06b6903b258cfc588f7f5 /gcc/tree.c
parenta41d085545706c581e48cdc9c7f3bdba8310c25b (diff)
downloadgcc-3af4c2573f24b5aeab974c75c47480ed40553e0a.zip
gcc-3af4c2573f24b5aeab974c75c47480ed40553e0a.tar.gz
gcc-3af4c2573f24b5aeab974c75c47480ed40553e0a.tar.bz2
tree.c (copy_node): Remove documentation about obstacks.
* tree.c (copy_node): Remove documentation about obstacks. (buidl1): Check that nobody tries to build 2-argument nodes this way. * call.c (build_conv): Don't use build1 for USER_CONV. * pt.c (tsubst_copy): Or for PREINCREMENT_EXPR and similar nodes. From-SVN: r38686
Diffstat (limited to 'gcc/tree.c')
-rw-r--r--gcc/tree.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/gcc/tree.c b/gcc/tree.c
index a836b99..865aacd 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -469,10 +469,7 @@ make_lang_type (code)
}
/* 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_CHAIN is zero and it has a fresh uid. */
tree
copy_node (node)
@@ -2424,6 +2421,13 @@ build1 (code, type, node)
kind = e_kind;
#endif
+#ifdef ENABLE_CHECKING
+ if (TREE_CODE_CLASS (code) == '2'
+ || TREE_CODE_CLASS (code) == '<'
+ || TREE_CODE_LENGTH (code) != 1)
+ abort ();
+#endif /* ENABLE_CHECKING */
+
length = sizeof (struct tree_exp);
t = ggc_alloc_tree (length);