Co-Authored-By: Claude Sonnet 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_017ic4b4VQVEJWetTT1dYzyJ
20 lines
1.1 KiB
Plaintext
20 lines
1.1 KiB
Plaintext
$ java -cp classes:asm-9.11.1.jar... demo.BrokenGenerate (25.0.5+8-LTS)
|
|
DROP_STACK_MAPS: verify() -> 1 problem(s)
|
|
Expecting a stackmap frame at branch target 8 in demo/Broken::pick(int) @1
|
|
DROP_STACK_MAPS: defineClass -> java.lang.VerifyError
|
|
Expecting a stackmap frame at branch target 8
|
|
Exception Details:
|
|
Location:
|
|
PASS a branching method built without stack maps fails verification
|
|
PASS the same code with default options verifies
|
|
ireturn in a String method: build() succeeded (126 bytes)
|
|
verify: Bad return type in demo/Wrong::bad() @1 (java/lang/String is not assignable from integer_type)
|
|
PASS verify() catches a wrongly typed return
|
|
PASS stack underflow is caught while building
|
|
underflow: build() threw java.lang.IllegalArgumentException
|
|
Operand stack underflow at bytecode offset 0 of method u()
|
|
swapped labels: build() succeeded (173 bytes), verify() -> 0 problem(s)
|
|
swapped labels: defineClass -> java.lang.ClassFormatError: Illegal exception table range in class file demo/Swapped
|
|
PASS the JVM rejects the swapped exception-table labels
|
|
exit=0
|