[9, 8u40] RFR (M): 8057020: LambdaForm caches should support eviction
john.r.rose at oracle.com
Wed Dec 3 06:38:20 UTC 2014
I sympathize with Paul's "gnarly" comment.
Nice bit of stream-ology (rheology) in the test code.
> On Dec 2, 2014, at 8:20 AM, Vladimir Ivanov <vladimir.x.ivanov at oracle.com> wrote:
>> In src/java.base/share/classes/java/lang/invoke/LambdaFormEditor.java
>> 366 lambdaForm.transformCache = c = ta;
>> Do you need to set "c"? It's a local variable and by this point the method should return rather than loop.
> I did it mostly as a cleanup. Now I think that it doesn't help much. Removed (+ similar change in another place).
The "c = " bit can be viewed as a bug-stopper. It prevents a later expression (if introduced in a future change) from accidentally using 'c' and getting an out-of-date value. A better bug-stopper would be a declaration that "c is dead as of this point, and cannot be used any more", but the language does not support that. I don't mind seeing the assignment deleted.
> On Dec 1, 2014, at 8:58 AM, Vladimir Ivanov <vladimir.x.ivanov at oracle.com> wrote:
More information about the core-libs-dev