anchor.diff:    visitChildren(Visitor v) {}
     accept(ConstantVisitor v) => v.visitBoolConstant(this);
     acceptReference(Visitor v) => v.visitBoolConstantReference(this);
  +
  +  DartType getType(TypeEnvironment types) => types.boolType;
   }
   
   class IntConstant extends PrimitiveConstant<int> {
  
positive.code:   visitChildren(Visitor v) {}
    accept(ConstantVisitor v) => v.visitIntConstant(this);
    acceptReference(Visitor v) => v.visitIntConstantReference(this);
  }
  
  class DoubleConstant extends PrimitiveConstant<double> {
  
negative.code:   bool operator ==(Object other) =>
        other is DoubleConstant &&
        (other.value == value || identical(value, other.value) /* For NaN */);
  
    DartType getType(TypeEnvironment types) => types.doubleType;
  }
  
  class StringConstant extends PrimitiveConstant<String> {
  