I'd file a bug.  The compiler is just dumb.

Of course, if you want to be really industrious, you could stop using the globals and use Debug.environment the way the dhtml version of the debugger does. This would involve fixing the eval responder too (to wrap a `with (Debug.environment)` around the expression to evaluate. I just haven't done that out of sheer laziness.

On 2008-09-11, at 17:31EDT, Henry Minsky wrote:

I added these declarations for the debugger , at the start of a file
(outside of any class definitions)
var _;
var __;
var ___;

and I get these warnings from the debugger

    [java] Warning: Assignment to free variable ___ in
debugger/platform/swf9/LzDebug.as (87)
    [java] Warning: Assignment to free variable __ in
debugger/platform/swf9/LzDebug.as (90)
    [java] Warning: Assignment to free variable _ in
debugger/platform/swf9/LzDebug.as (92)



The method is doing some assignments , but why doesn't the compiler know
these are global vars?
Is there some regexp which is not matching these particular names in the
script compiler when it builds a list
of globals?



 override function displayResult (result) {
   if (typeof(result) != 'undefined') {
     // Advance saved results if you have a new one
     if (result !== _) {
       if (typeof(__) != 'undefined') {
         ___ = __;
       }
       if (typeof(_) != 'undefined') {
         __ = _;
       }
       _ = result;
     }
   }
   this.freshLine();
   // Output any result from the evalloader
   if (typeof(result) != 'undefined') {
     this.format("%#w", result);
   }
   this.freshPrompt();
 }
--
Henry Minsky
Software Architect
[EMAIL PROTECTED]

Reply via email to