The proper prototyping for #10463.
Jarkko Hietaniemi [Wed, 6 Jun 2001 23:33:58 +0000 (23:33 +0000)]
p4raw-id: //depot/perl@10464

embed.h
embed.pl
proto.h
sv.c

diff --git a/embed.h b/embed.h
index 3a43f40..2e67e36 100644 (file)
--- a/embed.h
+++ b/embed.h
 #  if defined(USE_ITHREADS)
 #define gv_share               S_gv_share
 #  endif
+#define grok_number            S_grok_number
 #endif
 #if defined(PERL_IN_TOKE_C) || defined(PERL_DECL_PROT)
 #define check_uni              S_check_uni
 #  if defined(USE_ITHREADS)
 #define gv_share(a)            S_gv_share(aTHX_ a)
 #  endif
+#define grok_number(a,b,c)     S_grok_number(aTHX_ a,b,c)
 #endif
 #if defined(PERL_IN_TOKE_C) || defined(PERL_DECL_PROT)
 #define check_uni()            S_check_uni(aTHX)
 #define S_gv_share             CPerlObj::S_gv_share
 #define gv_share               S_gv_share
 #  endif
+#define S_grok_number          CPerlObj::S_grok_number
+#define grok_number            S_grok_number
 #endif
 #if defined(PERL_IN_TOKE_C) || defined(PERL_DECL_PROT)
 #define S_check_uni            CPerlObj::S_check_uni
index a2e833b..7831f7e 100755 (executable)
--- a/embed.pl
+++ b/embed.pl
@@ -2522,6 +2522,7 @@ s |I32    |expect_number  |char** pattern
 #  if defined(USE_ITHREADS)
 s      |SV*    |gv_share       |SV *sv
 #  endif
+s      |int    |grok_number    |const char *pv|STRLEN len|UV *valuep
 #endif
 
 #if defined(PERL_IN_TOKE_C) || defined(PERL_DECL_PROT)
diff --git a/proto.h b/proto.h
index b4eb6fc..dc4be43 100644 (file)
--- a/proto.h
+++ b/proto.h
@@ -477,7 +477,7 @@ PERL_CALLCONV int   Perl_mg_get(pTHX_ SV* sv);
 PERL_CALLCONV U32      Perl_mg_length(pTHX_ SV* sv);
 PERL_CALLCONV void     Perl_mg_magical(pTHX_ SV* sv);
 PERL_CALLCONV int      Perl_mg_set(pTHX_ SV* sv);
-PERL_CALLCONV I32      Perl_mg_size(pTHX_ SV* sv);
+PERL_CALLCONV IV       Perl_mg_size(pTHX_ SV* sv);
 PERL_CALLCONV void     Perl_mini_mktime(pTHX_ struct tm *pm);
 PERL_CALLCONV OP*      Perl_mod(pTHX_ OP* o, I32 type);
 PERL_CALLCONV int      Perl_mode_from_discipline(pTHX_ SV* discp);
@@ -1016,7 +1016,7 @@ STATIC void       S_hv_magic_check(pTHX_ HV *hv, bool *needs_copy, bool *needs_store);
 #endif
 
 #if defined(PERL_IN_MG_C) || defined(PERL_DECL_PROT)
-STATIC void    S_save_magic(pTHX_ I32 mgs_ix, SV *sv);
+STATIC void    S_save_magic(pTHX_ IV mgs_ix, SV *sv);
 STATIC int     S_magic_methpack(pTHX_ SV *sv, MAGIC *mg, char *meth);
 STATIC int     S_magic_methcall(pTHX_ SV *sv, MAGIC *mg, char *meth, I32 f, int n, SV *val);
 #endif
@@ -1246,6 +1246,7 @@ STATIC I32        S_expect_number(pTHX_ char** pattern);
 #  if defined(USE_ITHREADS)
 STATIC SV*     S_gv_share(pTHX_ SV *sv);
 #  endif
+STATIC int     S_grok_number(pTHX_ const char *pv, STRLEN len, UV *valuep);
 #endif
 
 #if defined(PERL_IN_TOKE_C) || defined(PERL_DECL_PROT)
diff --git a/sv.c b/sv.c
index f1ed584..f53a35a 100644 (file)
--- a/sv.c
+++ b/sv.c
@@ -1495,7 +1495,7 @@ S_not_a_number(pTHX_ SV *sv)
 #define IS_NUMBER_INFINITY           0x10 /* this is big */
 
 static int
-grok_number(const char *pv, STRLEN len, UV *valuep)
+S_grok_number(const char *pv, STRLEN len, UV *valuep)
 {
     const char *s = pv;
     const char *send = pv + len;