- changed status to resolved
Stack map error for TWR statement with multiple resources
Issue #288
resolved
ExtendJ 8.1.0-46-g6dab868 Java SE 8
public class Cy1 implements AutoCloseable { public static void main(String[] args) { try (Cy1 p0 = new Cy1(); Cy1 parser = new Cy1()) { return; } catch (Throwable e) { } } public void close() { } }
Expected result: the program should compile and execute without error.
Actual result: the compiled code fails to run:
Exception in thread "main" java.lang.VerifyError: Stack map does not match the one at exception handler 70 Exception Details: Location: Cy1.main([Ljava/lang/String;)V @70: astore_2 Reason: Type top (current frame, locals[1]) is not assignable to 'Cy1' (stack map, locals[1]) Current Frame: bci: @53 flags: { } locals: { '[Ljava/lang/String;' } stack: { 'java/lang/Throwable' } Stackmap Frame: bci: @70 flags: { } locals: { '[Ljava/lang/String;', 'Cy1' } stack: { 'java/lang/Throwable' }
Comments (1)
-
reporter - Log in to comment
Fix stack map construction error
fixes
#288(bitbucket)→ <<cset ddbdc642983e>>