anchor.diff:      currentBlock = make.emptyBlock();
       breakTargets = <JumpTarget>[];
       continueTargets = <JumpTarget>[];
  +    currentExceptionName = null;
       awaits = analysis.awaits;
       labels = analysis.labels;
       names = analysis.names;
  
positive.code:           [make.catchClause(null, exceptionName, stackTraceName,
                 make.block([ek.apply(exceptionName, stackTraceName)]))]);
      }
      addStatement(make.functionDeclarationStatement(catchName,
          [exceptionName, stackTraceName], catchBlock));
      return catchName;
  
negative.code:       // names.  Otherwise, choose fresh names to avoid shadowing anything.
        if (clauses.length == 1) {
          var only = clauses.first;
          exceptionName = currentExceptionName = only.exceptionParameter.name;
          stackTraceName = only.stackTraceParameter == null
              ? newName('s')
              : only.stackTraceParameter.name;
        } else {
          exceptionName = currentExceptionName = newName('e');
          stackTraceName = newName('s');
        }
        // Build a chain of if/else statements nested in the else blocks.
  