anchor.diff:        }
       }
       // TODO(koda): Consider optimizing all small integral values.
  -    if (identical(0.0, this)) {
  -      return "0.0";
  +    if (isNaN) return "NaN";
  +    if (this == double.infinity) return "Infinity";
  +    if (this == -double.infinity) return "-Infinity";
  +    if (this == 0) {
  +      if (isNegative) {
  +        return "-0.0";
  +      } else {
  +        return "0.0";
  +      }
       }
       String result = _doubleToString(value);
  +    if (this % 1.0 == 0.0 && result.indexOf('e') == -1) {
  +      result = '$result.0';
  +    }
       // Replace the least recently inserted entry.
       _cache[_cacheEvictIndex] = this;
       _cache[_cacheEvictIndex + 1] = result;
  
positive.code:       return x.toString();
      }
  
      return _toStringAsFixed(fractionDigits);
    }
  
    String _toStringAsFixed(int fractionDigits) =>
  
negative.code: 
      // Step 4.
      if (isNaN) return "NaN";
      if (this == double.infinity) return "Infinity";
      if (this == -double.infinity) return "-Infinity";
  
      // Step 5 and 6 skipped. Will be dealt with by native function.
  
  