| Index: src/runtime.js
|
| diff --git a/src/runtime.js b/src/runtime.js
|
| index 77b97aed837d654f8f8a3fda74cce5393674c25b..4b600df7360b3431f9a3834937a022e35d1a4648 100644
|
| --- a/src/runtime.js
|
| +++ b/src/runtime.js
|
| @@ -354,7 +354,8 @@ function IN(x) {
|
| if (!IS_SPEC_OBJECT(x)) {
|
| throw %MakeTypeError('invalid_in_operator_use', [this, x]);
|
| }
|
| - return %_IsNonNegativeSmi(this) ? %HasElement(x, this) : %HasProperty(x, %ToString(this));
|
| + return %_IsNonNegativeSmi(this) && !%IsJSProxy(x) ?
|
| + %HasElement(x, this) : %HasProperty(x, %ToString(this));
|
| }
|
|
|
|
|
|
|