summaryrefslogtreecommitdiff
path: root/deps/v8/src/variables.h
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/src/variables.h')
-rw-r--r--deps/v8/src/variables.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/deps/v8/src/variables.h b/deps/v8/src/variables.h
index c2adb230ca..ca78b5fc1a 100644
--- a/deps/v8/src/variables.h
+++ b/deps/v8/src/variables.h
@@ -171,7 +171,7 @@ class Variable: public ZoneObject {
UseCount* var_uses() { return &var_uses_; }
UseCount* obj_uses() { return &obj_uses_; }
- bool IsVariable(Handle<String> n) {
+ bool IsVariable(Handle<String> n) const {
return !is_this() && name().is_identical_to(n);
}
@@ -185,6 +185,12 @@ class Variable: public ZoneObject {
bool is_this() const { return kind_ == THIS; }
bool is_arguments() const { return kind_ == ARGUMENTS; }
+ // True if the variable is named eval and not known to be shadowed.
+ bool is_possibly_eval() const {
+ return IsVariable(Factory::eval_symbol()) &&
+ (mode_ == DYNAMIC || mode_ == DYNAMIC_GLOBAL);
+ }
+
Variable* local_if_not_shadowed() const {
ASSERT(mode_ == DYNAMIC_LOCAL && local_if_not_shadowed_ != NULL);
return local_if_not_shadowed_;