Fix the effects of 27136 on Win32 with DEBUGGING and PERL_IMPLICIT_SYS
Steve Hay [Fri, 10 Feb 2006 11:20:23 +0000 (11:20 +0000)]
p4raw-id: //depot/perl@27148

embed.fnc
embed.h
hv.c
proto.h
sv.c

index 90294ba..a3c70d6 100644 (file)
--- a/embed.fnc
+++ b/embed.fnc
@@ -1043,7 +1043,7 @@ s |void   |hsplit         |NN HV *hv
 s      |void   |hfreeentries   |NN HV *hv
 sa     |HE*    |new_he
 sanR   |HEK*   |save_hek_flags |NN const char *str|I32 len|U32 hash|int flags
-sn     |void   |hv_magic_check |NN HV *hv|NN bool *needs_copy|NN bool *needs_store
+s      |void   |hv_magic_check |NN HV *hv|NN bool *needs_copy|NN bool *needs_store
 s      |void   |unshare_hek_or_pvn|NULLOK const HEK* hek|NULLOK const char* str|I32 len|U32 hash
 sR     |HEK*   |share_hek_flags|NN const char* sv|I32 len|U32 hash|int flags
 rs     |void   |hv_notallowed  |int flags|NN const char *key|I32 klen|NN const char *msg
@@ -1350,7 +1350,7 @@ s |void * |more_bodies    |size_t size|svtype sv_type
 s      |bool   |sv_2iuv_common |NN SV *sv
 s      |void   |glob_assign_glob|NN SV *dstr|NN SV *sstr|const int dtype
 s      |void   |glob_assign_ref|NN SV *dstr|NN SV *sstr
-sRn    |PTR_TBL_ENT_t *|ptr_table_find|NN PTR_TBL_t *tbl|NN const void *sv
+sR     |PTR_TBL_ENT_t *|ptr_table_find|NN PTR_TBL_t *tbl|NN const void *sv
 s      |SV *   |find_hash_subscript|NULLOK HV *hv|NN SV *val
 s      |I32    |find_array_subscript|NULLOK AV *av|NN SV *val
 s      |SV *   |find_uninit_var|NULLOK OP *obase|NULLOK SV *uninit_sv|bool match
diff --git a/embed.h b/embed.h
index 24c85cd..3d6f34b 100644 (file)
--- a/embed.h
+++ b/embed.h
 #define hfreeentries(a)                S_hfreeentries(aTHX_ a)
 #define new_he()               S_new_he(aTHX)
 #define save_hek_flags         S_save_hek_flags
-#define hv_magic_check         S_hv_magic_check
+#define hv_magic_check(a,b,c)  S_hv_magic_check(aTHX_ a,b,c)
 #define unshare_hek_or_pvn(a,b,c,d)    S_unshare_hek_or_pvn(aTHX_ a,b,c,d)
 #define share_hek_flags(a,b,c,d)       S_share_hek_flags(aTHX_ a,b,c,d)
 #define hv_notallowed(a,b,c,d) S_hv_notallowed(aTHX_ a,b,c,d)
 #define sv_2iuv_common(a)      S_sv_2iuv_common(aTHX_ a)
 #define glob_assign_glob(a,b,c)        S_glob_assign_glob(aTHX_ a,b,c)
 #define glob_assign_ref(a,b)   S_glob_assign_ref(aTHX_ a,b)
-#define ptr_table_find         S_ptr_table_find
+#define ptr_table_find(a,b)    S_ptr_table_find(aTHX_ a,b)
 #define find_hash_subscript(a,b)       S_find_hash_subscript(aTHX_ a,b)
 #define find_array_subscript(a,b)      S_find_array_subscript(aTHX_ a,b)
 #define find_uninit_var(a,b,c) S_find_uninit_var(aTHX_ a,b,c)
diff --git a/hv.c b/hv.c
index 061d0ce..4c5615d 100644 (file)
--- a/hv.c
+++ b/hv.c
@@ -857,7 +857,7 @@ S_hv_fetch_common(pTHX_ HV *hv, SV *keysv, const char *key, STRLEN klen,
 }
 
 STATIC void
-S_hv_magic_check(HV *hv, bool *needs_copy, bool *needs_store)
+S_hv_magic_check(pTHX_ HV *hv, bool *needs_copy, bool *needs_store)
 {
     const MAGIC *mg = SvMAGIC(hv);
     *needs_copy = FALSE;
diff --git a/proto.h b/proto.h
index 99b9d01..f9b768a 100644 (file)
--- a/proto.h
+++ b/proto.h
@@ -2871,10 +2871,10 @@ STATIC HEK*     S_save_hek_flags(const char *str, I32 len, U32 hash, int flags)
                        __attribute__warn_unused_result__
                        __attribute__nonnull__(1);
 
-STATIC void    S_hv_magic_check(HV *hv, bool *needs_copy, bool *needs_store)
-                       __attribute__nonnull__(1)
-                       __attribute__nonnull__(2)
-                       __attribute__nonnull__(3);
+STATIC void    S_hv_magic_check(pTHX_ HV *hv, bool *needs_copy, bool *needs_store)
+                       __attribute__nonnull__(pTHX_1)
+                       __attribute__nonnull__(pTHX_2)
+                       __attribute__nonnull__(pTHX_3);
 
 STATIC void    S_unshare_hek_or_pvn(pTHX_ const HEK* hek, const char* str, I32 len, U32 hash);
 STATIC HEK*    S_share_hek_flags(pTHX_ const char* sv, I32 len, U32 hash, int flags)
@@ -3735,10 +3735,10 @@ STATIC void     S_glob_assign_ref(pTHX_ SV *dstr, SV *sstr)
                        __attribute__nonnull__(pTHX_1)
                        __attribute__nonnull__(pTHX_2);
 
-STATIC PTR_TBL_ENT_t * S_ptr_table_find(PTR_TBL_t *tbl, const void *sv)
+STATIC PTR_TBL_ENT_t * S_ptr_table_find(pTHX_ PTR_TBL_t *tbl, const void *sv)
                        __attribute__warn_unused_result__
-                       __attribute__nonnull__(1)
-                       __attribute__nonnull__(2);
+                       __attribute__nonnull__(pTHX_1)
+                       __attribute__nonnull__(pTHX_2);
 
 STATIC SV *    S_find_hash_subscript(pTHX_ HV *hv, SV *val)
                        __attribute__nonnull__(pTHX_2);
diff --git a/sv.c b/sv.c
index a26c14a..4a79790 100644 (file)
--- a/sv.c
+++ b/sv.c
@@ -9294,7 +9294,7 @@ Perl_ptr_table_new(pTHX)
 /* map an existing pointer using a table */
 
 STATIC PTR_TBL_ENT_t *
-S_ptr_table_find(PTR_TBL_t *tbl, const void *sv) {
+S_ptr_table_find(pTHX_ PTR_TBL_t *tbl, const void *sv) {
     PTR_TBL_ENT_t *tblent;
     const UV hash = PTR_TABLE_HASH(sv);
     assert(tbl);
@@ -9309,7 +9309,7 @@ S_ptr_table_find(PTR_TBL_t *tbl, const void *sv) {
 void *
 Perl_ptr_table_fetch(pTHX_ PTR_TBL_t *tbl, const void *sv)
 {
-    PTR_TBL_ENT_t const *const tblent = ptr_table_find(tbl, sv);
+    PTR_TBL_ENT_t const *const tblent = S_ptr_table_find(aTHX_ tbl, sv);
     return tblent ? tblent->newval : (void *) 0;
 }
 
@@ -9318,7 +9318,7 @@ Perl_ptr_table_fetch(pTHX_ PTR_TBL_t *tbl, const void *sv)
 void
 Perl_ptr_table_store(pTHX_ PTR_TBL_t *tbl, const void *oldsv, void *newsv)
 {
-    PTR_TBL_ENT_t *tblent = S_ptr_table_find(tbl, oldsv);
+    PTR_TBL_ENT_t *tblent = S_ptr_table_find(aTHX_ tbl, oldsv);
 
     if (tblent) {
        tblent->newval = newsv;