Index: src/js/macros.py |
diff --git a/src/js/macros.py b/src/js/macros.py |
index 94c9b9479b81f3d20a5bde78b479244ede75c4f8..e192d51296846a45404b8f5e430bb117d0d260e3 100644 |
--- a/src/js/macros.py |
+++ b/src/js/macros.py |
@@ -123,7 +123,7 @@ macro TO_PRIMITIVE_STRING(arg) = (%_ToPrimitive_String(arg)); |
macro TO_NAME(arg) = (%_ToName(arg)); |
macro JSON_NUMBER_TO_STRING(arg) = ((%_IsSmi(%IS_VAR(arg)) || arg - arg == 0) ? %_NumberToString(arg) : "null"); |
macro HAS_OWN_PROPERTY(arg, index) = (%_Call(ObjectHasOwnProperty, arg, index)); |
-macro HAS_INDEX(array, index, is_array) = ((is_array && %_HasFastPackedElements(%IS_VAR(array))) ? (index < array.length) : (index in array)); |
+macro HAS_INDEX(array, index, is_array) = ((is_array && %_HasFastPackedElements(%IS_VAR(array)) && (index < array.length)) || (index in array)); |
# Private names. |
macro IS_PRIVATE(sym) = (%SymbolIsPrivate(sym)); |