Index: pkg/compiler/lib/src/resolution/constructors.dart |
diff --git a/pkg/compiler/lib/src/resolution/constructors.dart b/pkg/compiler/lib/src/resolution/constructors.dart |
index 7612b0db259867231400fe14743efd08b0f27a15..256be2d3419f99c8432d3db5f17d342ccd54c71e 100644 |
--- a/pkg/compiler/lib/src/resolution/constructors.dart |
+++ b/pkg/compiler/lib/src/resolution/constructors.dart |
@@ -11,7 +11,7 @@ import '../constants/constructors.dart' show |
import '../constants/expressions.dart'; |
import '../dart_types.dart'; |
import '../diagnostics/diagnostic_listener.dart' show |
- DiagnosticListener, |
+ DiagnosticReporter, |
DiagnosticMessage; |
import '../diagnostics/invariant.dart' show |
invariant; |
@@ -62,7 +62,7 @@ class InitializerResolver { |
ResolutionRegistry get registry => visitor.registry; |
- DiagnosticListener get listener => visitor.compiler; |
+ DiagnosticReporter get reporter => visitor.reporter; |
bool isFieldInitializer(SendSet node) { |
if (node.selector.asIdentifier() == null) return false; |
@@ -72,13 +72,13 @@ class InitializerResolver { |
} |
reportDuplicateInitializerError(Element field, Node init, Node existing) { |
- listener.reportError( |
- listener.createMessage( |
+ reporter.reportError( |
+ reporter.createMessage( |
init, |
MessageKind.DUPLICATE_INITIALIZER, |
{'fieldName': field.name}), |
<DiagnosticMessage>[ |
- listener.createMessage( |
+ reporter.createMessage( |
existing, |
MessageKind.ALREADY_INITIALIZED, |
{'fieldName': field.name}), |
@@ -111,23 +111,23 @@ class InitializerResolver { |
if (isFieldInitializer(init)) { |
target = constructor.enclosingClass.lookupLocalMember(name); |
if (target == null) { |
- listener.reportErrorMessage( |
+ reporter.reportErrorMessage( |
selector, MessageKind.CANNOT_RESOLVE, {'name': name}); |
target = new ErroneousFieldElementX( |
selector.asIdentifier(), constructor.enclosingClass); |
} else if (target.kind != ElementKind.FIELD) { |
- listener.reportErrorMessage( |
+ reporter.reportErrorMessage( |
selector, MessageKind.NOT_A_FIELD, {'fieldName': name}); |
target = new ErroneousFieldElementX( |
selector.asIdentifier(), constructor.enclosingClass); |
} else if (!target.isInstanceMember) { |
- listener.reportErrorMessage( |
+ reporter.reportErrorMessage( |
selector, MessageKind.INIT_STATIC_FIELD, {'fieldName': name}); |
} else { |
field = target; |
} |
} else { |
- listener.reportErrorMessage( |
+ reporter.reportErrorMessage( |
init, MessageKind.INVALID_RECEIVER_IN_INITIALIZER); |
} |
registry.useElement(init, target); |
@@ -152,7 +152,7 @@ class InitializerResolver { |
if (isSuperCall) { |
// Calculate correct lookup target and constructor name. |
if (identical(constructor.enclosingClass, visitor.compiler.objectClass)) { |
- listener.reportErrorMessage( |
+ reporter.reportErrorMessage( |
diagnosticNode, MessageKind.SUPER_INITIALIZER_IN_OBJECT); |
isValidAsConstant = false; |
} else { |
@@ -264,7 +264,7 @@ class InitializerResolver { |
MessageKind kind = isImplicitSuperCall |
? MessageKind.CANNOT_RESOLVE_CONSTRUCTOR_FOR_IMPLICIT |
: MessageKind.CANNOT_RESOLVE_CONSTRUCTOR; |
- listener.reportErrorMessage( |
+ reporter.reportErrorMessage( |
diagnosticNode, kind, {'constructorName': fullConstructorName}); |
isValidAsConstant = false; |
} else { |
@@ -273,14 +273,14 @@ class InitializerResolver { |
MessageKind kind = isImplicitSuperCall |
? MessageKind.NO_MATCHING_CONSTRUCTOR_FOR_IMPLICIT |
: MessageKind.NO_MATCHING_CONSTRUCTOR; |
- listener.reportErrorMessage(diagnosticNode, kind); |
+ reporter.reportErrorMessage(diagnosticNode, kind); |
isValidAsConstant = false; |
} else if (constructor.isConst |
&& !lookedupConstructor.isConst) { |
MessageKind kind = isImplicitSuperCall |
? MessageKind.CONST_CALLS_NON_CONST_FOR_IMPLICIT |
: MessageKind.CONST_CALLS_NON_CONST; |
- listener.reportErrorMessage(diagnosticNode, kind); |
+ reporter.reportErrorMessage(diagnosticNode, kind); |
isValidAsConstant = false; |
} |
} |
@@ -350,13 +350,13 @@ class InitializerResolver { |
} else if (link.head.asSend() != null) { |
final Send call = link.head.asSend(); |
if (call.argumentsNode == null) { |
- listener.reportErrorMessage( |
+ reporter.reportErrorMessage( |
link.head, MessageKind.INVALID_INITIALIZER); |
continue; |
} |
if (Initializers.isSuperConstructorCall(call)) { |
if (resolvedSuper) { |
- listener.reportErrorMessage( |
+ reporter.reportErrorMessage( |
call, MessageKind.DUPLICATE_SUPER_INITIALIZER); |
} |
ResolutionResult result = resolveSuperOrThisForSend(call); |
@@ -373,12 +373,12 @@ class InitializerResolver { |
// constructor is also const, we already reported an error in |
// [resolveMethodElement]. |
if (functionNode.hasBody() && !constructor.isConst) { |
- listener.reportErrorMessage( |
+ reporter.reportErrorMessage( |
functionNode, MessageKind.REDIRECTING_CONSTRUCTOR_HAS_BODY); |
} |
// Check that there are no other initializers. |
if (!initializers.tail.isEmpty) { |
- listener.reportErrorMessage( |
+ reporter.reportErrorMessage( |
call, MessageKind.REDIRECTING_CONSTRUCTOR_HAS_INITIALIZER); |
} else { |
constructor.isRedirectingGenerative = true; |
@@ -388,7 +388,7 @@ class InitializerResolver { |
signature.forEachParameter((ParameterElement parameter) { |
if (parameter.isInitializingFormal) { |
Node node = parameter.node; |
- listener.reportErrorMessage( |
+ reporter.reportErrorMessage( |
node, MessageKind.INITIALIZING_FORMAL_NOT_ALLOWED); |
isValidAsConstant = false; |
} |
@@ -409,12 +409,12 @@ class InitializerResolver { |
} |
return result.element; |
} else { |
- listener.reportErrorMessage( |
+ reporter.reportErrorMessage( |
call, MessageKind.CONSTRUCTOR_CALL_EXPECTED); |
return null; |
} |
} else { |
- listener.reportErrorMessage( |
+ reporter.reportErrorMessage( |
link.head, MessageKind.INVALID_INITIALIZER); |
} |
} |
@@ -462,10 +462,10 @@ class ConstructorResolver extends CommonResolverVisitor<ConstructorResult> { |
registry.registerThrowRuntimeError(); |
} |
if (isError || inConstContext) { |
- compiler.reportErrorMessage( |
+ reporter.reportErrorMessage( |
diagnosticNode, kind, arguments); |
} else { |
- compiler.reportWarningMessage( |
+ reporter.reportWarningMessage( |
diagnosticNode, kind, arguments); |
} |
ErroneousElement error = new ErroneousConstructorElementX( |
@@ -495,14 +495,14 @@ class ConstructorResolver extends CommonResolverVisitor<ConstructorResult> { |
{'constructorName': fullConstructorName}, |
missingConstructor: true); |
} else if (inConstContext && !constructor.isConst) { |
- compiler.reportErrorMessage( |
+ reporter.reportErrorMessage( |
diagnosticNode, MessageKind.CONSTRUCTOR_IS_NOT_CONST); |
return new ConstructorResult( |
ConstructorResultKind.NON_CONSTANT, constructor, type); |
} else { |
if (constructor.isGenerativeConstructor) { |
if (cls.isAbstract) { |
- compiler.reportWarningMessage( |
+ reporter.reportWarningMessage( |
diagnosticNode, MessageKind.ABSTRACT_CLASS_INSTANTIATION); |
registry.registerAbstractClassInstantiation(); |
return new ConstructorResult( |
@@ -587,7 +587,7 @@ class ConstructorResolver extends CommonResolverVisitor<ConstructorResult> { |
Identifier name = node.selector.asIdentifier(); |
if (name == null) { |
- compiler.internalError(node.selector, 'unexpected node'); |
+ reporter.internalError(node.selector, 'unexpected node'); |
} |
if (receiver.type != null) { |
@@ -606,7 +606,7 @@ class ConstructorResolver extends CommonResolverVisitor<ConstructorResult> { |
Element member = prefix.lookupLocalMember(name.source); |
return constructorResultForElement(node, name.source, member); |
} else { |
- return compiler.internalError( |
+ return reporter.internalError( |
node.receiver, 'unexpected receiver $receiver'); |
} |
} |
@@ -614,7 +614,7 @@ class ConstructorResolver extends CommonResolverVisitor<ConstructorResult> { |
ConstructorResult visitIdentifier(Identifier node) { |
String name = node.source; |
Element element = resolver.reportLookupErrorIfAny( |
- lookupInScope(compiler, node, resolver.scope, name), node, name); |
+ lookupInScope(reporter, node, resolver.scope, name), node, name); |
registry.useElement(node, element); |
// TODO(johnniwinther): Change errors to warnings, cf. 11.11.1. |
return constructorResultForElement(node, name, element); |
@@ -629,7 +629,7 @@ class ConstructorResolver extends CommonResolverVisitor<ConstructorResult> { |
ConstructorResult constructorResultForElement( |
Node node, String name, Element element) { |
- element = Elements.unwrap(element, compiler, node); |
+ element = Elements.unwrap(element, reporter, node); |
if (element == null) { |
return reportAndCreateErroneousConstructorElement( |
node, |
@@ -699,7 +699,7 @@ class ConstructorResolver extends CommonResolverVisitor<ConstructorResult> { |
MessageKind.CANNOT_INSTANTIATE_TYPE_VARIABLE, |
{'typeVariableName': name}); |
} |
- return compiler.internalError(node, "Unexpected constructor type $type"); |
+ return reporter.internalError(node, "Unexpected constructor type $type"); |
} |
} |