diff options
author | Jarkko Hietaniemi <jhi@iki.fi> | 2000-10-16 01:25:04 +0000 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2000-10-16 01:25:04 +0000 |
commit | 51723571c2d9f7f8f83bb4cf8027e9df21ea3df8 (patch) | |
tree | f4eff830bb8238b17a2c01cdf410ce969a6159a4 /pp.c | |
parent | 467f0320ba38aa93b099784d0a7bcd097f0d642c (diff) | |
download | perl-51723571c2d9f7f8f83bb4cf8027e9df21ea3df8.tar.gz |
Fix a couple of compiler-noted nits in #7235.
p4raw-id: //depot/perl@7237
Diffstat (limited to 'pp.c')
-rw-r--r-- | pp.c | 30 |
1 files changed, 15 insertions, 15 deletions
@@ -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; |