aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1996-09-24 08:33:44 -0400
committerRichard Kenner <kenner@gcc.gnu.org>1996-09-24 08:33:44 -0400
commitb14b81294e0cb0e1951632b9f0909eca6b7ea297 (patch)
tree9be458077762c31c632506b61b7dc4d2f88cbfa0
parent1a0bdd2991c6717edb37cbdcfae03842cc3b0a38 (diff)
downloadgcc-b14b81294e0cb0e1951632b9f0909eca6b7ea297.zip
gcc-b14b81294e0cb0e1951632b9f0909eca6b7ea297.tar.gz
gcc-b14b81294e0cb0e1951632b9f0909eca6b7ea297.tar.bz2
(copy_node): Fix error in last change.
From-SVN: r12835
-rw-r--r--gcc/tree.c14
1 files changed, 5 insertions, 9 deletions
diff --git a/gcc/tree.c b/gcc/tree.c
index 866bf2f..a79c1c6 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -1133,17 +1133,13 @@ copy_node (node)
for REAL_CST, since the number of words is machine-dependent due
to varying size and alignment of `double'. */
if (code == INTEGER_CST)
- {
- length = sizeof (struct tree_int_cst);
- break;
- }
+ length = sizeof (struct tree_int_cst);
else if (code == REAL_CST)
- {
- length = sizeof (struct tree_real_cst);
- break;
- }
+ length = sizeof (struct tree_real_cst);
else
- abort();
+ length = (sizeof (struct tree_common)
+ + tree_code_length[(int) code] * sizeof (char *));
+ break;
case 'x': /* something random, like an identifier. */
length = sizeof (struct tree_common)