| Index: pkg/analyzer/lib/src/summary/summarize_ast.dart
|
| diff --git a/pkg/analyzer/lib/src/summary/summarize_ast.dart b/pkg/analyzer/lib/src/summary/summarize_ast.dart
|
| index 6340fdf7dbd3ba8215aee434567af663172d6306..abad77f4f885462174a6410e533d94d54a120980 100644
|
| --- a/pkg/analyzer/lib/src/summary/summarize_ast.dart
|
| +++ b/pkg/analyzer/lib/src/summary/summarize_ast.dart
|
| @@ -289,12 +289,6 @@ class _SummarizeAstVisitor extends RecursiveAstVisitor {
|
| Block enclosingBlock = null;
|
|
|
| /**
|
| - * A flag indicating whether a variable declaration is in the context of a
|
| - * field declaration.
|
| - */
|
| - bool inFieldContext = false;
|
| -
|
| - /**
|
| * Create a slot id for storing a propagated or inferred type.
|
| */
|
| int assignTypeSlot() => ++numSlots;
|
| @@ -742,7 +736,8 @@ class _SummarizeAstVisitor extends RecursiveAstVisitor {
|
| b.type = serializeTypeName(variables.type);
|
| b.documentationComment = serializeDocumentation(documentationComment);
|
| b.annotations = serializeAnnotations(annotations);
|
| - if (variable.isConst || variable.isFinal && inFieldContext) {
|
| + if (variable.isConst ||
|
| + variable.isFinal && isField && !isDeclaredStatic) {
|
| Expression initializer = variable.initializer;
|
| if (initializer != null) {
|
| b.constExpr = serializeConstExpr(initializer);
|
| @@ -889,13 +884,8 @@ class _SummarizeAstVisitor extends RecursiveAstVisitor {
|
|
|
| @override
|
| void visitFieldDeclaration(FieldDeclaration node) {
|
| - try {
|
| - inFieldContext = true;
|
| - serializeVariables(node.fields, node.staticKeyword != null,
|
| - node.documentationComment, node.metadata, true);
|
| - } finally {
|
| - inFieldContext = false;
|
| - }
|
| + serializeVariables(node.fields, node.staticKeyword != null,
|
| + node.documentationComment, node.metadata, true);
|
| }
|
|
|
| @override
|
|
|