develooper Front page | perl.perl5.porters | Postings from May 2012

[perl #107004] require parses barewords strangely

Thread Next
From:
Father Chrysostomos via RT
Date:
May 10, 2012 18:38
Subject:
[perl #107004] require parses barewords strangely
Message ID:
rt-3.6.HEAD-4610-1336700305-860.107004-14-0@perl.org
The plot thickens:

$ perl -e 'sub v123{a} require v123()'
syntax error at -e line 1, near "require v123("
Execution of -e aborted due to compilation errors.

$ perl -e 'sub v123{a} require +v123()'
Warning: Use of "require" without parentheses is ambiguous at -e line 1.
Can't locate a in @INC (...) at -e line 1.

$ perl -e 'sub v123{a} require v123.""'
Warning: Use of "require" without parentheses is ambiguous at -e line 1.
Can't locate v123 in @INC (...) at -e line 1.

$ perl -e 'sub v123{a} require v123 .""'
Warning: Use of "require" without parentheses is ambiguous at -e line 1.
Can't locate { in @INC (...) at -e line 1.

$ perl -e 'sub v123{a} require v123'
Perl v123.0.0 required--this is only v5.10.1, stopped at -e line 1.

$ perl -e 'sub v123{a} require +v123'
Warning: Use of "require" without parentheses is ambiguous at -e line 1.
Can't locate a in @INC (...) at -e line 1.

That whitespace is significant is troubling.  That v123 could be
interpreted as a bareword with no => following it is more troubling.

It is not at all clear how these things are supposed to behave.

-- 

Father Chrysostomos


Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About