diff --git a/src/core/native_array.pm6 b/src/core/native_array.pm6 index d44bbf65a6b..de8a3d00cc5 100644 --- a/src/core/native_array.pm6 +++ b/src/core/native_array.pm6 @@ -293,9 +293,7 @@ my class array does Iterable { multi method splice(strarray:D: Int:D $offset, Int:D $size, Seq:D \seq) { nqp::if( seq.is-lazy, - Failure.new(X::Cannot::Lazy.new( - :action, :what(self.^name) - )), + X::Cannot::Lazy.new(:action, :what(self.^name)).throw, nqp::stmts( nqp::unless( nqp::istype( @@ -778,9 +776,7 @@ my class array does Iterable { multi method splice(intarray:D: Int:D $offset, Int:D $size, Seq:D \seq) { nqp::if( seq.is-lazy, - Failure.new(X::Cannot::Lazy.new( - :action, :what(self.^name) - )), + X::Cannot::Lazy.new(:action, :what(self.^name)).throw, nqp::stmts( nqp::unless( nqp::istype( @@ -1315,9 +1311,7 @@ my class array does Iterable { multi method splice(numarray:D: Int:D $offset, Int:D $size, Seq:D \seq) { nqp::if( seq.is-lazy, - Failure.new(X::Cannot::Lazy.new( - :action, :what(self.^name) - )), + X::Cannot::Lazy.new(:action, :what(self.^name)).throw, nqp::stmts( nqp::unless( nqp::istype( diff --git a/tools/build/makeNATIVE_ARRAY.p6 b/tools/build/makeNATIVE_ARRAY.p6 index 362d5badcf9..c61d557000c 100755 --- a/tools/build/makeNATIVE_ARRAY.p6 +++ b/tools/build/makeNATIVE_ARRAY.p6 @@ -250,9 +250,7 @@ for $*IN.lines -> $line { multi method splice(#type#array:D: Int:D $offset, Int:D $size, Seq:D \seq) { nqp::if( seq.is-lazy, - Failure.new(X::Cannot::Lazy.new( - :action, :what(self.^name) - )), + X::Cannot::Lazy.new(:action, :what(self.^name)).throw, nqp::stmts( nqp::unless( nqp::istype(