Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 #include "vm/parser.h" | 5 #include "vm/parser.h" |
| 6 | 6 |
| 7 #include "lib/invocation_mirror.h" | 7 #include "lib/invocation_mirror.h" |
| 8 #include "platform/utils.h" | 8 #include "platform/utils.h" |
| 9 #include "vm/bootstrap.h" | 9 #include "vm/bootstrap.h" |
| 10 #include "vm/class_finalizer.h" | 10 #include "vm/class_finalizer.h" |
| (...skipping 8035 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 8046 (original->IsLiteralNode() || | 8046 (original->IsLiteralNode() || |
| 8047 original->IsLoadLocalNode())) { | 8047 original->IsLoadLocalNode())) { |
| 8048 name = left_ident->raw(); | 8048 name = left_ident->raw(); |
| 8049 } | 8049 } |
| 8050 if (name.IsNull()) { | 8050 if (name.IsNull()) { |
| 8051 ErrorMsg(left_pos, "expression is not assignable"); | 8051 ErrorMsg(left_pos, "expression is not assignable"); |
| 8052 } | 8052 } |
| 8053 result = ThrowNoSuchMethodError( | 8053 result = ThrowNoSuchMethodError( |
| 8054 original->token_pos(), | 8054 original->token_pos(), |
| 8055 *target_cls, | 8055 *target_cls, |
| 8056 name, | 8056 String::ZoneHandle(Field::SetterName(name)), |
|
siva
2014/06/12 16:59:07
Why does it have to be a ZoneHandle just a regular
rmacnak
2014/06/12 22:52:08
Ok, ThrowNoSuchMethod creates its own zone handle
| |
| 8057 NULL, // No arguments. | 8057 NULL, // No arguments. |
| 8058 InvocationMirror::kStatic, | 8058 InvocationMirror::kStatic, |
| 8059 original->IsLoadLocalNode() ? | 8059 original->IsLoadLocalNode() ? |
| 8060 InvocationMirror::kLocalVar : InvocationMirror::kSetter, | 8060 InvocationMirror::kLocalVar : InvocationMirror::kSetter, |
| 8061 NULL); // No existing function. | 8061 NULL); // No existing function. |
| 8062 } else if (result->IsStoreIndexedNode() || | 8062 } else if (result->IsStoreIndexedNode() || |
| 8063 result->IsInstanceSetterNode() || | 8063 result->IsInstanceSetterNode() || |
| 8064 result->IsStaticSetterNode() || | 8064 result->IsStaticSetterNode() || |
| 8065 result->IsStoreStaticFieldNode() || | 8065 result->IsStoreStaticFieldNode() || |
| 8066 result->IsStoreLocalNode()) { | 8066 result->IsStoreLocalNode()) { |
| (...skipping 2968 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 11035 void Parser::SkipQualIdent() { | 11035 void Parser::SkipQualIdent() { |
| 11036 ASSERT(IsIdentifier()); | 11036 ASSERT(IsIdentifier()); |
| 11037 ConsumeToken(); | 11037 ConsumeToken(); |
| 11038 if (CurrentToken() == Token::kPERIOD) { | 11038 if (CurrentToken() == Token::kPERIOD) { |
| 11039 ConsumeToken(); // Consume the kPERIOD token. | 11039 ConsumeToken(); // Consume the kPERIOD token. |
| 11040 ExpectIdentifier("identifier expected after '.'"); | 11040 ExpectIdentifier("identifier expected after '.'"); |
| 11041 } | 11041 } |
| 11042 } | 11042 } |
| 11043 | 11043 |
| 11044 } // namespace dart | 11044 } // namespace dart |
| OLD | NEW |