RFR: JDK-8177068: incomplete classpath causes NPE in Flow

Vicente Romero vicente.romero at oracle.com
Wed Sep 4 03:12:08 UTC 2019

looks good. I like the fact that you are reusing an approach already 
tested in a pretty similar situation,


On 9/3/19 10:50 AM, Jan Lahoda wrote:
> Hi,
> As DeferredAttr has been updated so that it has conflict with this 
> patch, I've updated the patch as well:
> http://cr.openjdk.java.net/~jlahoda/8177068/webrev.01/
> Not changes to the way the patch works, just resolving the conflicts.
> Any feedback on this patch would be welcome!
> Thanks,
>     Jan
> On 28. 08. 19 16:12, Jan Lahoda wrote:
>> Hi,
>> If a class cannot be load during speculative attribution due to a 
>> CompletionFailure, the CompletionFailure may not be happening again 
>> during the ordinary attribution, which may lead to errors not being 
>> reported (as the error is a consequence of the CompletionFailure). 
>> Producing the error only on CompletionFailures helps with error 
>> recovery by not producing unnecessary errors. A similar problem with 
>> completion in user code was solved by restoring the ClassSymbol for 
>> which the completion failed to the original state when the user code 
>> finishes. Something similar could be done for speculative 
>> attribution, undoing the completion for ClassSymbols which fail to 
>> complete during speculative attribution, so that their completion 
>> will fail again during ordinary attribution and the error is reported 
>> properly.
>> Proposed webrev: http://cr.openjdk.java.net/~jlahoda/8177068/webrev.00
>> JBS: https://bugs.openjdk.java.net/browse/JDK-8177068
>> How does this look?
>> Thanks,
>>      Jan

More information about the compiler-dev mailing list