X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl.c;h=50e7aa1bcb76a884e5f9b1decd50fbf8d265469a;hb=d54344fc28d39ef8e90173262ec572bec67f5e6c;hp=a27620a41d6ff2dae2fe38eae0338db5ef408ad8;hpb=6537fe72dd6d63cc0c7164fec44beb82d2568599;p=p5sagit%2Fp5-mst-13.2.git diff --git a/perl.c b/perl.c index a27620a..50e7aa1 100644 --- a/perl.c +++ b/perl.c @@ -1099,8 +1099,10 @@ S_parse_body(pTHX_ char **env, XSINIT_t xsinit) goto reswitch; break; - case 't': - PL_taint_warn = TRUE; + case 't': + PL_taint_warn = TRUE; + if (! (PL_dowarn & G_WARN_ALL_MASK)) + PL_dowarn |= G_WARN_ON; case 'T': PL_tainting = TRUE; s++; @@ -1297,7 +1299,7 @@ print \" \\@INC:\\n @INC\\n\";"); d = s; if (!*s) break; - if (!strchr("DIMUdmw", *s)) + if (!strchr("DIMUdmtw", *s)) Perl_croak(aTHX_ "Illegal switch in PERL5OPT: -%c", *s); while (++s && *s) { if (isSPACE(*s)) { @@ -1310,7 +1312,12 @@ print \" \\@INC:\\n @INC\\n\";"); break; } } - moreswitches(d); + if (*d == 't') { + PL_tainting = TRUE; + PL_taint_warn = TRUE; + } else { + moreswitches(d); + } } } }