[Melbourne-pm] Bareword found where operator expected

Gary Smith gary at devgurus.com
Sun Feb 16 16:40:34 PST 2014


Hi All,

I'm seeing an error in a file here but I think it may be related to the 
development environment rather than the file. The reason I say that is 
because the error only occurs in the environment that I have created 
(with perlbrew) for myself. The production environment doesn't exhibit 
the same error and I also use this same code on a Debian VM without issue.

Perl version is 5.16.3

The environment is Catalyst/Pg/Starman.

Here is the error output:

Bareword found where operator expected at 
/home/gary/myapp/lib/myapp/Controller/Lookup.pm line 59, near "/^ \s* ( 
[\s\d\w]{3,} ) \s* $/ux"
         (Missing operator before ux?)
Error while loading /home/gary/myapp/myapp.psgi: syntax error at 
/home/gary/myapp/lib/myapp/Controller/Lookup.pm line 59, near "/^ \s* ( 
[\s\d\w]{3,} ) \s* $/ux"
Can't use global $1 in "my" at 
/home/gary/myapp/lib/myapp/Controller/Lookup.pm line 60, near "= $1"
BEGIN not safe after errors--compilation aborted at 
/home/gary/myapp/lib/myapp/Controller/Lookup.pm line 73.
Compilation failed in require at 
/home/gary/perl5/lib/perl5/Catalyst/Utils.pm line 308.
Compilation failed in require at /home/gary/myapp/myapp.psgi line 4.
BEGIN failed--compilation aborted at /home/gary/myapp/myapp.psgi line 4.


Here is the relevant code lines 59 & 60 in Lookup.pm:

         if ($c->request->params->{$field} =~ /^ \s* ( [\s\d\w]{3,} ) 
\s* $/ux) {
             my $value = $1;


I know that the code is fine as it has been working fine for many months 
and still works fine on the production and Debian servers. I don't know 
what in my environment would cause the error. It appears to be saying 
that it doesn't like the regex, but there doesn't appear to be any 
syntax issues there.

Regards,

Gary
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.pm.org/pipermail/melbourne-pm/attachments/20140217/9fa7b994/attachment.html>


More information about the Melbourne-pm mailing list