Index: src/lookup.h |
diff --git a/src/lookup.h b/src/lookup.h |
index 8005f32eb957667b3ff05ddf95795d5ef0fe4bd1..3f439dfc43e764c96ce714056c412d7035c41810 100644 |
--- a/src/lookup.h |
+++ b/src/lookup.h |
@@ -263,9 +263,10 @@ class LookupIterator final BASE_EMBEDDED { |
Handle<Object> GetDataValue() const; |
void WriteDataValue(Handle<Object> value); |
inline void UpdateProtector() { |
- if (FLAG_harmony_species && !IsElement() && |
- (*name_ == heap()->constructor_string() || |
- *name_ == heap()->species_symbol())) { |
+ if (IsElement()) return; |
+ if (*name_ == heap()->is_concat_spreadable_symbol() || |
+ (FLAG_harmony_species && (*name_ == heap()->constructor_string() || |
+ *name_ == heap()->species_symbol()))) { |
InternalUpdateProtector(); |
} |
} |
@@ -353,8 +354,6 @@ class LookupIterator final BASE_EMBEDDED { |
State NotFound(JSReceiver* const holder) const; |
- bool HolderIsInContextIndex(uint32_t index) const; |
- |
// If configuration_ becomes mutable, update |
// HolderIsReceiverOrHiddenPrototype. |
const Configuration configuration_; |