| Index: dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart
|
| diff --git a/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart b/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart
|
| index d02064d6252e77c08100c4ee7e86488631b6c1a0..9ee95100a829b07ae2403be5f28a0bf92e0dae97 100644
|
| --- a/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart
|
| +++ b/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart
|
| @@ -962,8 +962,12 @@ class ResolverTask extends CompilerTask {
|
| annotation.resolutionState = STATE_STARTED;
|
|
|
| Node node = annotation.parseNode(compiler);
|
| - ResolverVisitor visitor =
|
| - visitorFor(annotation.annotatedElement.enclosingElement);
|
| + Element annotatedElement = annotation.annotatedElement;
|
| + Element context = annotatedElement.enclosingElement;
|
| + if (context == null) {
|
| + context = annotatedElement;
|
| + }
|
| + ResolverVisitor visitor = visitorFor(context);
|
| node.accept(visitor);
|
| annotation.value = compiler.metadataHandler.compileNodeWithDefinitions(
|
| node, visitor.mapping, isConst: true);
|
|
|