# New Ticket Created by Enheh # Please include the string: [perl #131343] # in the subject line of all future correspondence about this issue. # <URL: https://rt.perl.org/Ticket/Display.html?id=131343 >
# Rakudo version 2017.04.3 built on MoarVM version 2017.04-53-g66c6dda implementing Perl 6.c. # Not constraining to a defined type works: role R[::T] { has T $.x = T.new(0); method new() {return self.bless(:x(42e0));} }; class C does R[Num] {}; C.new(); # Constraining to a defined type works if the type constraint is not parameterized. role R { has Num:D $.x = Num.new(0); method new() {return self.bless(:x(42e0));} }; class C does R {}; C.new(); # Both parameterizing and constraining to a defined type fails. role R[::T] { has T:D $.x = T.new(0); method new() {return self.bless(:x(42e0));} }; class C does R[Num] {}; C.new(); # OUTPUT: X::TypeCheck::Assignment exception produced no message # The failure seems to occur during the bless.