diff options
author | Nathan Sidwell <nathan@codesourcery.com> | 2000-08-17 15:05:43 +0000 |
---|---|---|
committer | Nathan Sidwell <nathan@gcc.gnu.org> | 2000-08-17 15:05:43 +0000 |
commit | d13b34e98af1a59ef4b4c7ed9058227bc8f97314 (patch) | |
tree | f506e6d5babf8445261e0e3fe88c592415f10ffd /gcc/cp/inc/cxxabi.h | |
parent | 2f1b80afded2f0dce530ea8733ebc75a1ea5fe61 (diff) | |
download | gcc-d13b34e98af1a59ef4b4c7ed9058227bc8f97314.zip gcc-d13b34e98af1a59ef4b4c7ed9058227bc8f97314.tar.gz gcc-d13b34e98af1a59ef4b4c7ed9058227bc8f97314.tar.bz2 |
cxxabi.h (__cxa_vec_new2, [...]): Declare.
* inc/cxxabi.h (__cxa_vec_new2, __cxa_vec_new3): Declare.
(__cxa_vec_delete2, __cxa_vec_delete3): Declare.
* vec.cc (__cxa_vec_new2, __cxa_vec_new3): Implement.
(__cxa_vec_delete2, __cxa_vec_delete3): Implement.
(__cxa_vec_new): Use __cxa_vec_new2.
(__cxa_vec_delete): Use __cxa_vec_delete2.
From-SVN: r35761
Diffstat (limited to 'gcc/cp/inc/cxxabi.h')
-rw-r--r-- | gcc/cp/inc/cxxabi.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/gcc/cp/inc/cxxabi.h b/gcc/cp/inc/cxxabi.h index 2a7217f..908d7c4 100644 --- a/gcc/cp/inc/cxxabi.h +++ b/gcc/cp/inc/cxxabi.h @@ -437,6 +437,24 @@ void *__cxa_vec_new (__SIZE_TYPE__ __element_count, void (*__constructor) (void *), void (*__destructor) (void *)); +extern "C" +void *__cxa_vec_new2 (__SIZE_TYPE__ __element_count, + __SIZE_TYPE__ __element_size, + __SIZE_TYPE__ __padding_size, + void (*__constructor) (void *), + void (*__destructor) (void *), + void *(*__alloc) (__SIZE_TYPE__), + void (*__dealloc) (void *)); + +extern "C" +void *__cxa_vec_new3 (__SIZE_TYPE__ __element_count, + __SIZE_TYPE__ __element_size, + __SIZE_TYPE__ __padding_size, + void (*__constructor) (void *), + void (*__destructor) (void *), + void *(*__alloc) (__SIZE_TYPE__), + void (*__dealloc) (void *, __SIZE_TYPE__)); + /* construct array */ extern "C" void __cxa_vec_ctor (void *__array_address, @@ -467,6 +485,20 @@ void __cxa_vec_delete (void *__array_address, __SIZE_TYPE__ __padding_size, void (*__destructor) (void *)); +extern "C" +void __cxa_vec_delete2 (void *__array_address, + __SIZE_TYPE__ __element_size, + __SIZE_TYPE__ __padding_size, + void (*__destructor) (void *), + void (*__dealloc) (void *)); + +extern "C" +void __cxa_vec_delete3 (void *__array_address, + __SIZE_TYPE__ __element_size, + __SIZE_TYPE__ __padding_size, + void (*__destructor) (void *), + void (*__dealloc) (void *, __SIZE_TYPE__)); + /* demangling routines */ extern "C" |