Index: pkg/analyzer/lib/src/task/incremental_element_builder.dart |
diff --git a/pkg/analyzer/lib/src/task/incremental_element_builder.dart b/pkg/analyzer/lib/src/task/incremental_element_builder.dart |
index 0fba8e2974d555236e004dcd52e04eedd4f86eb3..65de1a56c172dc04dea30e692fb500dc0edd8f36 100644 |
--- a/pkg/analyzer/lib/src/task/incremental_element_builder.dart |
+++ b/pkg/analyzer/lib/src/task/incremental_element_builder.dart |
@@ -155,7 +155,9 @@ class IncrementalCompilationUnitElementBuilder { |
ClassDeclaration oldClass, ClassDeclaration newClass) { |
// If the class hierarchy or type parameters are changed, |
// then the class changed too much - don't compute the delta. |
- if (TokenUtils.getFullCode(newClass.typeParameters) != |
+ if (newClass.abstractKeyword != null && oldClass.abstractKeyword == null || |
+ newClass.abstractKeyword == null && oldClass.abstractKeyword != null || |
+ TokenUtils.getFullCode(newClass.typeParameters) != |
TokenUtils.getFullCode(oldClass.typeParameters) || |
TokenUtils.getFullCode(newClass.extendsClause) != |
TokenUtils.getFullCode(oldClass.extendsClause) || |