Work-around for missing mixin-application charOffset

BUG=
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/2994553002 .
This commit is contained in:
Stephen Adams 2017-08-03 14:47:30 -07:00
parent 62303b6711
commit 2007487cf0

View file

@ -290,6 +290,10 @@ class KernelLibraryBuilder
int unresolvedCount = 0;
Map<String, TypeBuilder> freeTypes = <String, TypeBuilder>{};
// TODO(30316): Use correct locations of mixin applications
// (e.g. identifiers for mixed-in classes).
if (charOffset == -1) charOffset = type.charOffset;
if (name == null || type.mixins.length != 1) {
TypeBuilder last = type.mixins.last;
@ -419,8 +423,8 @@ class KernelLibraryBuilder
checkArguments(mixin);
supertype = applyMixin(supertype, mixin, signature,
isSyntheticMixinImplementation: true,
typeVariables:
new List<TypeVariableBuilder>.from(variables.values));
typeVariables: new List<TypeVariableBuilder>.from(variables.values),
charOffset: charOffset);
}
KernelNamedTypeBuilder mixin = type.mixins.last;