java.lang.VerifyError: Inconsistent stack map frames at branch target 70 Exception Details: Location: myproduct/aic.<init>(Lmyproduct/agw;Lmyproduct/aic$a;)V @70: new Reason: Current frame's flags are not assignable to stack map frame's. Current Frame: bci: @12 flags: { flagThisUninit } locals: { uninitializedThis, 'myproduct/aic$a', 'myproduct/aic$a' } stack: { uninitializedThis, 'myproduct/agw', integer } Stackmap Frame: bci: @70 flags: { } locals: { } stack: { uninitializedThis, 'myproduct/agw' } Bytecode: 0000000: 2a2b 2c4c b200 262b b600 422e aa00 0000 0000010: 0000 003a 0000 0001 0000 0003 0000 001c 0000020: 0000 0026 0000 0030 bb00 0a59 b700 33a7 0000030: 0021 bb00 0c59 b700 34a7 0017 bb00 0d59 0000040: b700 36a7 000d bb00 1f59 1204 b700 46bf 0000050: b700 40b1 Stackmap Table: full_frame(@40,{UninitializedThis},{UninitializedThis,Object[#23]}) full_frame(@50,{UninitializedThis},{UninitializedThis,Object[#23]}) full_frame(@60,{UninitializedThis},{UninitializedThis,Object[#23]}) full_frame(@70,{},{UninitializedThis,Object[#23]}) full_frame(@80,{UninitializedThis},{UninitializedThis,Object[#23],Object[#11 ]})

proguard | denis-ballant | 1 year ago
  1. 0

    Inconsistent stack map frames in 5.2.1

    proguard | 1 year ago | denis-ballant
    java.lang.VerifyError: Inconsistent stack map frames at branch target 70 Exception Details: Location: myproduct/aic.<init>(Lmyproduct/agw;Lmyproduct/aic$a;)V @70: new Reason: Current frame's flags are not assignable to stack map frame's. Current Frame: bci: @12 flags: { flagThisUninit } locals: { uninitializedThis, 'myproduct/aic$a', 'myproduct/aic$a' } stack: { uninitializedThis, 'myproduct/agw', integer } Stackmap Frame: bci: @70 flags: { } locals: { } stack: { uninitializedThis, 'myproduct/agw' } Bytecode: 0000000: 2a2b 2c4c b200 262b b600 422e aa00 0000 0000010: 0000 003a 0000 0001 0000 0003 0000 001c 0000020: 0000 0026 0000 0030 bb00 0a59 b700 33a7 0000030: 0021 bb00 0c59 b700 34a7 0017 bb00 0d59 0000040: b700 36a7 000d bb00 1f59 1204 b700 46bf 0000050: b700 40b1 Stackmap Table: full_frame(@40,{UninitializedThis},{UninitializedThis,Object[#23]}) full_frame(@50,{UninitializedThis},{UninitializedThis,Object[#23]}) full_frame(@60,{UninitializedThis},{UninitializedThis,Object[#23]}) full_frame(@70,{},{UninitializedThis,Object[#23]}) full_frame(@80,{UninitializedThis},{UninitializedThis,Object[#23],Object[#11 ]})
  2. 0

    FULL PRODUCT VERSION : java version "1.8.0_92" Java(TM) SE Runtime Environment (build 1.8.0_92-b14) Java HotSpot(TM) 64-Bit Server VM (build 25.92-b14, mixed mode) ADDITIONAL OS VERSION INFORMATION : 3.13.0-24-generic #47-Ubuntu SMP Fri May 2 23:30:00 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux A DESCRIPTION OF THE PROBLEM : Class compiles but fails to load: Error: A JNI error has occurred, please check your installation and try again Exception in thread "main" java.lang.VerifyError: Inconsistent stackmap frames at branch target 82 Exception Details: Location: SwitchCompilerErr.switchTo()V @82: new Reason: Type top (current frame, locals[3]) is not assignable to 'java/lang/String' (stack map, locals[3]) Current Frame: bci: @57 flags: { } locals: { 'SwitchCompilerErr', integer, integer } stack: { integer } Stackmap Frame: bci: @82 flags: { } locals: { 'SwitchCompilerErr', integer, integer, 'java/lang/String' } stack: { } Bytecode: 0x0000000: bb00 0259 b700 03b6 0004 3cbb 0002 59b7 0x0000010: 0003 b600 043d 1bab 0000 0017 0000 0001 0x0000020: 0000 0000 0000 0011 1205 4ea7 000d bb00 0x0000030: 0659 1207 b700 08bf 1cab 0000 0000 0019 0x0000040: 0000 0001 0000 0000 0000 0013 1205 4ea7 0x0000050: 000d bb00 0659 1207 b700 08bf b1 Stackmap Table: append_frame(@40,Integer,Integer) same_frame(@46) same_frame(@56) same_frame(@76) append_frame(@82,Object[#19]) chop_frame(@92,1) at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Class.privateGetDeclaredMethods(Class.java:2701) at java.lang.Class.privateGetMethodRecursive(Class.java:3048) at java.lang.Class.getMethod0(Class.java:3018) at java.lang.Class.getMethod(Class.java:1784) at sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:544) at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:526) REGRESSION. Last worked in version 7u76 ADDITIONAL REGRESSION INFORMATION: java version "1.7.0_76" Java(TM) SE Runtime Environment (build 1.7.0_76-b13) Java HotSpot(TM) 64-Bit Server VM (build 24.76-b04, mixed mode) STEPS TO FOLLOW TO REPRODUCE THE PROBLEM : compile and run supplied code EXPECTED VERSUS ACTUAL BEHAVIOR : EXPECTED - expected to load and execute ACTUAL - Error: A JNI error has occurred, please check your installation and try again Exception in thread "main" java.lang.VerifyError: Inconsistent stackmap frames at branch target 82 Exception Details: Location: SwitchCompilerErr.switchTo()V @82: new Reason: Type top (current frame, locals[3]) is not assignable to 'java/lang/String' (stack map, locals[3]) Current Frame: bci: @57 flags: { } locals: { 'SwitchCompilerErr', integer, integer } stack: { integer } Stackmap Frame: bci: @82 flags: { } locals: { 'SwitchCompilerErr', integer, integer, 'java/lang/String' } stack: { } Bytecode: 0x0000000: bb00 0259 b700 03b6 0004 3cbb 0002 59b7 0x0000010: 0003 b600 043d 1bab 0000 0017 0000 0001 0x0000020: 0000 0000 0000 0011 1205 4ea7 000d bb00 0x0000030: 0659 1207 b700 08bf 1cab 0000 0000 0019 0x0000040: 0000 0001 0000 0000 0000 0013 1205 4ea7 0x0000050: 000d bb00 0659 1207 b700 08bf b1 Stackmap Table: append_frame(@40,Integer,Integer) same_frame(@46) same_frame(@56) same_frame(@76) append_frame(@82,Object[#19]) chop_frame(@92,1) at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Class.privateGetDeclaredMethods(Class.java:2701) at java.lang.Class.privateGetMethodRecursive(Class.java:3048) at java.lang.Class.getMethod0(Class.java:3018) at java.lang.Class.getMethod(Class.java:1784) at sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:544) at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:526) REPRODUCIBILITY : This bug can be reproduced always. ---------- BEGIN SOURCE ---------- import java.util.Random; public class SwitchCompilerErr { private void switchTo() throws Exception { int e = new Random().nextInt(); int m = new Random().nextInt(); switch (e) { case 0: String a = ""; break; default: throw new Exception("Unknown "); } // String z = ""; switch (m) { case 0: String b = ""; break; default: throw new Exception("Unknown "); } } public static void main(String[] args) throws Exception { new SwitchCompilerErr().switchTo(); } } ---------- END SOURCE ---------- CUSTOMER SUBMITTED WORKAROUND : inserting variable definition in between switch statements prevents this issue

    JDK Bug System | 5 months ago | Webbug Group
    java.lang.VerifyError: Inconsistent stackmap frames at branch target 82 Exception Details: Location: SwitchCompilerErr.switchTo()V @82: new Reason: Type top (current frame, locals[3]) is not assignable to 'java/lang/String' (stack map, locals[3]) Current Frame: bci: @57 flags: { } locals: { 'SwitchCompilerErr', integer, integer } stack: { integer } Stackmap Frame: bci: @82 flags: { } locals: { 'SwitchCompilerErr', integer, integer, 'java/lang/String' } stack: { } Bytecode: 0000000: bb00 0259 b700 03b6 0004 3cbb 0002 59b7 0000010: 0003 b600 043d 1bab 0000 0017 0000 0001 0000020: 0000 0000 0000 0011 1205 4ea7 000d bb00 0000030: 0659 1207 b700 08bf 1cab 0000 0000 0019 0000040: 0000 0001 0000 0000 0000 0013 1205 4ea7 0000050: 000d bb00 0659 1207 b700 08bf b1 Stackmap Table: append_frame(@40,Integer,Integer) same_frame(@46) same_frame(@56) same_frame(@76) append_frame(@82,Object[#19]) chop_frame(@92,1)
  3. 0

    FULL PRODUCT VERSION : java version "1.8.0_92" Java(TM) SE Runtime Environment (build 1.8.0_92-b14) Java HotSpot(TM) 64-Bit Server VM (build 25.92-b14, mixed mode) ADDITIONAL OS VERSION INFORMATION : 3.13.0-24-generic #47-Ubuntu SMP Fri May 2 23:30:00 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux A DESCRIPTION OF THE PROBLEM : Class compiles but fails to load: Error: A JNI error has occurred, please check your installation and try again Exception in thread "main" java.lang.VerifyError: Inconsistent stackmap frames at branch target 82 Exception Details: Location: SwitchCompilerErr.switchTo()V @82: new Reason: Type top (current frame, locals[3]) is not assignable to 'java/lang/String' (stack map, locals[3]) Current Frame: bci: @57 flags: { } locals: { 'SwitchCompilerErr', integer, integer } stack: { integer } Stackmap Frame: bci: @82 flags: { } locals: { 'SwitchCompilerErr', integer, integer, 'java/lang/String' } stack: { } Bytecode: 0x0000000: bb00 0259 b700 03b6 0004 3cbb 0002 59b7 0x0000010: 0003 b600 043d 1bab 0000 0017 0000 0001 0x0000020: 0000 0000 0000 0011 1205 4ea7 000d bb00 0x0000030: 0659 1207 b700 08bf 1cab 0000 0000 0019 0x0000040: 0000 0001 0000 0000 0000 0013 1205 4ea7 0x0000050: 000d bb00 0659 1207 b700 08bf b1 Stackmap Table: append_frame(@40,Integer,Integer) same_frame(@46) same_frame(@56) same_frame(@76) append_frame(@82,Object[#19]) chop_frame(@92,1) at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Class.privateGetDeclaredMethods(Class.java:2701) at java.lang.Class.privateGetMethodRecursive(Class.java:3048) at java.lang.Class.getMethod0(Class.java:3018) at java.lang.Class.getMethod(Class.java:1784) at sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:544) at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:526) REGRESSION. Last worked in version 7u76 ADDITIONAL REGRESSION INFORMATION: java version "1.7.0_76" Java(TM) SE Runtime Environment (build 1.7.0_76-b13) Java HotSpot(TM) 64-Bit Server VM (build 24.76-b04, mixed mode) STEPS TO FOLLOW TO REPRODUCE THE PROBLEM : compile and run supplied code EXPECTED VERSUS ACTUAL BEHAVIOR : EXPECTED - expected to load and execute ACTUAL - Error: A JNI error has occurred, please check your installation and try again Exception in thread "main" java.lang.VerifyError: Inconsistent stackmap frames at branch target 82 Exception Details: Location: SwitchCompilerErr.switchTo()V @82: new Reason: Type top (current frame, locals[3]) is not assignable to 'java/lang/String' (stack map, locals[3]) Current Frame: bci: @57 flags: { } locals: { 'SwitchCompilerErr', integer, integer } stack: { integer } Stackmap Frame: bci: @82 flags: { } locals: { 'SwitchCompilerErr', integer, integer, 'java/lang/String' } stack: { } Bytecode: 0x0000000: bb00 0259 b700 03b6 0004 3cbb 0002 59b7 0x0000010: 0003 b600 043d 1bab 0000 0017 0000 0001 0x0000020: 0000 0000 0000 0011 1205 4ea7 000d bb00 0x0000030: 0659 1207 b700 08bf 1cab 0000 0000 0019 0x0000040: 0000 0001 0000 0000 0000 0013 1205 4ea7 0x0000050: 000d bb00 0659 1207 b700 08bf b1 Stackmap Table: append_frame(@40,Integer,Integer) same_frame(@46) same_frame(@56) same_frame(@76) append_frame(@82,Object[#19]) chop_frame(@92,1) at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Class.privateGetDeclaredMethods(Class.java:2701) at java.lang.Class.privateGetMethodRecursive(Class.java:3048) at java.lang.Class.getMethod0(Class.java:3018) at java.lang.Class.getMethod(Class.java:1784) at sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:544) at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:526) REPRODUCIBILITY : This bug can be reproduced always. ---------- BEGIN SOURCE ---------- import java.util.Random; public class SwitchCompilerErr { private void switchTo() throws Exception { int e = new Random().nextInt(); int m = new Random().nextInt(); switch (e) { case 0: String a = ""; break; default: throw new Exception("Unknown "); } // String z = ""; switch (m) { case 0: String b = ""; break; default: throw new Exception("Unknown "); } } public static void main(String[] args) throws Exception { new SwitchCompilerErr().switchTo(); } } ---------- END SOURCE ---------- CUSTOMER SUBMITTED WORKAROUND : inserting variable definition in between switch statements prevents this issue

    JDK Bug System | 5 months ago | Webbug Group
    java.lang.VerifyError: Inconsistent stackmap frames at branch target 82 Exception Details: Location: SwitchCompilerErr.switchTo()V @82: new Reason: Type top (current frame, locals[3]) is not assignable to 'java/lang/String' (stack map, locals[3]) Current Frame: bci: @57 flags: { } locals: { 'SwitchCompilerErr', integer, integer } stack: { integer } Stackmap Frame: bci: @82 flags: { } locals: { 'SwitchCompilerErr', integer, integer, 'java/lang/String' } stack: { } Bytecode: 0x0000000: bb00 0259 b700 03b6 0004 3cbb 0002 59b7 0x0000010: 0003 b600 043d 1bab 0000 0017 0000 0001 0x0000020: 0000 0000 0000 0011 1205 4ea7 000d bb00 0x0000030: 0659 1207 b700 08bf 1cab 0000 0000 0019 0x0000040: 0000 0001 0000 0000 0000 0013 1205 4ea7 0x0000050: 000d bb00 0659 1207 b700 08bf b1 Stackmap Table: append_frame(@40,Integer,Integer) same_frame(@46) same_frame(@56) same_frame(@76) append_frame(@82,Object[#19]) chop_frame(@92,1)
  4. Speed up your debug routine!

    Automated exception search integrated into your IDE

  5. 0

    FULL PRODUCT VERSION : java version "1.7.0_65" Java(TM) SE Runtime Environment (build 1.7.0_65-b17) Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04, mixed mode) FULL OS VERSION : Linux 3.13.0-29-generic #53~precise1-Ubuntu SMP Wed Jun 4 22:06:25 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux A DESCRIPTION OF THE PROBLEM : We found the bug with 1.7u65, but it appears also with 1.8u11. 1.7u60 and 1.8u5 don't have the issue. It has been reported by a Groovy user at http://jira.codehaus.org/browse/GROOVY-6951 The error message is there Exception in thread "main" java.lang.VerifyError: Bad <init> method call from inside of a branch Exception Details: Location: MyGroovyFile.<init>(Ljava/lang/String;)V @93: invokespecial Reason: Error exists in the bytecode To be able to make calls to the super constructor for object initialization we have a lookupswitch with the actual invokespecial call in the branch. This seems not to be accepted anymore if stack map frames are activated. Disabling the split verifier prevents the error THE PROBLEM WAS REPRODUCIBLE WITH -Xint FLAG: Yes THE PROBLEM WAS REPRODUCIBLE WITH -server FLAG: Yes REGRESSION. Last worked in version 7u60 STEPS TO FOLLOW TO REPRODUCE THE PROBLEM : get Grovy 2.3.4 and execute this program public class ConstructorCallA { public ConstructorCallA() { this(19) // call another constructor println "(1) no argument consructor" } public ConstructorCallA(String a) { println "(2) String value a = $a" } public ConstructorCallA(int a) { this("" + (a*a)) // call another constructor println "(3) int value a = $a" } } println "Testing for a class without call()" def a1 = new ConstructorCallA("foo") def a2 = new ConstructorCallA(9) def a3 = new ConstructorCallA() by putting it in a text file foo.groovy and execute it with "groovy --indy foo.groovy" (forces the selection of a bytecode level for jdk 1.7 and frames usage) EXPECTED VERSUS ACTUAL BEHAVIOR : expected output: Testing for a class without call() (2) String value a = foo (2) String value a = 81 (3) int value a = 9 (2) String value a = 361 (3) int value a = 19 (1) no argument consructor actual: fails with VerifyError ERROR MESSAGES/STACK TRACES THAT OCCUR : java.lang.VerifyError: Bad <init> method call from inside of a branch Exception Details: Location: ConstructorCallA.<init>(I)V @76: invokespecial Reason: Error exists in the bytecode Bytecode: 0000000: 04bd 0004 5903 125b 1b1b ba00 6800 00ba 0000010: 006d 0000 5359 10ff 1202 b800 1e2a 5fab 0000020: 0000 004c 0000 0003 aad3 b1ff 0000 0021 0000030: 0000 9b75 0000 0033 0013 462e 0000 003c 0000040: 5f5a 5903 32ba 002c 0000 5f57 b700 2fa7 0000050: 0026 5f5a 57b7 0031 a700 1d5f 5a59 0332 0000060: b800 375f 57b7 003a a700 0dbb 003c 5912 0000070: 3eb7 003f bf57 2abb 0055 5904 bd00 0459 0000080: 031b b800 1853 05bd 0057 5903 126f 5359 0000090: 0412 5b53 b700 5eba 0061 0000 57b1 Stackmap Table: full_frame(@64,{UninitializedThis,Integer},{Object[#76],UninitializedThis}) full_frame(@82,{UninitializedThis,Integer},{Object[#76],UninitializedThis}) full_frame(@91,{UninitializedThis,Integer},{Object[#76],UninitializedThis}) full_frame(@107,{UninitializedThis,Integer},{Object[#76],UninitializedThis}) full_frame(@117,{Object[#2],Integer},{Object[#76]}) java.lang.VerifyError: Bad <init> method call from inside of a branch Exception Details: Location: ConstructorCallA.<init>(I)V @76: invokespecial Reason: Error exists in the bytecode Bytecode: 0000000: 04bd 0004 5903 125b 1b1b ba00 6800 00ba 0000010: 006d 0000 5359 10ff 1202 b800 1e2a 5fab 0000020: 0000 004c 0000 0003 aad3 b1ff 0000 0021 0000030: 0000 9b75 0000 0033 0013 462e 0000 003c 0000040: 5f5a 5903 32ba 002c 0000 5f57 b700 2fa7 0000050: 0026 5f5a 57b7 0031 a700 1d5f 5a59 0332 0000060: b800 375f 57b7 003a a700 0dbb 003c 5912 0000070: 3eb7 003f bf57 2abb 0055 5904 bd00 0459 0000080: 031b b800 1853 05bd 0057 5903 126f 5359 0000090: 0412 5b53 b700 5eba 0061 0000 57b1 Stackmap Table: full_frame(@64,{UninitializedThis,Integer},{Object[#76],UninitializedThis}) full_frame(@82,{UninitializedThis,Integer},{Object[#76],UninitializedThis}) full_frame(@91,{UninitializedThis,Integer},{Object[#76],UninitializedThis}) full_frame(@107,{UninitializedThis,Integer},{Object[#76],UninitializedThis}) full_frame(@117,{Object[#2],Integer},{Object[#76]}) at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Class.java:2532) at java.lang.Class.getDeclaredConstructors(Class.java:1901) at org.codehaus.groovy.reflection.CachedClass$2$1.run(CachedClass.java:69) at java.security.AccessController.doPrivileged(Native Method) at org.codehaus.groovy.reflection.CachedClass$2.initValue(CachedClass.java:66) at org.codehaus.groovy.reflection.CachedClass$2.initValue(CachedClass.java:64) at org.codehaus.groovy.util.LazyReference.getLocked(LazyReference.java:46) at org.codehaus.groovy.util.LazyReference.get(LazyReference.java:33) at org.codehaus.groovy.reflection.CachedClass.getConstructors(CachedClass.java:263) at groovy.lang.MetaClassImpl.<init>(MetaClassImpl.java:190) at groovy.lang.MetaClassImpl.<init>(MetaClassImpl.java:194) at groovy.lang.MetaClassRegistry$MetaClassCreationHandle.createNormalMetaClass(MetaClassRegistry.java:158) at groovy.lang.MetaClassRegistry$MetaClassCreationHandle.createWithCustomLookup(MetaClassRegistry.java:148) at groovy.lang.MetaClassRegistry$MetaClassCreationHandle.create(MetaClassRegistry.java:131) at org.codehaus.groovy.reflection.ClassInfo.getMetaClassUnderLock(ClassInfo.java:238) at org.codehaus.groovy.reflection.ClassInfo.getMetaClass(ClassInfo.java:270) at org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.getMetaClass(MetaClassRegistryImpl.java:255) at org.codehaus.groovy.vmplugin.v7.Selector$InitSelector.getMetaClass(Selector.java:360) at org.codehaus.groovy.vmplugin.v7.Selector$MethodSelector.setCallSiteTarget(Selector.java:942) at org.codehaus.groovy.vmplugin.v7.IndyInterface.selectMethod(IndyInterface.java:211) at test.run(test.groovy:1867) at groovy.lang.GroovyShell.runScriptOrMainOrTestOrRunnable(GroovyShell.java:258) at groovy.lang.GroovyShell.run(GroovyShell.java:502) at groovy.lang.GroovyShell.run(GroovyShell.java:491) at groovy.ui.GroovyMain.processOnce(GroovyMain.java:650) at groovy.ui.GroovyMain.run(GroovyMain.java:381) at groovy.ui.GroovyMain.process(GroovyMain.java:367) at groovy.ui.GroovyMain.processArgs(GroovyMain.java:126) at groovy.ui.GroovyMain.main(GroovyMain.java:106) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:134) REPRODUCIBILITY : This bug can be reproduced always. CUSTOMER SUBMITTED WORKAROUND : In JDK7 the splitverifier can be disabled, but for JDK8 this is not possible anymore. Otherwise the bytecodelevel must be set low enough to not use stack map frames. If invokedynamic is supposed to be used on JDK8, there is no workaround

    JDK Bug System | 2 years ago | Webbug Group
    java.lang.VerifyError: Bad <init> method call from inside of a branch Exception Details: Location: ConstructorCallA.<init>(I)V @76: invokespecial Reason: Error exists in the bytecode Bytecode: 0000000: 04bd 0004 5903 125b 1b1b ba00 6800 00ba 0000010: 006d 0000 5359 10ff 1202 b800 1e2a 5fab 0000020: 0000 004c 0000 0003 aad3 b1ff 0000 0021 0000030: 0000 9b75 0000 0033 0013 462e 0000 003c 0000040: 5f5a 5903 32ba 002c 0000 5f57 b700 2fa7 0000050: 0026 5f5a 57b7 0031 a700 1d5f 5a59 0332 0000060: b800 375f 57b7 003a a700 0dbb 003c 5912 0000070: 3eb7 003f bf57 2abb 0055 5904 bd00 0459 0000080: 031b b800 1853 05bd 0057 5903 126f 5359 0000090: 0412 5b53 b700 5eba 0061 0000 57b1 Stackmap Table: full_frame(@64,{UninitializedThis,Integer},{Object[#76],UninitializedThis}) full_frame(@82,{UninitializedThis,Integer},{Object[#76],UninitializedThis}) full_frame(@91,{UninitializedThis,Integer},{Object[#76],UninitializedThis}) full_frame(@107,{UninitializedThis,Integer},{Object[#76],UninitializedThis}) full_frame(@117,{Object[#2],Integer},{Object[#76]})
  6. 0

    [#JDK-8051012] Regression in verifier for <init> method call from inside of a branch - Java Bug System

    java.net | 1 year ago
    java.lang.VerifyError: Bad <init> method call from inside of a branch Exception Details:   Location:     ConstructorCallA.<init>(I)V @76: invokespecial   Reason:     Error exists in the bytecode   Bytecode:     0000000: 04bd 0004 5903 125b 1b1b ba00 6800 00ba     0000010: 006d 0000 5359 10ff 1202 b800 1e2a 5fab     0000020: 0000 004c 0000 0003 aad3 b1ff 0000 0021     0000030: 0000 9b75 0000 0033 0013 462e 0000 003c     0000040: 5f5a 5903 32ba 002c 0000 5f57 b700 2fa7     0000050: 0026 5f5a 57b7 0031 a700 1d5f 5a59 0332     0000060: b800 375f 57b7 003a a700 0dbb 003c 5912     0000070: 3eb7 003f bf57 2abb 0055 5904 bd00 0459     0000080: 031b b800 1853 05bd 0057 5903 126f 5359     0000090: 0412 5b53 b700 5eba 0061 0000 57b1   Stackmap Table:     full_frame(@64,{UninitializedThis,Integer},{Object[#76],UninitializedThis})     full_frame(@82,{UninitializedThis,Integer},{Object[#76],UninitializedThis})     full_frame(@91,{UninitializedThis,Integer},{Object[#76],UninitializedThis})     full_frame(@107,{UninitializedThis,Integer},{Object[#76],UninitializedThis})     full_frame(@117,{Object[#2],Integer},{Object[#76]})

    Not finding the right solution?
    Take a tour to get the most out of Samebug.

    Tired of useless tips?

    Automated exception search integrated into your IDE

    Root Cause Analysis

    1. java.lang.VerifyError

      Inconsistent stack map frames at branch target 70 Exception Details: Location: myproduct/aic.<init>(Lmyproduct/agw;Lmyproduct/aic$a;)V @70: new Reason: Current frame's flags are not assignable to stack map frame's. Current Frame: bci: @12 flags: { flagThisUninit } locals: { uninitializedThis, 'myproduct/aic$a', 'myproduct/aic$a' } stack: { uninitializedThis, 'myproduct/agw', integer } Stackmap Frame: bci: @70 flags: { } locals: { } stack: { uninitializedThis, 'myproduct/agw' } Bytecode: 0000000: 2a2b 2c4c b200 262b b600 422e aa00 0000 0000010: 0000 003a 0000 0001 0000 0003 0000 001c 0000020: 0000 0026 0000 0030 bb00 0a59 b700 33a7 0000030: 0021 bb00 0c59 b700 34a7 0017 bb00 0d59 0000040: b700 36a7 000d bb00 1f59 1204 b700 46bf 0000050: b700 40b1 Stackmap Table: full_frame(@40,{UninitializedThis},{UninitializedThis,Object[#23]}) full_frame(@50,{UninitializedThis},{UninitializedThis,Object[#23]}) full_frame(@60,{UninitializedThis},{UninitializedThis,Object[#23]}) full_frame(@70,{},{UninitializedThis,Object[#23]}) full_frame(@80,{UninitializedThis},{UninitializedThis,Object[#23],Object[#11 ]})

      at myproduct.aha.a()
    2. myproduct
      zz.actionPerformed
      1. myproduct.aha.a(SourceFile:202)
      2. myproduct.aha.a(SourceFile:82)
      3. myproduct.zj.c(SourceFile:62)
      4. myproduct.zz.actionPerformed(SourceFile:96)
      4 frames