# 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
# 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)
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);
#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
# 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)
#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;