| Index: pkg/kernel/lib/analyzer/loader.dart
|
| diff --git a/pkg/kernel/lib/analyzer/loader.dart b/pkg/kernel/lib/analyzer/loader.dart
|
| index 43a1b3dd41f31055c6a0e81bafb19d4ae56108b9..cba5824929c67f11962020127e6b9fcf8f7fe09a 100644
|
| --- a/pkg/kernel/lib/analyzer/loader.dart
|
| +++ b/pkg/kernel/lib/analyzer/loader.dart
|
| @@ -268,7 +268,7 @@ class DartLoader implements ReferenceLevelLoader {
|
| _classes[element] = classNode = new ast.Class(
|
| name: element.name,
|
| isAbstract: element.isAbstract,
|
| - fileUri: '${element.source.uri}');
|
| + fileUri: '${element.source.uri}')..fileOffset = element.nameOffset;
|
| classNode.level = ast.ClassLevel.Temporary;
|
| var library = getLibraryReference(element.library);
|
| library.addClass(classNode);
|
| @@ -318,6 +318,9 @@ class DartLoader implements ReferenceLevelLoader {
|
| // Use a shared mixin application class for this library.
|
| var mixinClass = getSharedMixinApplicationClass(
|
| scope.currentLibrary, supertype.classNode, mixinType.classNode);
|
| + if (mixinClass.fileOffset < 0) {
|
| + mixinClass.fileOffset = element.nameOffset;
|
| + }
|
| supertype = new ast.Supertype(
|
| mixinClass,
|
| supertype.typeArguments.length > mixinType.typeArguments.length
|
| @@ -333,7 +336,7 @@ class DartLoader implements ReferenceLevelLoader {
|
| typeParameters: freshParameters.freshTypeParameters,
|
| supertype: freshParameters.substituteSuper(supertype),
|
| mixedInType: freshParameters.substituteSuper(mixinType),
|
| - fileUri: classNode.fileUri);
|
| + fileUri: classNode.fileUri)..fileOffset = element.nameOffset;
|
| mixinClass.level = ast.ClassLevel.Type;
|
| supertype = new ast.Supertype(mixinClass,
|
| classNode.typeParameters.map(makeTypeParameterType).toList());
|
| @@ -446,12 +449,14 @@ class DartLoader implements ReferenceLevelLoader {
|
| isStatic: true,
|
| isExternal: constructor.isExternal,
|
| isConst: constructor.isConst,
|
| - fileUri: '${element.source.uri}');
|
| + fileUri: '${element.source.uri}')
|
| + ..fileOffset = element.nameOffset;
|
| }
|
| return new ast.Constructor(scope.buildFunctionInterface(constructor),
|
| name: _nameOfMember(element),
|
| isConst: constructor.isConst,
|
| - isExternal: constructor.isExternal);
|
| + isExternal: constructor.isExternal)
|
| + ..fileOffset = element.nameOffset;
|
|
|
| case ElementKind.FIELD:
|
| case ElementKind.TOP_LEVEL_VARIABLE:
|
| @@ -480,7 +485,7 @@ class DartLoader implements ReferenceLevelLoader {
|
| isAbstract: executable.isAbstract,
|
| isStatic: executable.isStatic,
|
| isExternal: executable.isExternal,
|
| - fileUri: '${element.source.uri}');
|
| + fileUri: '${element.source.uri}')..fileOffset = element.nameOffset;
|
|
|
| default:
|
| throw 'Unexpected member kind: $element';
|
|
|