aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/inc/cxxabi.h
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@gcc.gnu.org>2000-04-06 11:53:30 +0000
committerNathan Sidwell <nathan@gcc.gnu.org>2000-04-06 11:53:30 +0000
commitb7b30102a72fbfc591d428af8065501e32715b0e (patch)
tree8c1cfd58e68771fa6539158e0c6f51aab64f7757 /gcc/cp/inc/cxxabi.h
parent6dfc58ed2691b3d50c565c368831b56fff6b47de (diff)
downloadgcc-b7b30102a72fbfc591d428af8065501e32715b0e.zip
gcc-b7b30102a72fbfc591d428af8065501e32715b0e.tar.gz
gcc-b7b30102a72fbfc591d428af8065501e32715b0e.tar.bz2
vec.cc: New file.
* vec.cc: New file. * Make-lang.in (CXX_LIB2FUNCS): Add it. (vec.o): Build it. * inc/cxxabi.h (__cxa_vec_new, __cxa_vec_ctor, __cxa_vec_dtor, __cxa_vec_delete): Declare. From-SVN: r32967
Diffstat (limited to 'gcc/cp/inc/cxxabi.h')
-rw-r--r--gcc/cp/inc/cxxabi.h28
1 files changed, 27 insertions, 1 deletions
diff --git a/gcc/cp/inc/cxxabi.h b/gcc/cp/inc/cxxabi.h
index 26cec3f..1bc7782 100644
--- a/gcc/cp/inc/cxxabi.h
+++ b/gcc/cp/inc/cxxabi.h
@@ -385,7 +385,33 @@ void *__dynamic_cast (const void *src_ptr, /* object started from */
-2: src_type is not a public base of dst_type
-3: src_type is a multiple public non-virtual base of dst_type */
-
+/* array ctor/dtor routines */
+
+/* allocate and construct array */
+void *__cxa_vec_new (size_t __element_count,
+ size_t __element_size,
+ size_t __padding_size,
+ void (*__constructor) (void *),
+ void (*__destructor) (void *));
+
+/* construct array */
+void __cxa_vec_ctor (void *__array_address,
+ size_t __element_count,
+ size_t __element_size,
+ void (*__constructor) (void *),
+ void (*__destructor) (void *));
+
+/* destruct array */
+void __cxa_vec_dtor (void *__array_address,
+ size_t __element_count,
+ size_t __element_size,
+ void (*__destructor) (void *));
+
+/* destruct and release array */
+void __cxa_vec_delete (void *__array_address,
+ size_t __element_size,
+ size_t __padding_size,
+ void (*__destructor) (void *));
} /* namespace __cxxabiv1 */