# New Ticket Created by  Moritz Lenz 
# Please include the string:  [perl #112626]
# in the subject line of all future correspondence about this issue. 
# <URL: https://rt.perl.org:443/rt3/Ticket/Display.html?id=112626 >


Another bug condensed from colomon++'s ABC module:


# file ./lib/A/Role.pm
use v6;
role A::Role { }

# file ./lib/A/Class1.pm
use v6;
use A::Role;
class A::Class1 does A::Role { }

# file ./lib/A/Class2.pm
use v6;
use A::Role;

class A::Classs2 does A::Role { }

# file ./lib/A/Conflict.pm
use v6;
use A::Class1;
use A::Class2;

sub f(A::Class1 $x)  {}

running 'ufo && make' produces the following error:

mkdir -p `dirname 'blib/lib/A/Role.pir'`
env
PERL6LIB=/home/moritz/tmp/oddness/blib/lib:/home/moritz/tmp/oddness/lib:
perl6 --target=pir --output=blib/lib/A/Role.pir lib/A/Role.pm
mkdir -p `dirname 'blib/lib/A/Class1.pir'`
env
PERL6LIB=/home/moritz/tmp/oddness/blib/lib:/home/moritz/tmp/oddness/lib:
perl6 --target=pir --output=blib/lib/A/Class1.pir lib/A/Class1.pm
mkdir -p `dirname 'blib/lib/A/Class2.pir'`
env
PERL6LIB=/home/moritz/tmp/oddness/blib/lib:/home/moritz/tmp/oddness/lib:
perl6 --target=pir --output=blib/lib/A/Class2.pir lib/A/Class2.pm
mkdir -p `dirname 'blib/lib/A/Conflict.pir'`
env
PERL6LIB=/home/moritz/tmp/oddness/blib/lib:/home/moritz/tmp/oddness/lib:
perl6 --target=pir --output=blib/lib/A/Conflict.pir lib/A/Conflict.pm
===SORRY!===
Invalid typename in parameter declaration at line 5, near " $x)  {}\n"
make: *** [blib/lib/A/Conflict.pir] Error 1

Note that the error goes away when removing the 'use A::Class2;'
statement, which should be totally irrelevant.

Reply via email to