[Really ready for review now. Backtraces work in swf9/10!] Change 20090929-ptw-y by [email protected] on 2009-09-29 18:01:59 EDT in /Users/ptw/OpenLaszlo/trunk for http://svn.openlaszlo.org/openlaszlo/trunk
Summary: A cut at getting backtracing to work in swf9 Bugs Fixed: LPP-1933 Compiler does not scope #pragma to compile-time conditional block LPP-8479 Debug.evalCarefully not necessary after LPP-8222? [I got carried away trying to make the line numbering in the debugger more accurate...] Technical Reviewer: hminsky (pending) QA Reviewer: [email protected] (pending) Release Notes: The debugger indicates when the file/line information on a debugger message is not accurate. If the location information is coming from the view associated with the error, rather than @file it will print %file. If the line number is only approximate (backtracing is not enabled), rather than #line it will print ~line. Details: regression, lzunit: Update to return from for-in (to work around AS3 bug in backtrace compiles. arrayEquals and xmlequals are more accurate now. lztext: Split the tests so as not to overflow the swf8 compiler block size in backtrace compiles. lzunit-test: Correct arg defaults so you don't get a bogus file name in string runtimes. LzPreloader, LzApplication, SWF9Writer, eval: Disable backtraces with a pragma. LzMessage, LzMonitor, LzTrace: Make file and line prefixes private, remove as3 clause now that backtraces are available there, remove handling of uncaught errors now that they can't happen. Improve heuristication of file/line from arguments. Indicate accuracy of file/line annotations (per release notes). LzDebug.*, LzDebugStub, LZBootstrapDebugService: Adjust for debugger being instantiated at load time in as3 (vs. incrementally in js1). Add kludges for nested try/finally not working in swf8. Work around return from for-in bug in as3. Move stackOverlow and backtrace methods here, rather than trying to add them dynamically. Library, LzBacktrace: Rewrite as classes, include in all runtimes. Had to rename stackframe `function` and `this` attributes to `callee` and `context`. Simplified debug and string methods. build: Make it so you can build a backtrace lfc independently of a debug lfc. CompilationManager, TopLevelCompiler, info-response: fix to calculate LFC size correctly CodeGenerator, JavascriptGenerator: Treat a compile-time conditional clause as a directive block scope per LPP-1933. Enable backtracing in swf9. Simplify transformation of <script> functions. Make sure only user variables are transformed, not annotations introduced by the compiler. Adjust backtrace annotation to work in as3 compiler. Move function name/line information to backtrace annotation from function object. SWF9External: Use LPS methods to compute LFC names, consider the backtrace flag. SWF9Generator: Force public members for NAME_FUNCTIONS SWF9ParseTreePrinter: Compensate for flex compiler not understanding comma expressions in []. Compiler: Clean up option defaulting so that debug LFC is compiled in debug mode. build-properties: Stop building swf7 and swf9. Tests: More stuff works, still failing for swf9+debug+bactrace Files: M test/smoke/regression.lzl M test/smoke/lztext.lzl M test/smoke/lzunit-test.lzl M WEB-INF/lps/lfc/kernel/swf9/LzPreloader.as M WEB-INF/lps/lfc/kernel/swf9/LFCApplication.as M WEB-INF/lps/lfc/debugger/LzMessage.lzs M WEB-INF/lps/lfc/debugger/LzDebug.lzs M WEB-INF/lps/lfc/debugger/platform/swf9/LzDebug.as M WEB-INF/lps/lfc/debugger/LzMonitor.lzs M WEB-INF/lps/lfc/debugger/Library.lzs M WEB-INF/lps/lfc/debugger/LzTrace.lzs M WEB-INF/lps/lfc/debugger/LzBacktrace.lzs M WEB-INF/lps/lfc/build.xml M WEB-INF/lps/lfc/compiler/LzDebugStub.lzs M WEB-INF/lps/lfc/compiler/LzBootstrapDebugService.lzs M WEB-INF/lps/server/src/org/openlaszlo/cm/CompilationManager.java M WEB-INF/lps/server/src/org/openlaszlo/sc/JavascriptGenerator.java M WEB-INF/lps/server/src/org/openlaszlo/sc/SWF9External.java M WEB-INF/lps/server/src/org/openlaszlo/sc/SWF9Generator.java M WEB-INF/lps/server/src/org/openlaszlo/sc/ SWF9ParseTreePrinter.java M WEB-INF/lps/server/src/org/openlaszlo/sc/Compiler.java M WEB-INF/lps/server/src/org/openlaszlo/sc/CodeGenerator.java M WEB-INF/lps/server/src/org/openlaszlo/compiler/ ToplevelCompiler.java M WEB-INF/lps/server/src/org/openlaszlo/compiler/SWF9Writer.java M WEB-INF/lps/templates/info-response.xslt M build.properties M lps/components/debugger/platform/swf9/eval.lzs M lps/components/lzunit/lzunit.lzx Changeset: http://svn.openlaszlo.org/openlaszlo/patches/20090929-ptw-y.tar _______________________________________________ Laszlo-reviews mailing list [email protected] http://www.openlaszlo.org/mailman/listinfo/laszlo-reviews
