anchor.diff:  
                   return result;
                 } finally {
  -                $isolate[getterName] = function() { return this[fieldName]; };
  +                this[getterName] = function() { return this[fieldName]; };
                 }
               }
             }
  
positive.code:         #finishedClasses = Object.create(null);
  
          if (#needsLazyInitializer) {
            $lazyInitializerName = function (prototype, staticName, fieldName,
                                             getterName, lazyValue) {
              if (!#lazies) #lazies = Object.create(null);
              #lazies[fieldName] = getterName;
  
              var sentinelUndefined = {};
              var sentinelInProgress = {};
              prototype[fieldName] = sentinelUndefined;
  
              prototype[getterName] = function () {
                var result = $isolate[fieldName];
                try {
                  if (result === sentinelUndefined) {
                    $isolate[fieldName] = sentinelInProgress;
  
                    try {
                      result = $isolate[fieldName] = lazyValue();
                    } finally {
                      // Use try-finally, not try-catch/throw as it destroys the
                      // stack trace.
                      if (result === sentinelUndefined)
                        $isolate[fieldName] = null;
                    }
                  } else {
                    if (result === sentinelInProgress)
  
negative.code:     //   lazyInitializer(prototype, 'name', fieldName, getterName, initial);
      // The name is used for error reporting. The 'initial' must be a
      // closure that constructs the initial value.
      return js('#(#,#,#,#)',
          [js(lazyInitializerName),
              js.string(element.name),
              js.string(namer.globalPropertyName(element)),
              js.string(namer.lazyInitializerName(element)),
  