This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
[perl #119949] Stop undef *_, goto &sub from crashing
[perl5.git] / malloc_ctl.h
index 2bce0c1..d746372 100644 (file)
@@ -14,17 +14,16 @@ struct perl_mstats {
 };
 typedef struct perl_mstats perl_mstats_t;
 
-START_EXTERN_C
-Malloc_t Perl_malloc (MEM_SIZE nbytes);
-Malloc_t Perl_calloc (MEM_SIZE elements, MEM_SIZE size);
-Malloc_t Perl_realloc (Malloc_t where, MEM_SIZE nbytes);
+PERL_CALLCONV Malloc_t Perl_malloc (MEM_SIZE nbytes);
+PERL_CALLCONV Malloc_t Perl_calloc (MEM_SIZE elements, MEM_SIZE size);
+PERL_CALLCONV Malloc_t Perl_realloc (Malloc_t where, MEM_SIZE nbytes);
 /* 'mfree' rather than 'free', since there is already a 'perl_free'
  * that causes clashes with case-insensitive linkers */
-Free_t   Perl_mfree (Malloc_t where);
-END_EXTERN_C
+PERL_CALLCONV Free_t   Perl_mfree (Malloc_t where);
 
 #ifndef NO_MALLOC_DYNAMIC_CFG
 
+/* IV configuration data */
 enum {
   MallocCfg_FIRST_SBRK,
   MallocCfg_MIN_SBRK,
@@ -47,8 +46,15 @@ enum {
 
   MallocCfg_last
 };
+/* char* configuration data */
+enum {
+  MallocCfgP_emergency_buffer,
+  MallocCfgP_emergency_buffer_prepared,
+  MallocCfgP_last
+};
 START_EXTERN_C
 extern IV *MallocCfg_ptr;
+extern char **MallocCfgP_ptr;
 END_EXTERN_C
 
 #endif