anchor.diff:      GatheringErrorListener errorListener = new GatheringErrorListener();
       ErrorReporter errorReporter =
           new ErrorReporter(errorListener, _dummySource());
  -    DartObjectImpl result = expression.accept(new ConstantVisitor(
  -        new ConstantEvaluationEngine(
  -            new TestTypeProvider(), new DeclaredVariables(),
  -            typeSystem: new TypeSystemImpl()),
  -        errorReporter));
  +    DartObjectImpl result = _evaluate(expression, errorReporter);
       expect(result, isNull);
       errorListener
           .assertErrorsWithCodes([CompileTimeErrorCode.INVALID_CONSTANT]);
  
positive.code:     ElementHolder holder = new ElementHolder();
      ElementBuilder builder = new ElementBuilder(holder);
      String className = "A";
      ConstructorDeclaration constructorDeclaration = AstFactory
          .constructorDeclaration2(
              null,
              null,
              AstFactory.identifier3(className),
  
negative.code:   void test_locate_InstanceCreationExpression_type_simpleIdentifier() {
      // prepare: new A()
      SimpleIdentifier identifier = AstFactory.identifier3("A");
      InstanceCreationExpression creation =
          AstFactory.instanceCreationExpression2(
              Keyword.NEW, AstFactory.typeName3(identifier));
      // set ClassElement
      ClassElement classElement = ElementFactory.classElement2("A");
  