Index: pkg/front_end/lib/src/fasta/kernel/kernel_enum_builder.dart |
diff --git a/pkg/front_end/lib/src/fasta/kernel/kernel_enum_builder.dart b/pkg/front_end/lib/src/fasta/kernel/kernel_enum_builder.dart |
index 1673f8de544cb23b102f3d8be8eb2cf81db1453e..75e03191b7203ac88f7fefea0d9dd06d3256522a 100644 |
--- a/pkg/front_end/lib/src/fasta/kernel/kernel_enum_builder.dart |
+++ b/pkg/front_end/lib/src/fasta/kernel/kernel_enum_builder.dart |
@@ -28,6 +28,8 @@ import 'package:kernel/ast.dart' |
ThisExpression, |
VariableGet; |
+import 'package:front_end/src/scanner/token.dart' show Token; |
+ |
import '../errors.dart' show inputError; |
import '../modifier.dart' show constMask, finalMask, staticMask; |
@@ -120,7 +122,14 @@ class KernelEnumBuilder extends SourceClassBuilder |
/// String toString() => { 0: ‘E.id0’, . . ., n-1: ‘E.idn-1’}[index] |
/// } |
members["index"] = new KernelFieldBuilder( |
- null, intType, "index", finalMask, parent, charOffset, null); |
+ null, |
+ intType, |
+ "index", |
+ finalMask, |
+ parent, |
+ charOffset, |
+ // Synthetic token to signal this field is initialized. |
+ new Token.eof(charOffset)); |
KernelConstructorBuilder constructorBuilder = new KernelConstructorBuilder( |
null, |
constMask, |
@@ -138,8 +147,15 @@ class KernelEnumBuilder extends SourceClassBuilder |
constructors[""] = constructorBuilder; |
int index = 0; |
List<MapEntry> toStringEntries = <MapEntry>[]; |
- KernelFieldBuilder valuesBuilder = new KernelFieldBuilder(null, listType, |
- "values", constMask | staticMask, parent, charOffset, null); |
+ KernelFieldBuilder valuesBuilder = new KernelFieldBuilder( |
+ null, |
+ listType, |
+ "values", |
+ constMask | staticMask, |
+ parent, |
+ charOffset, |
+ // Synthetic token to signal this field is initialized. |
+ new Token.eof(charOffset)); |
members["values"] = valuesBuilder; |
KernelProcedureBuilder toStringBuilder = new KernelProcedureBuilder( |
null, |
@@ -162,8 +178,15 @@ class KernelEnumBuilder extends SourceClassBuilder |
inputError(null, null, "Duplicated name: $name"); |
continue; |
} |
- KernelFieldBuilder fieldBuilder = new KernelFieldBuilder(null, selfType, |
- name, constMask | staticMask, parent, charOffset, null); |
+ KernelFieldBuilder fieldBuilder = new KernelFieldBuilder( |
+ null, |
+ selfType, |
+ name, |
+ constMask | staticMask, |
+ parent, |
+ charOffset, |
+ // Synthetic token to signal this field is initialized. |
+ new Token.eof(charOffset)); |
members[name] = fieldBuilder; |
toStringEntries.add(new MapEntry( |
new IntLiteral(index), new StringLiteral("$className.$name"))); |