<div dir="ltr"><div dir="ltr">On Mon, Jan 23, 2023 at 3:03 PM Archie Cobbs <<a href="mailto:archie.cobbs@gmail.com">archie.cobbs@gmail.com</a>> wrote:</div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr">On Mon, Jan 23, 2023 at 2:01 PM Brian Goetz <<a href="mailto:brian.goetz@oracle.com" target="_blank">brian.goetz@oracle.com</a>> wrote:</div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>
> OK, JEP filed here: <a href="https://bugs.openjdk.org/browse/JDK-8300786" rel="noreferrer" target="_blank">https://bugs.openjdk.org/browse/JDK-8300786</a><br>
> Fire away :) <br>
<br>
Incoming fire....<br></blockquote><br></div></div></blockquote><div> </div><div>Updates applied. Thanks again for the review.</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_quote"><div></div><br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class="gmail-im"><p class="MsoNormal"><span lang="EN-US">> if `this` is DA/U on entry to a try block, it must be DA/U on exit from
that try block</span></p></span></blockquote></div></div></blockquote><div><br></div><div>This made me realize there is another missing requirement:</div><div><ul><li>Upon normal return from a constructor, the `this` reference must be DA <br></li></ul></div></div><div>Wouldn't that requirement subsume the one about try blocks? What I mean is, the normal dataflow analysis already takes care of try blocks, and what we care about is the DA/DU state when the constructor eventually returns.<br></div><div><br></div><div>Thanks,<br></div><div>-Archie<br></div><div><br></div>-- <br><div dir="ltr" class="gmail_signature">Archie L. Cobbs<br></div></div>