anchor.diff:    }
   
     visitForeign(HForeign node) {
  -    visitedForeignCode = true;
  +    // TODO(sra): We could be a lot more picky about when to inhibit renaming of
  +    // locals - most JS strings don't contain free variables, or contain safe
  +    // ones like 'Object'.  JS strings like "#.length" and "#[#]" are perfectly
  +    // safe for variable renaming.
  +    inhibitVariableMinification = true;
       String code = node.code.slowToString();
       List<HInstruction> inputs = node.inputs;
       if (node.isJsStatement(types)) {
  
positive.code:    */
    bool isGeneratingExpression = false;
  
    bool visitedForeignCode = false;
  
    final JavaScriptBackend backend;
    final WorkItem work;
  
negative.code:   }
  
    visitForeignNew(HForeignNew node) {
      String jsClassReference = backend.namer.isolateAccess(node.element);
      List<HInstruction> inputs = node.inputs;
      // We can't use 'visitArguments', since our arguments start at input[0].
  