Index: lib/src/checker/checker.dart |
diff --git a/lib/src/checker/checker.dart b/lib/src/checker/checker.dart |
index 46b909ab86f19e5f0fa82433114c257ee6836a63..6b6149bfb00f195be68f089dcd0450e804789f0b 100644 |
--- a/lib/src/checker/checker.dart |
+++ b/lib/src/checker/checker.dart |
@@ -120,7 +120,7 @@ class _OverrideChecker { |
// Check all interfaces reachable from the `implements` clause in the |
// current class against definitions here and in superclasses. |
- var localInterfaces = new Set(); |
+ var localInterfaces = new Set<InterfaceType>(); |
var type = node.element.type; |
type.interfaces.forEach((i) => find(i, localInterfaces)); |
_checkInterfacesOverrides(node, localInterfaces, seen, |
@@ -129,7 +129,7 @@ class _OverrideChecker { |
// Check also how we override locally the interfaces from parent classes if |
// the parent class is abstract. Otherwise, these will be checked as |
// overrides on the concrete superclass. |
- var superInterfaces = new Set(); |
+ var superInterfaces = new Set<InterfaceType>(); |
var parent = type.superclass; |
// TODO(sigmund): we don't seem to be reporting the analyzer error that a |
// non-abstract class is not implementing an interface. See |
@@ -239,7 +239,7 @@ class _OverrideChecker { |
} |
} else { |
if ((member as MethodDeclaration).isStatic) continue; |
- var method = member.element; |
+ var method = (member as MethodDeclaration).element; |
if (seen.contains(method.name)) continue; |
if (_checkSingleOverride(method, baseType, member, member)) { |
seen.add(method.name); |
@@ -841,7 +841,7 @@ class CodeChecker extends RecursiveAstVisitor { |
var element = node.staticElement; |
// Method invocation. |
if (element is MethodElement) { |
- var type = element.type as FunctionType; |
+ var type = element.type; |
// Analyzer should enforce number of parameter types, but check in |
// case we have erroneous input. |
if (type.normalParameterTypes.isNotEmpty) { |
@@ -882,7 +882,7 @@ class CodeChecker extends RecursiveAstVisitor { |
} else { |
var element = node.staticElement; |
if (element is MethodElement) { |
- var type = element.type as FunctionType; |
+ var type = element.type; |
// Analyzer should enforce number of parameter types, but check in |
// case we have erroneous input. |
if (type.normalParameterTypes.isNotEmpty) { |