diff options
-rw-r--r-- | universal.c | 12 | ||||
-rw-r--r-- | utf8.c | 8 |
2 files changed, 10 insertions, 10 deletions
diff --git a/universal.c b/universal.c index 4d44aa7577..b3a742b384 100644 --- a/universal.c +++ b/universal.c @@ -989,7 +989,7 @@ XS(XS_utf8_SWASHGET_heavy) bitssvp = hv_fetch(hv, "BITS", 4, FALSE); nonesvp = hv_fetch(hv, "NONE", 4, FALSE); extssvp = hv_fetch(hv, "EXTRAS", 6, FALSE); - typestr = SvPV_nolen(*typesvp); + typestr = (U8*)SvPV_nolen(*typesvp); typeto = typestr[0] == 'T' && typestr[1] == 'o'; bits = (U32)SvUV(*bitssvp); none = (U32)SvUV(*nonesvp); @@ -1048,7 +1048,7 @@ XS(XS_utf8_SWASHGET_heavy) nextline = (U8*)memchr(l, '\n', lend - l); numlen = lend - l; - min = (U32)grok_hex(l, &numlen, &flags, NULL); + min = (U32)grok_hex((char *)l, &numlen, &flags, NULL); if (numlen) l += numlen; else if (nextline) { @@ -1064,7 +1064,7 @@ XS(XS_utf8_SWASHGET_heavy) ++l; flags = PERL_SCAN_SILENT_ILLDIGIT | PERL_SCAN_DISALLOW_PREFIX; numlen = lend - l; - max = (U32)grok_hex(l, &numlen, &flags, NULL); + max = (U32)grok_hex((char *)l, &numlen, &flags, NULL); if (numlen) l += numlen; else @@ -1076,7 +1076,7 @@ XS(XS_utf8_SWASHGET_heavy) flags = PERL_SCAN_SILENT_ILLDIGIT | PERL_SCAN_DISALLOW_PREFIX; numlen = lend - l; - val = (U32)grok_hex(l, &numlen, &flags, NULL); + val = (U32)grok_hex((char *)l, &numlen, &flags, NULL); if (numlen) l += numlen; else @@ -1219,7 +1219,7 @@ XS(XS_utf8_SWASHGET_heavy) HV* otherhv; SV **otherbitssvp; - othersvp = hv_fetch(hv, namestr, namelen, FALSE); + othersvp = hv_fetch(hv, (char *)namestr, namelen, FALSE); if (*othersvp && SvROK(*othersvp) && SvTYPE(SvRV(*othersvp))==SVt_PVHV) otherhv = (HV*)SvRV(*othersvp); @@ -1250,7 +1250,7 @@ XS(XS_utf8_SWASHGET_heavy) if (!olen) Perl_croak(aTHX_ "SWASHGET didn't return valid swatch"); - s = SvPV(swatch, slen); + s = (U8*)SvPV(swatch, slen); if (bits == 1 && otherbits == 1) { if (slen != olen) Perl_croak(aTHX_ "SWASHGET length mismatch"); @@ -1364,7 +1364,7 @@ of the result. The "swashp" is a pointer to the swash to use. Both the special and normal mappings are stored lib/unicore/To/Foo.pl, -and loaded by SWASHGET, using lib/utf8_heavy.pl. The special (usually, +and loaded by SWASHNEW, using lib/utf8_heavy.pl. The special (usually, but not always, a multicharacter mapping), is tried first. The "special" is a string like "utf8::ToSpecLower", which means the @@ -1696,8 +1696,8 @@ Perl_swash_fetch(pTHX_ SV *sv, const U8 *ptr, bool do_utf8) SV *errsv_save; ENTER; SAVETMPS; - /* save_re_context(); */ - /* PUSHSTACKi(PERLSI_MAGIC); */ + /* save_re_context(); */ /* Now SWASHGET doesn't use regex */ + PUSHSTACKi(PERLSI_MAGIC); PUSHMARK(SP); EXTEND(SP,3); PUSHs((SV*)sv); @@ -1714,7 +1714,7 @@ Perl_swash_fetch(pTHX_ SV *sv, const U8 *ptr, bool do_utf8) if (!SvTRUE(ERRSV)) sv_setsv(ERRSV, errsv_save); SvREFCNT_dec(errsv_save); - /* POPSTACK; */ + POPSTACK; FREETMPS; LEAVE; if (IN_PERL_COMPILETIME) |