This works now:

$ $ perl6 -e 'class A {has Str $.n; has Str @.m}; for A.^attributes -> $attr 
{say $attr.name, $attr.type};'
$!n(Str)
@!m(Positional[Str])

It looks like the problem back then was related to using gist. I tried with an 
older rakudo:

$ $ ./perl6-m --version
This is Rakudo version 2015.12-60-g37e998d built on MoarVM version 2015.12
implementing Perl 6.c.

$ ./perl6-m -e 'class A {has Str @.array}; say A.^attributes[0].type.gist'
Method 'shortname' not found for invocant of class 
'Perl6::Metamodel::CurriedRoleHOW'
  in block <unit> at -e line 1

$ ./perl6-m -e 'class A {has Str @.array}; say A.^attributes[0].type.perl'
Positional[Str]

I added a test to S12-introspection/attributes.t with commit 
https://github.com/perl6/roast/commit/b06e156032

I'm closing this ticket as 'resolved'.

Reply via email to