diff --git a/src/main/java/ortus/boxlang/compiler/asmboxpiler/transformer/expression/BoxBreakTransformer.java b/src/main/java/ortus/boxlang/compiler/asmboxpiler/transformer/expression/BoxBreakTransformer.java index 4ba934e57..89111e785 100644 --- a/src/main/java/ortus/boxlang/compiler/asmboxpiler/transformer/expression/BoxBreakTransformer.java +++ b/src/main/java/ortus/boxlang/compiler/asmboxpiler/transformer/expression/BoxBreakTransformer.java @@ -90,18 +90,12 @@ public List transform( BoxNode node, TransformerContext contex nodes.add( new InsnNode( Opcodes.ARETURN ) ); return AsmHelper.addLineNumberLabels( nodes, node ); } else if ( exitsAllowed.equals( ExitsAllowed.LOOP ) ) { - // template = "if(true) break " + breakLabel + ";"; - nodes.add( new InsnNode( Opcodes.ARETURN ) ); + nodes.add( new InsnNode( transpiler.canReturn() ? Opcodes.ARETURN : Opcodes.RETURN ) ); return AsmHelper.addLineNumberLabels( nodes, node ); } else if ( exitsAllowed.equals( ExitsAllowed.FUNCTION ) ) { nodes.add( new InsnNode( Opcodes.ARETURN ) ); return AsmHelper.addLineNumberLabels( nodes, node ); - } else { - // template = "if(true) return;"; } - // if ( currentBreak == null ) { - // throw new RuntimeException( "Cannot break from current location" ); - // } throw new RuntimeException( "Cannot break from current location" ); diff --git a/src/test/java/TestCases/phase3/ClassTest.java b/src/test/java/TestCases/phase3/ClassTest.java index bb8a28522..9e877bb38 100644 --- a/src/test/java/TestCases/phase3/ClassTest.java +++ b/src/test/java/TestCases/phase3/ClassTest.java @@ -1646,10 +1646,10 @@ public void testPropertiesNotInheritedInMetadata() { } @Test - @Disabled( "BL-926" ) public void testUserASMError() { instance.executeSource( """ + new src.test.java.TestCases.phase3.ASMError() """, context );