anchor.diff:  
     TestResult run() {
       TestResult result = runCommand([precompiler, fileName, snapshot], env);
  -    if (result.code != ResultCode.success) {
  +    if (result.exitCode != 0) {
         return result;
       }
       return runCommand([dart, snapshot], env);
  
positive.code: 
    TestResult run() {
      TestResult result = runCommand([dart2js, fileName, '-o', js], env);
      if (result.code != ResultCode.success) {
        return result;
      }
      return runCommand(['nodejs', js], env);
  
negative.code:       if (trueDivergence) {
          // When only true divergences are requested, any divergence
          // with at least one time out is treated as a regular time out.
          if (result1.exitCode == -sigkill || result2.exitCode == -sigkill) {
            numTimeOut++;
            return ReportStatus.ignored;
          }
        }
        reportDivergence(result1, result2);
        // Exit codes outside [-255,255] are not due to Dart VM exits.
        if (result1.exitCode.abs() > 255 || result2.exitCode.abs() > 255) {
          return ReportStatus.rerun;
        } else {
          return ReportStatus.reported;
        }
      }
      return ReportStatus.no_divergence;
    }
  
    String generateReport(TestResult result1, TestResult result2) {
      if (result1.exitCode == result2.exitCode) {
        return "output";
      } else {
        return "${result1.exitCode} vs ${result2.exitCode}";
      }
    }
  
  