Change 11066 by gsar@moonru on 2001/07/02 07:12:10
win32 fixes: fix various syntax errors ("no preprocessor directives
within macro arguments") and warnings ("unary minus applied to
unsigned type", among others)
Affected files ...
... //depot/perl/gv.c#146 edit
... //depot/perl/hv.c#83 edit
... //depot/perl/op.c#402 edit
... //depot/perl/pp.c#288 edit
... //depot/perl/sv.c#432 edit
... //depot/perl/toke.c#366 edit
Differences ...
==== //depot/perl/gv.c#146 (text) ====
Index: perl/gv.c
--- perl/gv.c.~1~ Mon Jul 2 01:15:05 2001
+++ perl/gv.c Mon Jul 2 01:15:05 2001
@@ -1361,15 +1361,11 @@
int postpr = 0, force_cpy = 0, assignshift = assign ? 1 : 0;
#ifdef DEBUGGING
int fl=0;
+#endif
HV* stash=NULL;
-#endif
if (!(AMGf_noleft & flags) && SvAMAGIC(left)
- && (mg = mg_find((SV*)(
-#ifdef DEGUGGING
- stash=
-#endif
- SvSTASH(SvRV(left))),
- PERL_MAGIC_overload_table))
+ && (stash = SvSTASH(SvRV(left)))
+ && (mg = mg_find((SV*)stash, PERL_MAGIC_overload_table))
&& (ocvp = cvp = (AMT_AMAGIC((AMT*)mg->mg_ptr)
? (oamtp = amtp = (AMT*)mg->mg_ptr)->table
: (CV **) NULL))
@@ -1486,12 +1482,8 @@
}
if (!cv) goto not_found;
} else if (!(AMGf_noright & flags) && SvAMAGIC(right)
- && (mg = mg_find((SV*)(
-#ifdef DEBUGGING
- stash=
-#endif
- SvSTASH(SvRV(right))),
- PERL_MAGIC_overload_table))
+ && (stash = SvSTASH(SvRV(right)))
+ && (mg = mg_find((SV*)stash, PERL_MAGIC_overload_table))
&& (cvp = (AMT_AMAGIC((AMT*)mg->mg_ptr)
? (amtp = (AMT*)mg->mg_ptr)->table
: (CV **) NULL))
@@ -1590,7 +1582,7 @@
flags & AMGf_unary? "" :
lr==1 ? " for right argument": " for left argument",
flags & AMGf_unary? " for argument" : "",
- HvNAME(stash),
+ stash ? HvNAME(stash) : "null",
fl? ",\n\tassignment variant used": "") );
}
#endif
==== //depot/perl/hv.c#83 (text) ====
Index: perl/hv.c
--- perl/hv.c.~1~ Mon Jul 2 01:15:05 2001
+++ perl/hv.c Mon Jul 2 01:15:05 2001
@@ -441,7 +441,7 @@
#ifdef ENV_IS_CASELESS
else if (mg_find((SV*)hv, PERL_MAGIC_env)) {
key = savepvn(key,klen);
- key = strupr(key);
+ key = (const char*)strupr((char*)key);
hash = 0;
}
#endif
@@ -598,9 +598,9 @@
entry = new_HE();
if (HvSHAREKEYS(hv))
- HeKEY_hek(entry) = share_hek(key, is_utf8?-klen:klen, hash);
+ HeKEY_hek(entry) = share_hek(key, is_utf8?-(I32)klen:klen, hash);
else /* gotta do the real thing */
- HeKEY_hek(entry) = save_hek(key, is_utf8?-klen:klen, hash);
+ HeKEY_hek(entry) = save_hek(key, is_utf8?-(I32)klen:klen, hash);
if (key != keysave)
Safefree(key);
HeVAL(entry) = val;
==== //depot/perl/op.c#402 (text) ====
Index: perl/op.c
--- perl/op.c.~1~ Mon Jul 2 01:15:05 2001
+++ perl/op.c Mon Jul 2 01:15:05 2001
@@ -6901,9 +6901,9 @@
svp = cSVOPx_svp(((BINOP*)o)->op_last);
if ((!SvFAKE(sv = *svp) || !SvREADONLY(sv)) && !IS_PADCONST(sv)) {
key = SvPV(sv, keylen);
- if (SvUTF8(sv))
- keylen = -keylen;
- lexname = newSVpvn_share(key, keylen, 0);
+ lexname = newSVpvn_share(key,
+ SvUTF8(sv) ? -(I32)keylen : keylen,
+ 0);
SvREFCNT_dec(sv);
*svp = lexname;
}
@@ -6921,9 +6921,8 @@
if (!fields || !GvHV(*fields))
break;
key = SvPV(*svp, keylen);
- if (SvUTF8(*svp))
- keylen = -keylen;
- indsvp = hv_fetch(GvHV(*fields), key, keylen, FALSE);
+ indsvp = hv_fetch(GvHV(*fields), key,
+ SvUTF8(*svp) ? -(I32)keylen : keylen, FALSE);
if (!indsvp) {
Perl_croak(aTHX_ "No such pseudo-hash field \"%s\" in variable %s of
type %s",
key, SvPV(lexname, n_a), HvNAME(SvSTASH(lexname)));
@@ -6988,9 +6987,8 @@
key_op = (SVOP*)key_op->op_sibling) {
svp = cSVOPx_svp(key_op);
key = SvPV(*svp, keylen);
- if (SvUTF8(*svp))
- keylen = -keylen;
- indsvp = hv_fetch(GvHV(*fields), key, keylen, FALSE);
+ indsvp = hv_fetch(GvHV(*fields), key,
+ SvUTF8(*svp) ? -(I32)keylen : keylen, FALSE);
if (!indsvp) {
Perl_croak(aTHX_ "No such pseudo-hash field \"%s\" "
"in variable %s of type %s",
==== //depot/perl/pp.c#288 (text) ====
Index: perl/pp.c
--- perl/pp.c.~1~ Mon Jul 2 01:15:05 2001
+++ perl/pp.c Mon Jul 2 01:15:05 2001
@@ -943,7 +943,7 @@
/* 2s complement assumption that (UV)-IV_MIN is correct. */
/* -ve result, which could overflow an IV */
SP--;
- SETi( -product );
+ SETi( -(IV)product );
RETURN;
} /* else drop to NVs below. */
} else {
@@ -980,7 +980,7 @@
/* 2s complement assumption again */
/* -ve result, which could overflow an IV */
SP--;
- SETi( -product_low );
+ SETi( -(IV)product_low );
RETURN;
} /* else drop to NVs below. */
}
==== //depot/perl/sv.c#432 (text) ====
Index: perl/sv.c
--- perl/sv.c.~1~ Mon Jul 2 01:15:05 2001
+++ perl/sv.c Mon Jul 2 01:15:05 2001
@@ -4101,7 +4101,7 @@
*SvEND(sv) = '\0';
SvFAKE_off(sv);
SvREADONLY_off(sv);
- unsharepvn(pvx,SvUTF8(sv)?-len:len,hash);
+ unsharepvn(pvx, SvUTF8(sv) ? -(I32)len : len, hash);
}
else if (PL_curcop != &PL_compiling)
Perl_croak(aTHX_ PL_no_modify);
@@ -4946,7 +4946,9 @@
else if (SvPVX(sv) && SvLEN(sv))
Safefree(SvPVX(sv));
else if (SvPVX(sv) && SvREADONLY(sv) && SvFAKE(sv)) {
- unsharepvn(SvPVX(sv),SvUTF8(sv)?-SvCUR(sv):SvCUR(sv),SvUVX(sv));
+ unsharepvn(SvPVX(sv),
+ SvUTF8(sv) ? -(I32)SvCUR(sv) : SvCUR(sv),
+ SvUVX(sv));
SvFAKE_off(sv);
}
break;
==== //depot/perl/toke.c#366 (text) ====
Index: perl/toke.c
--- perl/toke.c.~1~ Mon Jul 2 01:15:05 2001
+++ perl/toke.c Mon Jul 2 01:15:05 2001
@@ -1257,7 +1257,7 @@
char *e = d++;
while (e-- > c)
*(e + 1) = *e;
- *c = UTF_TO_NATIVE(0xff);
+ *c = (char)UTF_TO_NATIVE(0xff);
/* mark the range as done, and continue */
dorange = FALSE;
didrange = TRUE;
@@ -1308,7 +1308,7 @@
Perl_croak(aTHX_ "Ambiguous range in transliteration operator");
}
if (has_utf8) {
- *d++ = UTF_TO_NATIVE(0xff); /* use illegal utf8 byte--see pmtrans
*/
+ *d++ = (char)UTF_TO_NATIVE(0xff); /* use illegal utf8 byte--see
+pmtrans */
s++;
continue;
}
End of Patch.