| Index: dart/frog/leg/resolver.dart
|
| diff --git a/dart/frog/leg/resolver.dart b/dart/frog/leg/resolver.dart
|
| index ac31af18593f7ba3c31b6ac203dd7070df5339a2..ee4fcf484b86072c097eba2c520a5657b6a7718f 100644
|
| --- a/dart/frog/leg/resolver.dart
|
| +++ b/dart/frog/leg/resolver.dart
|
| @@ -577,8 +577,9 @@ class FullResolverVisitor extends ResolverVisitor {
|
| [superElement.name, name]);
|
| }
|
| }
|
| - } else if (resolvedReceiver !== null
|
| - && resolvedReceiver.kind === ElementKind.CLASS) {
|
| + } else if (resolvedReceiver === null) {
|
| + return null;
|
| + } else if (resolvedReceiver.kind === ElementKind.CLASS) {
|
| ClassElement receiverClass = resolvedReceiver;
|
| target = receiverClass.resolve(compiler).lookupLocalMember(name);
|
| if (target === null) {
|
| @@ -587,6 +588,13 @@ class FullResolverVisitor extends ResolverVisitor {
|
| error(node, MessageKind.MEMBER_NOT_STATIC,
|
| [receiverClass.name, name]);
|
| }
|
| + } else if (resolvedReceiver.kind === ElementKind.PREFIX) {
|
| + PrefixElement prefix = resolvedReceiver;
|
| + target = prefix.library.lookupLocalMember(name);
|
| + if (target == null) {
|
| + error(node, MessageKind.NO_SUCH_LIBRARY_MEMBER,
|
| + [resolvedReceiver.name, name]);
|
| + }
|
| }
|
| }
|
| return target;
|
|
|