summaryrefslogtreecommitdiff
path: root/gcc/cp/class.c
diff options
context:
space:
mode:
authornathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>2004-08-20 14:17:39 +0000
committernathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>2004-08-20 14:17:39 +0000
commit34399e1acc3b0818830254a7ea8f6676b71a9051 (patch)
treed83bea008f3292c8941443cff196c20fd0023ab4 /gcc/cp/class.c
parent81f0a5aa36ace9fa9c6b7755182c3877bc370a10 (diff)
downloadgcc-34399e1acc3b0818830254a7ea8f6676b71a9051.tar.gz
* 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@86320 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp/class.c')
-rw-r--r--gcc/cp/class.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/cp/class.c b/gcc/cp/class.c
index 1989dca91af..c7294146b3a 100644
--- a/gcc/cp/class.c
+++ b/gcc/cp/class.c
@@ -7278,7 +7278,8 @@ build_vtbl_initializer (tree binfo,
vid.ctor_vtbl_p = !same_type_p (BINFO_TYPE (rtti_binfo), t);
vid.generate_vcall_entries = true;
/* The first vbase or vcall offset is at index -3 in the vtable. */
- vid.index = ssize_int (-3 * TARGET_VTABLE_DATA_ENTRY_DISTANCE);
+ vid.index = build_int_cst (ssizetype,
+ -3 * TARGET_VTABLE_DATA_ENTRY_DISTANCE, -1);
/* Add entries to the vtable for RTTI. */
build_rtti_vtbl_entries (binfo, &vid);