On 2016-04-11 11:17, Paul Sandoz wrote:
On 11 Apr 2016, at 10:36, Michael Haupt <michael.ha...@oracle.com> wrote:

Dear all,

please review this change.
Bug: https://bugs.openjdk.java.net/browse/JDK-8153637
Webrev: http://cr.openjdk.java.net/~mhaupt/8153637/webrev.00/

The countedLoop implementation currently initialises the loop counter to the 
start value and, because this takes place in the very first loop clause, 
increments it immediately, leading to start+1 being passed to the first body 
invocation. The solution passes counter-1 to body. Alternatives that were 
considered include initialising the counter to start-1 (possible counting range 
is diminished), and to reorder loop clauses to move counter increment to the 
end of the loop (requires argument permutation).

This seems like a pragmatic compromise, and there is still wiggle room to 
change the implementation to something else.

Paul.

+1

Seeing no discernible impact on the performance of the current implementation, either.

/Claes

Reply via email to