Change the flags argument to magic_methcall/magic_methcall1 from I32 to U32.
Nicholas Clark [Sun, 25 Apr 2010 11:47:11 +0000 (12:47 +0100)]
embed.fnc
mg.c
proto.h

index 7412f95..08a6e96 100644 (file)
--- a/embed.fnc
+++ b/embed.fnc
@@ -682,7 +682,7 @@ p   |int    |magic_set_all_env|NN SV* sv|NN MAGIC* mg
 p      |U32    |magic_sizepack |NN SV* sv|NN MAGIC* mg
 p      |int    |magic_wipepack |NN SV* sv|NN MAGIC* mg
 pd     |SV*    |magic_methcall |NN SV *sv|NN const MAGIC *mg \
-                               |NN const char *meth|I32 flags \
+                               |NN const char *meth|U32 flags \
                                |int n|NULLOK SV* arg1|NULLOK SV* arg2
 Ap     |void   |markstack_grow
 #if defined(USE_LOCALE_COLLATE)
@@ -1494,7 +1494,7 @@ sM        |SV *   |refcounted_he_value    |NN const struct refcounted_he *he
 s      |void   |save_magic     |I32 mgs_ix|NN SV *sv
 -s     |int    |magic_methpack |NN SV *sv|NN const MAGIC *mg|NN const char *meth
 s      |SV*    |magic_methcall1|NN SV *sv|NN const MAGIC *mg \
-                               |NN const char *meth|I32 flags \
+                               |NN const char *meth|U32 flags \
                                |int n|NULLOK SV *val
 s      |void   |restore_magic  |NULLOK const void *p
 s      |void   |unwind_handler_stack|NN const void *p
diff --git a/mg.c b/mg.c
index b6bd297..e29b1c6 100644 (file)
--- a/mg.c
+++ b/mg.c
@@ -1661,7 +1661,7 @@ Returns the SV (if any) returned by the method, or NULL on failure.
 */
 
 SV*
-Perl_magic_methcall(pTHX_ SV *sv, const MAGIC *mg, const char *meth, I32 flags,
+Perl_magic_methcall(pTHX_ SV *sv, const MAGIC *mg, const char *meth, U32 flags,
     int n, SV *arg1, SV *arg2)
 {
     dVAR;
@@ -1708,7 +1708,7 @@ Perl_magic_methcall(pTHX_ SV *sv, const MAGIC *mg, const char *meth, I32 flags,
 /* wrapper for magic_methcall that creates the first arg */
 
 STATIC SV*
-S_magic_methcall1(pTHX_ SV *sv, const MAGIC *mg, const char *meth, I32 flags,
+S_magic_methcall1(pTHX_ SV *sv, const MAGIC *mg, const char *meth, U32 flags,
     int n, SV *val)
 {
     dVAR;
diff --git a/proto.h b/proto.h
index ad24046..c2dbf10 100644 (file)
--- a/proto.h
+++ b/proto.h
@@ -1901,7 +1901,7 @@ PERL_CALLCONV int Perl_magic_wipepack(pTHX_ SV* sv, MAGIC* mg)
 #define PERL_ARGS_ASSERT_MAGIC_WIPEPACK        \
        assert(sv); assert(mg)
 
-PERL_CALLCONV SV*      Perl_magic_methcall(pTHX_ SV *sv, const MAGIC *mg, const char *meth, I32 flags, int n, SV* arg1, SV* arg2)
+PERL_CALLCONV SV*      Perl_magic_methcall(pTHX_ SV *sv, const MAGIC *mg, const char *meth, U32 flags, int n, SV* arg1, SV* arg2)
                        __attribute__nonnull__(pTHX_1)
                        __attribute__nonnull__(pTHX_2)
                        __attribute__nonnull__(pTHX_3);
@@ -4488,7 +4488,7 @@ STATIC int        S_magic_methpack(pTHX_ SV *sv, const MAGIC *mg, const char *meth)
 #define PERL_ARGS_ASSERT_MAGIC_METHPACK        \
        assert(sv); assert(mg); assert(meth)
 
-STATIC SV*     S_magic_methcall1(pTHX_ SV *sv, const MAGIC *mg, const char *meth, I32 flags, int n, SV *val)
+STATIC SV*     S_magic_methcall1(pTHX_ SV *sv, const MAGIC *mg, const char *meth, U32 flags, int n, SV *val)
                        __attribute__nonnull__(pTHX_1)
                        __attribute__nonnull__(pTHX_2)
                        __attribute__nonnull__(pTHX_3);