rtti.c (build_dynamic_cast_1): Set "C" linkage for new abi runtime.

* rtti.c (build_dynamic_cast_1): Set "C" linkage for new abi
	runtime.
	* cp/tinfo.cc (__dynamic_cast): Likewise.
	* cp/inc/cxxabi.h (__dynamic_cast): Likewise.

From-SVN: r35588
This commit is contained in:
Nathan Sidwell 2000-08-09 09:57:55 +00:00 committed by Nathan Sidwell
parent 68c9819964
commit 7e8dad1827
4 changed files with 10 additions and 7 deletions

View File

@ -1,3 +1,10 @@
2000-08-09 Nathan Sidwell <nathan@codesourcery.com>
* rtti.c (build_dynamic_cast_1): Set "C" linkage for new abi
runtime.
* cp/tinfo.cc (__dynamic_cast): Likewise.
* cp/inc/cxxabi.h (__dynamic_cast): Likewise.
2000-08-09 Nathan Sidwell <nathan@codesourcery.com> 2000-08-09 Nathan Sidwell <nathan@codesourcery.com>
* cvt.c (convert_to_pointer_force): Fix error message when * cvt.c (convert_to_pointer_force): Fix error message when

View File

@ -414,7 +414,7 @@ protected:
}; };
/* dynamic cast runtime */ /* dynamic cast runtime */
extern "C++" extern "C"
void *__dynamic_cast (const void *__src_ptr, /* object started from */ void *__dynamic_cast (const void *__src_ptr, /* object started from */
const __class_type_info *__src_type, /* static type of object */ const __class_type_info *__src_type, /* static type of object */
const __class_type_info *__dst_type, /* desired target type */ const __class_type_info *__dst_type, /* desired target type */

View File

@ -846,11 +846,7 @@ build_dynamic_cast_1 (type, expr)
(NULL_TREE, ptrdiff_type_node, void_list_node)))); (NULL_TREE, ptrdiff_type_node, void_list_node))));
} }
tmp = build_function_type (ptr_type_node, tmp); tmp = build_function_type (ptr_type_node, tmp);
if (new_abi_rtti_p ()) dcast_fn = build_library_fn_ptr (name, tmp);
/* We want its name mangling. */
dcast_fn = build_cp_library_fn_ptr (name, tmp);
else
dcast_fn = build_library_fn_ptr (name, tmp);
pop_nested_namespace (ns); pop_nested_namespace (ns);
dynamic_cast_node = dcast_fn; dynamic_cast_node = dcast_fn;
} }

View File

@ -1165,7 +1165,7 @@ __do_upcast (const __class_type_info *dst, const void *obj_ptr,
} }
// this is the external interface to the dynamic cast machinery // this is the external interface to the dynamic cast machinery
extern "C++" void * extern "C" void *
__dynamic_cast (const void *src_ptr, // object started from __dynamic_cast (const void *src_ptr, // object started from
const __class_type_info *src_type, // type of the starting object const __class_type_info *src_type, // type of the starting object
const __class_type_info *dst_type, // desired target type const __class_type_info *dst_type, // desired target type