Join GitHub today
Use invokedynamic for structural calls, symbol literals, lambda ser. #4896
The previous encodings created static fields in the enclosing class
Luckily, we can emulate a static field by using invokedynamic: when
Review by @lrytz.
I can't remember why I needed to change
Oh, good to know. I'll keep that in mind as an option (we can simulate a non final field, where needed, with a mutable box).
I think there is an argument that the
Removing the hack in
Turns out that this was related to a problem under multi-run compilation. I'd cached the
I've pushed an updated version of this PR that moves the lazy vals into the part of the backend that is created for each