From: Jarkko Hietaniemi Date: Mon, 16 Oct 2000 01:25:04 +0000 (+0000) Subject: Fix a couple of compiler-noted nits in #7235. X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=51723571c2d9f7f8f83bb4cf8027e9df21ea3df8;p=p5sagit%2Fp5-mst-13.2.git Fix a couple of compiler-noted nits in #7235. p4raw-id: //depot/perl@7237 --- diff --git a/pp.c b/pp.c index 84949aa..9afa96d 100644 --- a/pp.c +++ b/pp.c @@ -1468,53 +1468,53 @@ PP(pp_complement) } } else { - register char *tmps; - register long *tmpl; + register U8 *tmps; register I32 anum; STRLEN len; SvSetSV(TARG, sv); - tmps = SvPV_force(TARG, len); + tmps = (U8*)SvPV_force(TARG, len); anum = len; if (SvUTF8(TARG)) { /* Calculate exact length, let's not estimate */ STRLEN targlen = 0; U8 *result; - char *send; + U8 *send; + I32 l; send = tmps + len; while (tmps < send) { - I32 l; UV c = utf8_to_uv(tmps, &l); - c = (UV)~c; tmps += UTF8SKIP(tmps); - targlen += UTF8LEN(c); + targlen += UTF8LEN(~c); } /* Now rewind strings and write them. */ tmps -= len; Newz(0, result, targlen + 1, U8); while (tmps < send) { - I32 l; UV c = utf8_to_uv(tmps, &l); tmps += UTF8SKIP(tmps); result = uv_to_utf8(result,(UV)~c); } *result = '\0'; result -= targlen; - sv_setpvn(TARG, result, targlen); + sv_setpvn(TARG, (char*)result, targlen); SvUTF8_on(TARG); Safefree(result); SETs(TARG); RETURN; } #ifdef LIBERAL - for ( ; anum && (unsigned long)tmps % sizeof(long); anum--, tmps++) - *tmps = ~*tmps; - tmpl = (long*)tmps; - for ( ; anum >= sizeof(long); anum -= sizeof(long), tmpl++) - *tmpl = ~*tmpl; - tmps = (char*)tmpl; + { + register long *tmpl; + for ( ; anum && (unsigned long)tmps % sizeof(long); anum--, tmps++) + *tmps = ~*tmps; + tmpl = (long*)tmps; + for ( ; anum >= sizeof(long); anum -= sizeof(long), tmpl++) + *tmpl = ~*tmpl; + tmps = (U8*)tmpl; + } #endif for ( ; anum > 0; anum--, tmps++) *tmps = ~*tmps;