-
Bug
-
Resolution: Fixed
-
P3
-
None
-
b109
-
Verified
Calling j.l.i.MethodHandles.loop(j.l.i.MethodHandle[][]) method fails with IndexOutOfBoundsException.
Passing specific (probably wrong) combination of method handles (see examples, they are slightly differs) leads to failure. Received exception is not specified in api spec:
Exception in thread "main" java.lang.IndexOutOfBoundsException: toIndex = 4
at java.util.ArrayList.subListRangeCheck(ArrayList.java:1052)
at java.util.ArrayList.subList(ArrayList.java:1044)
at java.lang.invoke.MethodHandles.lambda$checkLoop2$11(MethodHandles.java:4040)
at java.util.stream.MatchOps$1MatchSink.accept(MatchOps.java:90)
at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:177)
at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1422)
at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:591)
at java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:272)
at java.util.Spliterators$ArraySpliterator.tryAdvance(Spliterators.java:958)
at java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:127)
at java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:500)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:486)
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472)
at java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:230)
at java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:196)
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.util.stream.ReferencePipeline.anyMatch(ReferencePipeline.java:461)
at java.lang.invoke.MethodHandles.checkLoop2(MethodHandles.java:4040)
at java.lang.invoke.MethodHandles.loop(MethodHandles.java:3393)
at tests.invoke.loop.LoopExampleTest0.call(LoopExampleTest0.java:27)
at tests.invoke.loop.LoopExampleTest0.main(LoopExampleTest0.java:13)
Tests are under development, tck_red label will be added after development completion. Was found on jdk9b95/jdk9b106.
Passing specific (probably wrong) combination of method handles (see examples, they are slightly differs) leads to failure. Received exception is not specified in api spec:
Exception in thread "main" java.lang.IndexOutOfBoundsException: toIndex = 4
at java.util.ArrayList.subListRangeCheck(ArrayList.java:1052)
at java.util.ArrayList.subList(ArrayList.java:1044)
at java.lang.invoke.MethodHandles.lambda$checkLoop2$11(MethodHandles.java:4040)
at java.util.stream.MatchOps$1MatchSink.accept(MatchOps.java:90)
at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:177)
at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1422)
at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:591)
at java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:272)
at java.util.Spliterators$ArraySpliterator.tryAdvance(Spliterators.java:958)
at java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:127)
at java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:500)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:486)
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472)
at java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:230)
at java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:196)
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.util.stream.ReferencePipeline.anyMatch(ReferencePipeline.java:461)
at java.lang.invoke.MethodHandles.checkLoop2(MethodHandles.java:4040)
at java.lang.invoke.MethodHandles.loop(MethodHandles.java:3393)
at tests.invoke.loop.LoopExampleTest0.call(LoopExampleTest0.java:27)
at tests.invoke.loop.LoopExampleTest0.main(LoopExampleTest0.java:13)
Tests are under development, tck_red label will be added after development completion. Was found on jdk9b95/jdk9b106.
- blocks
-
JDK-8150957 j.l.i.MethodHandles.whileLoop(...) fails with IOOBE in the case 'init' is null, 'step' and 'pred' have parameters
-
- Closed
-