summaryrefslogtreecommitdiff
path: root/gcc/cp/rtti.c
diff options
context:
space:
mode:
authormmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>2000-11-19 21:07:24 +0000
committermmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>2000-11-19 21:07:24 +0000
commit1a361d3efefa04669e1fee3502d24e39b7b14e71 (patch)
tree5861a1bb1ac543a2762679aef288e1adb7e494e8 /gcc/cp/rtti.c
parent2d05094ae9a891ffd1f68802987c7dd9d387ce5e (diff)
downloadgcc-1a361d3efefa04669e1fee3502d24e39b7b14e71.tar.gz
* decl.c (init_decl_processing): Correct name of pure virtual
function under the new ABI. * rtti.c (throw_bad_cast): Likewise, for bad cast function. (throw_bad_typeid): Likewise for bad typeid function. * libsupc++/exception_support.cc (__throw_bad_cast): Name it __cxa_bad_cast under the new ABI. (__throw_bad_typeid): Name it __cxa_bad_typeid under the new ABI. * libsupc++/pure.cc (__pure_virtual): Name it __cxa_pure_virtual under the new ABI. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@37575 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp/rtti.c')
-rw-r--r--gcc/cp/rtti.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/gcc/cp/rtti.c b/gcc/cp/rtti.c
index f172c5fe667..3a54fc4753d 100644
--- a/gcc/cp/rtti.c
+++ b/gcc/cp/rtti.c
@@ -182,7 +182,9 @@ build_headof (exp)
static tree
throw_bad_cast ()
{
- tree fn = get_identifier ("__throw_bad_cast");
+ tree fn = get_identifier (flag_new_abi
+ ? "__cxa_bad_cast" :
+ "__throw_bad_cast");
if (IDENTIFIER_GLOBAL_VALUE (fn))
fn = IDENTIFIER_GLOBAL_VALUE (fn);
else
@@ -195,7 +197,9 @@ throw_bad_cast ()
static tree
throw_bad_typeid ()
{
- tree fn = get_identifier ("__throw_bad_typeid");
+ tree fn = get_identifier (flag_new_abi
+ ? "__cxa_bad_typeid"
+ : "__throw_bad_typeid");
if (IDENTIFIER_GLOBAL_VALUE (fn))
fn = IDENTIFIER_GLOBAL_VALUE (fn);
else