On Thu Sep 23 06:22:16 2010, masak wrote: > <masak> rakudo: class A { method b { 'b' } }; my $a = A.new; my $b = > &A::b.assuming($a); $b() > <p6eval> rakudo 8156be: OUTPUT�Null PMC access in invoke() [...] > <moritz_> LTA error > <masak> rakudo: class A {}; my $a = A.new; &A::b.assuming($a)() > <p6eval> rakudo 8156be: OUTPUT�Null PMC access in invoke() [...] > * masak submits rakudobug > <moritz_> rakudo: class A { our method b { 'b' } }; my $a = A.new; > &A::b.assuming($a)() > <p6eval> rakudo 8156be: ( no output ) > <masak> ash_++ and TimToady++ for discovering it.
15:43 < [Coke]> rakudo: class A { method b { 'b' } }; my $a = A.new; my $b = &A::b.assuming($a); $b() 15:43 <+p6eval> rakudo ce15be: OUTPUT«Method 'assuming' not found for invocant of class 'Any' in block <anon> at /tmp/6__8CGzj6s:1 in <anon> at /tmp/6__8CGzj6s:1» 15:43 < [Coke]> is .assuming also gone? 15:43 < jnthn> No, assuming is there 15:43 < jnthn> But A::b is (correctly) not 15:44 < jnthn> The method has to be decalred "our" for that to work. 15:44 < [Coke]> rakudo: class A { our method b { 'b' } }; my $a = A.new; my $b = &A::b.assuming($a); $b() 15:44 <+p6eval> rakudo ce15be: ( no output ) 15:44 < [Coke]> k. 15:44 < [Coke]> jnthn++ So, No more null PMC access. Closable with tests. -- Will "Coke" Coleda