anchor.diff:        ast.Field field = scope.getMemberReference(constant.element);
         field.initializer = new ast.ConstructorInvocation(
             constructor, new ast.Arguments([new ast.IntLiteral(index)]),
  -          isConst: true);
  +          isConst: true)..parent = field;
         field.type = new ast.InterfaceType(classNode);
         classNode.addMember(field);
         ++index;
  
positive.code:     valuesField.initializer = new ast.ListLiteral(
          enumConstantFields.map(_makeStaticGet).toList(),
          isConst: true,
          typeArgument: enumType);
      classNode.addMember(valuesField);
      // TODO: Add the toString method.
    }
  
negative.code:     List<ast.DartType> inferTypeArguments() {
        var inferredType = scope.getInferredType(node);
        if (inferredType is ast.InterfaceType) {
          return inferredType.typeArguments.toList();
        }
        var classElement = element?.enclosingElement;
        int numberOfTypeArguments =
  