aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/rtti.c
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@codesourcery.com>2000-05-06 15:52:11 +0000
committerNathan Sidwell <nathan@gcc.gnu.org>2000-05-06 15:52:11 +0000
commit1b846cccc633e057ec481250e21ee20461a4e5fd (patch)
treedf6ce9401647fcde37a1205382c2b1b7672eeba9 /gcc/cp/rtti.c
parenta47fed553cca4889ecffc6f6b075b4a403ad0cc5 (diff)
downloadgcc-1b846cccc633e057ec481250e21ee20461a4e5fd.zip
gcc-1b846cccc633e057ec481250e21ee20461a4e5fd.tar.gz
gcc-1b846cccc633e057ec481250e21ee20461a4e5fd.tar.bz2
rtti.c (ptmd_initializer): Set non-public, if class is incomplete.
* rtti.c (ptmd_initializer): Set non-public, if class is incomplete. * inc/cxxabi.h (__dynamic_cast): Explicitly say extern "C++". (__cxa_vec_new, __cxa_vec_ctor, __cxa_vec_dtor, __cxa_vec_delete): Likewise. * tinfo.cc (__dynamic_cast): Likewise. * vec.cc (__cxa_vec_new, __cxa_vec_ctor, __cxa_vec_dtor, __cxa_vec_delete): Likewise. From-SVN: r33726
Diffstat (limited to 'gcc/cp/rtti.c')
-rw-r--r--gcc/cp/rtti.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/cp/rtti.c b/gcc/cp/rtti.c
index b16faf7..426c5c3 100644
--- a/gcc/cp/rtti.c
+++ b/gcc/cp/rtti.c
@@ -1440,7 +1440,10 @@ ptmd_initializer (desc, target, non_public_ptr)
*non_public_ptr = 1;
}
if (!COMPLETE_TYPE_P (klass))
- flags |= 0x10;
+ {
+ flags |= 0x10;
+ *non_public_ptr = 1;
+ }
init = tree_cons (NULL_TREE, build_int_2 (flags, 0), init);
init = tree_cons (NULL_TREE,
build_unary_op (ADDR_EXPR,