X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=Types.xs;h=8367cba9949c64a39938be2d0c7a47e5a8ec98c2;hb=67165b7d215ffac8a1c56642fbffbf2715b9e6d1;hp=27d5d435dde1c9650d9af67167d4325dba9f0eca;hpb=443e2c8cd23ae55797e10bc4d51314d63fb68a4d;p=perl%2Fmodules%2FLexical-Types.git diff --git a/Types.xs b/Types.xs index 27d5d43..8367cba 100644 --- a/Types.xs +++ b/Types.xs @@ -45,6 +45,11 @@ /* ... Thread safety and multiplicity ...................................... */ +/* Safe unless stated otherwise in Makefile.PL */ +#ifndef LT_FORKSAFE +# define LT_FORKSAFE 1 +#endif + #ifndef LT_MULTIPLICITY # if defined(MULTIPLICITY) || defined(PERL_IMPLICIT_CONTEXT) # define LT_MULTIPLICITY 1 @@ -147,6 +152,11 @@ typedef SV lt_hint_t; #include "ptable.h" +/* PerlMemShared_free() needs the [ap]PTBLMS_? default values */ +#define ptable_seen_store(T, K, V) ptable_seen_store(aPTBLMS_ (T), (K), (V)) +#define ptable_seen_clear(T) ptable_seen_clear(aPTBLMS_ (T)) +#define ptable_seen_free(T) ptable_seen_free(aPTBLMS_ (T)) + #endif /* !LT_HAS_RPEEP */ /* ... Global data ......................................................... */ @@ -369,6 +379,7 @@ STATIC SV *lt_hint(pTHX) { /* PerlMemShared_free() needs the [ap]PTBLMS_? default values */ #define ptable_map_store(T, K, V) ptable_map_store(aPTBLMS_ (T), (K), (V)) +#define ptable_map_delete(T, K) ptable_map_delete(aPTBLMS_ (T), (K)) STATIC ptable *lt_op_map = NULL; @@ -833,6 +844,7 @@ BOOT: stash = gv_stashpvn(__PACKAGE__, __PACKAGE_LEN__, 1); newCONSTSUB(stash, "LT_THREADSAFE", newSVuv(LT_THREADSAFE)); + newCONSTSUB(stash, "LT_FORKSAFE", newSVuv(LT_FORKSAFE)); } lt_setup();