<div dir="ltr"><div>Hi,</div><div><br></div><div>I have found an issue (that I don't think it has been discussed here before), and I wanted to ask for advice on how to handle it:</div><div><br></div><div>The startpc method overridden in FullBlockClosure does not have the same semantics as the method it overrides (from BlockClosure). <br></div><div>In BlockClosure, startpc points to where the block starts within its parent's bytecodes, whereas in FullBlockClosure the startpc method returns the initialPC of the closure within its own method, so it points to where the block starts within its own bytecodes.</div><div>This is not just a change in semantics, but it is also a disconnect from what a decompiled block node's pc is showing. The decompiled node's pc still has the old semantics, even though the block node is now translated to a full block closure. <br></div><div><br></div><div>This old semantics (of an address within the parent) was a quite useful feature, since it allowed one to match a closure to its corresponding block node in the AST (even though the pc was only set correctly by the decompiler and not by the compiler), but this now seems impossible. Or maybe I just don't see it. Any idea on how to solve this ?</div><div><br></div><div>Thank you,</div><div>Florin<br> </div></div>