You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Java: infer opaque type fields before method conversion
Before, opaque types' fields were inferred after a method is converted to codet (for example,
if we converted a method that accessed field A.x and type A didn't have a field x yet,
we would add it at this stage). This was problematic when converting functions on demand, as
we might create instances of an opaque type but then realise upon converting a later method
that it ought to have had more fields than we realised.
This commit changes our strategy to infer the types earlier, before any methods are converted.
This may lead to unnecessary work, but the pass executes very quickly even if thousands of
classes are loaded, so I expect the penalty to be minimal compared to the advantage that the
layout of types is fixed and will not change under the feet of subsequent passes.
0 commit comments