> On 20 Jan 2017, at 09:45, Martin Buchholz <[email protected]> wrote:
> 
> 
> 
> On Fri, Jan 20, 2017 at 7:58 AM, Paul Sandoz <[email protected] 
> <mailto:[email protected]>> wrote:
> 
>> I was surprised to see below a change in parentheses that seems to change 
>> the behavior.
>> 
>>      final long nextSeed() {
>>          Thread t; long r; // read and update per-thread seed
>> -        SEED.set(t = Thread.currentThread(),
>> -                 (r = (long) SEED.get(t)) + GAMMA);
>> +        U.putLong(t = Thread.currentThread(), SEED,
>> +                  r = U.getLong(t, SEED) + GAMMA);
>>          return r;
>>      }
> 
> The update reverted to the previous code:
> 
> http://hg.openjdk.java.net/jdk9/dev/jdk/file/7901a13a051c/src/java.base/share/classes/java/util/concurrent/ThreadLocalRandom.java
>  
> <http://hg.openjdk.java.net/jdk9/dev/jdk/file/7901a13a051c/src/java.base/share/classes/java/util/concurrent/ThreadLocalRandom.java>
> 
> I added the parentheses to bound the cast.
> 
> It still looks to me like the parenthesis got added to the wrong place (in 
> the previous changeset!),

What place do you think they should be?

Paul.

Reply via email to