Change 18042 by [EMAIL PROTECTED] on 2002/10/21 09:20:54
Subject: Re: [perl #16184] Unexpected warning when using C<< open FH => >>
From: [EMAIL PROTECTED]
Date: Mon, 21 Oct 2002 11:27:40 +0100
Message-Id: <[EMAIL PROTECTED]>
Affected files ...
.... //depot/perl/t/lib/warnings/toke#12 edit
.... //depot/perl/toke.c#448 edit
Differences ...
==== //depot/perl/t/lib/warnings/toke#12 (text) ====
Index: perl/t/lib/warnings/toke
--- perl/t/lib/warnings/toke#11~17225~ Thu Jun 13 14:59:07 2002
+++ perl/t/lib/warnings/toke Mon Oct 21 02:20:54 2002
@@ -614,6 +614,10 @@
EXPECT
Precedence problem: open FOO should be open(FOO) at - line 2.
########
+# toke.c (and [perl #16184])
+open FOO => "<&0"; close FOO;
+EXPECT
+########
# toke.c
$^W = 0 ;
open FOO || time;
==== //depot/perl/toke.c#448 (text) ====
Index: perl/toke.c
--- perl/toke.c#447~18030~ Sat Oct 19 07:10:21 2002
+++ perl/toke.c Mon Oct 21 02:20:54 2002
@@ -4648,10 +4648,14 @@
char *t;
for (d = s; isALNUM_lazy_if(d,UTF); d++) ;
t = skipspace(d);
- if (strchr("|&*+-=!?:.", *t) && ckWARN_d(WARN_PRECEDENCE))
+ if (strchr("|&*+-=!?:.", *t) && ckWARN_d(WARN_PRECEDENCE)
+ /* [perl #16184] */
+ && !(t[0] == '=' && t[1] == '>')
+ ) {
Perl_warner(aTHX_ packWARN(WARN_PRECEDENCE),
"Precedence problem: open %.*s should be open(%.*s)",
- d-s,s, d-s,s);
+ d - s, s, d - s, s);
+ }
}
LOP(OP_OPEN,XTERM);
End of Patch.