Skip Menu |
 

This queue is for tickets about the MooseX-Declare CPAN distribution.

Report information
The Basics
Id: 66865
Status: new
Priority: 0/
Queue: MooseX-Declare

People
Owner: Nobody in particular
Requestors: earino [...] gmail.com
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: 0.34
Fixed in: (no value)



Subject: Syntax error weirdness
Download (untitled) / with headers
text/plain 1.1k
The example code attached shows that two very simple classes which "use" each other will cause a syntax error when running perl -wc or Test::Strict: Eduardo-Arino-De-La-Rubias-MacBook-Pro:tmp earino$ perl -wc Foo.pm String found where operator expected at Foo.pm line 7, near "has 'thingy'" (Do you need to predeclare has?) syntax error at Foo.pm line 7, near "has 'thingy'" BEGIN not safe after errors--compilation aborted at Foo.pm line 11. Eduardo-Arino-De-La-Rubias-MacBook-Pro:tmp earino$ perl ./use_clashes_with_has.t 1..1 not ok 1 - Syntax check ./Foo.pm # Failed test 'Syntax check ./Foo.pm' # at ./use_clashes_with_has.t line 8. # String found where operator expected at ./Foo.pm line 7, near "has 'thingy'" # (Do you need to predeclare has?) # syntax error at ./Foo.pm line 7, near "has 'thingy'" # BEGIN not safe after errors--compilation aborted at ./Foo.pm line 11. # Looks like you failed 1 test of 1. My environment: This is perl, v5.10.0 built for darwin-thread-multi-2level Darwin earino-laptop-wired.lightningsource.com 10.6.0 Darwin Kernel Version 10.6.0: Wed Nov 10 18:13:17 PST 2010; root:xnu-1504.9.26~3/RELEASE_I386 i386
Subject: use_clashes_with_has.t
#!/usr/bin/env perl use warnings; use strict; use Test::Strict tests => 1; syntax_ok("./Foo.pm");
Subject: OtherModule.pm
Download OtherModule.pm
text/x-perl 127b
use MooseX::Declare; class OtherModule { use Foo; has 'baz' => ( 'is' => 'ro', 'isa' => 'Int', 'default' => 7, ); }
Subject: Foo.pm
Download Foo.pm
text/x-perl 140b
use MooseX::Declare; class Foo { use Carp; use OtherModule; has 'thingy' => ( 'is' => 'ro', 'isa' => 'Bool', ); }


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

Please report any issues with rt.cpan.org to rt-cpan-admin@bestpractical.com.