anchor.diff:      return new TypeMask.exact(computeType(compiler));
     }
   
  -  HType union(HType other, Compiler compiler) {
  +  HType unionOld(HType other, Compiler compiler) {
       if (other.isConflicting()) return HType.BOOLEAN_OR_NULL;
       if (other.isUnknown()) return HType.UNKNOWN;
       if (other.isBooleanOrNull()) return HType.BOOLEAN_OR_NULL;
  
positive.code:    * A union with [UNKNOWN] returns [UNKNOWN].
     * A union of [CONFLICTING] with any other types returns the other type.
     */
    HType union(HType other, Compiler compiler);
  }
  
  /** Used to represent [HType.UNKNOWN] and [HType.CONFLICTING]. */
  
negative.code:     return new TypeMask.nonNullExact(computeType(compiler));
    }
  
    HType unionOld(HType other, Compiler compiler) {
      if (other.isConflicting()) return HType.INTEGER;
      if (other.isUnknown()) return HType.UNKNOWN;
      if (other.isInteger()) return HType.INTEGER;
  