aboutsummaryrefslogtreecommitdiff
path: root/gcc/stor-layout.c
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@gcc.gnu.org>2004-08-20 14:17:39 +0000
committerNathan Sidwell <nathan@gcc.gnu.org>2004-08-20 14:17:39 +0000
commit3224beadb4cebe8137600efe3d13082f40076cc1 (patch)
treed83bea008f3292c8941443cff196c20fd0023ab4 /gcc/stor-layout.c
parent346d5977dd043c0f83a7e68169a970bd4a4a1b31 (diff)
downloadgcc-3224beadb4cebe8137600efe3d13082f40076cc1.zip
gcc-3224beadb4cebe8137600efe3d13082f40076cc1.tar.gz
gcc-3224beadb4cebe8137600efe3d13082f40076cc1.tar.bz2
stor-layout.c (initialize_sizetypes): Set SIZETYPE earlier, clear cache on copied sizetype.
* stor-layout.c (initialize_sizetypes): Set SIZETYPE earlier, clear cache on copied sizetype. * ada/utils2.c (build_allocator): Use build_int_cst for negative size types. * cp/class.c (build_vtbl_initializer): Use build_int_cst for negative size types. * cp/decl.c (complete_array_type): Likewise. * cp/method.c (finish_thunk): Likewise. From-SVN: r86320
Diffstat (limited to 'gcc/stor-layout.c')
-rw-r--r--gcc/stor-layout.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/stor-layout.c b/gcc/stor-layout.c
index 156702f..19de9b6 100644
--- a/gcc/stor-layout.c
+++ b/gcc/stor-layout.c
@@ -1863,12 +1863,12 @@ initialize_sizetypes (void)
TYPE_MODE (t) = SImode;
TYPE_ALIGN (t) = GET_MODE_ALIGNMENT (SImode);
TYPE_USER_ALIGN (t) = 0;
+ TYPE_IS_SIZETYPE (t) = 1;
TYPE_SIZE (t) = build_int_cst (t, GET_MODE_BITSIZE (SImode), 0);
TYPE_SIZE_UNIT (t) = build_int_cst (t, GET_MODE_SIZE (SImode), 0);
TYPE_UNSIGNED (t) = 1;
TYPE_PRECISION (t) = GET_MODE_BITSIZE (SImode);
TYPE_MIN_VALUE (t) = build_int_cst (t, 0, 0);
- TYPE_IS_SIZETYPE (t) = 1;
/* 1000 avoids problems with possible overflow and is certainly
larger than any size value we'd want to be storing. */
@@ -1878,6 +1878,8 @@ initialize_sizetypes (void)
size_int_wide. */
sizetype = t;
bitsizetype = copy_node (t);
+ TYPE_CACHED_VALUES (bitsizetype) = NULL_TREE;
+ TYPE_CACHED_VALUES_P (bitsizetype) = 0;
}
/* Set sizetype to TYPE, and initialize *sizetype accordingly.