anchor.diff:                     this.parameters,
                      this.parameterNames)
       : declaredVariables = new Set<String>(),
  -      delayedVariablesDeclaration = new List<String>(),
  +      delayedVariableDeclarations = new Set<String>(),
         buffer = new StringBuffer(),
         generateAtUseSite = new Set<HInstruction>(),
         logicalOperations = new Set<HInstruction>(),
  
positive.code:   void declareVariable(String variableName) {
      if (isGeneratingExpression()) {
        if (generationState == STATE_FIRST_DECLARATION) {
          generationState = STATE_DECLARATION;
          if (!isVariableDeclared(variableName)) {
            declaredVariables.add(variableName);
            buffer.add("var ");
          }
        } else if (!isVariableDeclared(variableName)) {
          if (!isGeneratingDeclaration()) {
            delayedVariablesDeclaration.add(variableName);
          } else {
            declaredVariables.add(variableName);
          }
  
negative.code:    * While generating expressions, we can't insert variable declarations.
     * Instead we declare them at the end of the function
     */
    final Set<String> delayedVariableDeclarations;
  
    /**
     * Set of variables that have already been declared.
  