FLEX-35343 debugger statement in AS generates call to flash.debugger.enterDebugger() in SWF
diff --git a/compiler/src/main/java/org/apache/flex/compiler/internal/as/codegen/ABCGeneratingReducer.java b/compiler/src/main/java/org/apache/flex/compiler/internal/as/codegen/ABCGeneratingReducer.java
index 359d32d..4e3d169 100644
--- a/compiler/src/main/java/org/apache/flex/compiler/internal/as/codegen/ABCGeneratingReducer.java
+++ b/compiler/src/main/java/org/apache/flex/compiler/internal/as/codegen/ABCGeneratingReducer.java
@@ -3224,8 +3224,14 @@
public InstructionList reduce_debuggerStmt(IASNode iNode)
{
- //TODO: make runtime pause in debugger -JT
- return createInstructionList(iNode);
+ InstructionList result = createInstructionList(iNode);
+
+ Namespace ns = new Namespace(CONSTANT_PackageNs, "flash.debugger");
+ Name enterDebuggerName = new Name(ns, "enterDebugger");
+ result.addInstruction(OP_finddef, enterDebuggerName);
+ result.addInstruction(OP_callproperty, new Object[] {enterDebuggerName, 0});
+
+ return result;
}
public InstructionList reduce_breakStmt(IASNode iNode)