# New Ticket Created by Zoffix Znet # Please include the string: [perl #131845] # in the subject line of all future correspondence about this issue. # <URL: https://rt.perl.org/Ticket/Display.html?id=131845 >
Since Seq is not a Positional type, *binding* it to a `@` variable is typecheck error: 13:26 m: my @a := Seq.new: class :: does Iterator {method pull-one {IterationEnd}}.new; 13:26 camelia rakudo-moar abf1cf: OUTPUT: «Type check failed in binding; expected Positional but got Seq ($(().Seq))? in block <unit> at <tmp> line 1??» However, it appears the code is trying to consume the entire Seq, before generating the error: 13:26 Zoffix m: my @a := Seq.new: class :: does Iterator {method pull-one {42}}.new; # hang 13:27 camelia rakudo-moar abf1cf: OUTPUT: «(timeout)» 13:31 Zoffix m: my @a := 1…?; # but this one has `is-lazy` set 13:31 camelia rakudo-moar abf1cf: OUTPUT: «Type check failed in binding; expected Positional but got Seq (?)? in block <unit> at <tmp> line 1??» Perhaps it thinks it's gonna do assignment and consumes non-lazy Seqs in preparation for it, but then the binding happens and then it throws?