Index: lib/src/checker/checker.dart |
diff --git a/lib/src/checker/checker.dart b/lib/src/checker/checker.dart |
index 96c2d1d401915ce6e851247061e667418c0f2b10..e0e4d11d41327a47ca11bd48271a63058aa2637e 100644 |
--- a/lib/src/checker/checker.dart |
+++ b/lib/src/checker/checker.dart |
@@ -295,34 +295,12 @@ class _OverrideChecker { |
// get foo => e; // no type specified. |
// toString() { ... } // no return type specified. |
// } |
- if (_isInferableOverride(element, node, subType, baseType)) { |
- _recordMessage(new InferableOverride(errorLocation, element, type, |
- subType.returnType, baseType.returnType)); |
- } else { |
- _recordMessage(new InvalidMethodOverride( |
- errorLocation, element, type, subType, baseType)); |
- } |
+ _recordMessage(new InvalidMethodOverride( |
+ errorLocation, element, type, subType, baseType)); |
} |
return true; |
} |
- bool _isInferableOverride(ExecutableElement element, AstNode node, |
- FunctionType subType, FunctionType baseType) { |
- if (_inferFromOverrides || node == null) return false; |
- final isGetter = element is PropertyAccessorElement && element.isGetter; |
- if (isGetter && element.isSynthetic) { |
- var field = node.parent.parent; |
- return field is FieldDeclaration && field.fields.type == null; |
- } |
- |
- // node is a MethodDeclaration whenever getters and setters are |
- // declared explicitly. Setters declared from a field will have the |
- // correct return type, so we don't need to check that separately. |
- return node is MethodDeclaration && |
- node.returnType == null && |
- _rules.isFunctionSubTypeOf(subType, baseType, ignoreReturn: true); |
- } |
- |
void _recordMessage(StaticInfo info) { |
if (info == null) return; |
var error = info.toAnalysisError(); |