summaryrefslogtreecommitdiff
path: root/gcc/stor-layout.c
diff options
context:
space:
mode:
authorkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>2000-03-26 19:01:55 +0000
committerkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>2000-03-26 19:01:55 +0000
commiteff5f0365cd41a4038f211f87d7102be5619f6f2 (patch)
tree31e1f65a65f2d08101e10be677ffa2b0f9d62f5c /gcc/stor-layout.c
parent2404485e4d84ae55a1db84a03cec1207762ea634 (diff)
downloadgcc-eff5f0365cd41a4038f211f87d7102be5619f6f2.tar.gz
* stor-layout.c (layout_type, set_sizetype): early_type_list is
now a list of TREE_LIST entries, not types. * tree.c (build_common_tree_nodes_2): Eliminate dupliate type sets. * java/decl.c (init_decl_processing): Call initialize_sizetypes once. Adjust order of making types. Make bitsize_*_node values. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@32751 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/stor-layout.c')
-rw-r--r--gcc/stor-layout.c18
1 files changed, 6 insertions, 12 deletions
diff --git a/gcc/stor-layout.c b/gcc/stor-layout.c
index ada43a0ca84..58ab3f54fda 100644
--- a/gcc/stor-layout.c
+++ b/gcc/stor-layout.c
@@ -1427,10 +1427,7 @@ layout_type (type)
/* If this type is created before sizetype has been permanently set,
record it so set_sizetype can fix it up. */
if (! sizetype_set)
- {
- TREE_CHAIN (type) = early_type_list;
- early_type_list = type;
- }
+ early_type_list = tree_cons (NULL_TREE, type, early_type_list);
}
/* Create and return a type for signed integers of PRECISION bits. */
@@ -1508,7 +1505,7 @@ set_sizetype (type)
int precision = MIN (oprecision + BITS_PER_UNIT_LOG + 1,
2 * HOST_BITS_PER_WIDE_INT);
unsigned int i;
- tree t, next;
+ tree t;
if (sizetype_set)
abort ();
@@ -1561,16 +1558,13 @@ set_sizetype (type)
/* Go down each of the types we already made and set the proper type
for the sizes in them. */
- for (t = early_type_list; t != 0; t = next)
+ for (t = early_type_list; t != 0; t = TREE_CHAIN (t))
{
- next = TREE_CHAIN (t);
- TREE_CHAIN (t) = 0;
-
- if (TREE_CODE (t) != INTEGER_TYPE)
+ if (TREE_CODE (TREE_VALUE (t)) != INTEGER_TYPE)
abort ();
- TREE_TYPE (TYPE_SIZE (t)) = bitsizetype;
- TREE_TYPE (TYPE_SIZE_UNIT (t)) = sizetype;
+ TREE_TYPE (TYPE_SIZE (TREE_VALUE (t))) = bitsizetype;
+ TREE_TYPE (TYPE_SIZE_UNIT (TREE_VALUE (t))) = sizetype;
}
early_type_list = 0;