| Index: src/ast/ast.cc
|
| diff --git a/src/ast/ast.cc b/src/ast/ast.cc
|
| index e5eb5e55fa0faff5c459600cd176addcd1daddd6..0d937d70dd62dfe1bab61e56ab6803874dea4318 100644
|
| --- a/src/ast/ast.cc
|
| +++ b/src/ast/ast.cc
|
| @@ -897,7 +897,8 @@ Call::CallType Call::GetCallType() const {
|
| VariableProxy* proxy = expression()->AsVariableProxy();
|
| if (proxy != NULL) {
|
| if (is_possibly_eval()) {
|
| - return POSSIBLY_EVAL_CALL;
|
| + return proxy->var()->mode() == DYNAMIC ? POSSIBLY_EVAL_THROUGH_WITH_CALL
|
| + : POSSIBLY_EVAL_CALL;
|
| } else if (proxy->var()->IsUnallocated()) {
|
| return GLOBAL_CALL;
|
| } else if (proxy->var()->IsLookupSlot()) {
|
|
|