X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=pp_hot.c;h=58874a87b97ed0969804fe0e8e4d4d2b0662b4b1;hb=d3b9c6891b7459d54058317f1c1f213e6a01409e;hp=51229bb351b7e1011606c4af672ddcf13fc59073;hpb=39644a267dae6dfa935b1c1d39151eb399850949;p=p5sagit%2Fp5-mst-13.2.git diff --git a/pp_hot.c b/pp_hot.c index 51229bb..58874a8 100644 --- a/pp_hot.c +++ b/pp_hot.c @@ -346,7 +346,7 @@ PP(pp_add) A side effect is that this also aggressively prefers integer maths over fp maths for integer values. - How to detect overflow? + How to detect overflow? C 99 section 6.2.6.1 says @@ -417,7 +417,7 @@ PP(pp_add) UV result; register UV buv; bool buvok = SvUOK(TOPs); - + if (buvok) buv = SvUVX(TOPs); else { @@ -1249,7 +1249,7 @@ PP(pp_match) } } } - if ((gimme != G_ARRAY && !global && rx->nparens) + if ((!global && rx->nparens) || SvTEMP(TARG) || PL_sawampersand) r_flags |= REXEC_COPY_STR; if (SvSCREAM(TARG)) @@ -1459,10 +1459,9 @@ Perl_do_readline(pTHX) } else if (type == OP_GLOB) SP--; - else if (ckWARN(WARN_IO) /* stdout/stderr or other write fh */ - && (IoTYPE(io) == IoTYPE_WRONLY || fp == PerlIO_stdout() - || fp == PerlIO_stderr())) + else if (ckWARN(WARN_IO) && IoTYPE(io) == IoTYPE_WRONLY) { report_evil_fh(PL_last_in_gv, io, OP_phoney_OUTPUT_ONLY); + } } if (!fp) { if (ckWARN2(WARN_GLOB, WARN_CLOSED)