From 86f11a3d4085bbaf2b72fce18f55bd5a0cfc46d3 Mon Sep 17 00:00:00 2001 From: "Craig A. Berry" Date: Sun, 9 Sep 2012 21:27:44 -0500 Subject: Fix C++, MYMALLOC, sdbm combination. The prototypes for the home-grown malloc replacements were not protected with extern "C" declarations, so linking the SDBM_File extension failed when configuring with -Dusemymalloc=y and building with C++. --- ext/SDBM_File/sdbm/sdbm.h | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'ext') diff --git a/ext/SDBM_File/sdbm/sdbm.h b/ext/SDBM_File/sdbm/sdbm.h index 2b8d0e9463..2ada7a18ca 100644 --- a/ext/SDBM_File/sdbm/sdbm.h +++ b/ext/SDBM_File/sdbm/sdbm.h @@ -179,10 +179,19 @@ extern long sdbm_hash proto((const char *, int)); # define realloc Perl_realloc # define free Perl_mfree +#ifdef __cplusplus +extern "C" { +#endif + Malloc_t Perl_malloc proto((MEM_SIZE nbytes)); Malloc_t Perl_calloc proto((MEM_SIZE elements, MEM_SIZE size)); Malloc_t Perl_realloc proto((Malloc_t where, MEM_SIZE nbytes)); Free_t Perl_mfree proto((Malloc_t where)); + +#ifdef __cplusplus +} +#endif + #endif /* MYMALLOC */ #ifdef I_STRING -- cgit v1.2.1