diff --git a/pkg/front_end/lib/src/fasta/kernel/kernel_library_builder.dart b/pkg/front_end/lib/src/fasta/kernel/kernel_library_builder.dart index d8df4f86fc8..181d22ca1c5 100644 --- a/pkg/front_end/lib/src/fasta/kernel/kernel_library_builder.dart +++ b/pkg/front_end/lib/src/fasta/kernel/kernel_library_builder.dart @@ -290,6 +290,10 @@ class KernelLibraryBuilder int unresolvedCount = 0; Map freeTypes = {}; + // 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.from(variables.values)); + typeVariables: new List.from(variables.values), + charOffset: charOffset); } KernelNamedTypeBuilder mixin = type.mixins.last;