Index: runtime/vm/parser.cc |
diff --git a/runtime/vm/parser.cc b/runtime/vm/parser.cc |
index 78ca6a57c348da51d155fcd4752deebd29d194d8..9cb7dd44626b9803403ba5409e620abfb7dbc75d 100644 |
--- a/runtime/vm/parser.cc |
+++ b/runtime/vm/parser.cc |
@@ -11632,7 +11632,14 @@ AstNode* Parser::ParseClosurization(AstNode* primary) { |
// In the pathological case where a library imports itself with |
// a prefix, the name mangling does not help in hiding the private |
// name, so we explicitly prevent lookup of private names here. |
- obj = prefix.LookupObject(extractor_name); |
+ if (is_setter_name) { |
+ String& setter_name = |
+ String::Handle(Z, Field::SetterName(extractor_name)); |
+ obj = prefix.LookupObject(setter_name); |
+ } |
+ if (obj.IsNull()) { |
+ obj = prefix.LookupObject(extractor_name); |
+ } |
} |
if (!prefix.is_loaded() && (parsed_function() != NULL)) { |
// Remember that this function depends on an import prefix of an |