diff --git a/compiler/packages/babel-plugin-react-compiler/src/ReactiveScopes/CodegenReactiveFunction.ts b/compiler/packages/babel-plugin-react-compiler/src/ReactiveScopes/CodegenReactiveFunction.ts index c44e3b83fef..342d1672958 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/ReactiveScopes/CodegenReactiveFunction.ts +++ b/compiler/packages/babel-plugin-react-compiler/src/ReactiveScopes/CodegenReactiveFunction.ts @@ -577,14 +577,21 @@ function codegenReactiveScope( for (const dep of [...scope.dependencies].sort(compareScopeDependency)) { const index = cx.nextCacheIndex; - const comparison = t.binaryExpression( - '!==', - t.memberExpression( - t.identifier(cx.synthesizeName('$')), - t.numericLiteral(index), - true, + // Use Object.is() to correctly handle NaN and -0 comparisons, + // consistent with React's runtime hook dependency comparison. + const comparison = t.unaryExpression( + '!', + t.callExpression( + t.memberExpression(t.identifier('Object'), t.identifier('is')), + [ + t.memberExpression( + t.identifier(cx.synthesizeName('$')), + t.numericLiteral(index), + true, + ), + codegenDependency(cx, dep), + ], ), - codegenDependency(cx, dep), ); changeExpressions.push(comparison); /* diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/alias-computed-load.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/alias-computed-load.expect.md index 3d7de52f4f5..5b93f65c042 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/alias-computed-load.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/alias-computed-load.expect.md @@ -20,7 +20,7 @@ import { c as _c } from "react/compiler-runtime"; function component(a) { const $ = _c(2); let x; - if ($[0] !== a) { + if (!Object.is($[0], a)) { x = { a }; const y = {}; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/alias-while.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/alias-while.expect.md index 09ca55e9bbf..6f128085c96 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/alias-while.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/alias-while.expect.md @@ -30,7 +30,7 @@ import { c as _c } from "react/compiler-runtime"; function foo(cond) { const $ = _c(2); let a; - if ($[0] !== cond) { + if (!Object.is($[0], cond)) { a = {}; let b = {}; let c = {}; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/aliased-nested-scope-fn-expr.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/aliased-nested-scope-fn-expr.expect.md index e91766e79c5..d82a993774d 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/aliased-nested-scope-fn-expr.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/aliased-nested-scope-fn-expr.expect.md @@ -83,7 +83,7 @@ function Component(t0) { const $ = _c(2); const { prop } = t0; let t1; - if ($[0] !== prop) { + if (!Object.is($[0], prop)) { const obj = shallowCopy(prop); const aliasedObj = identity(obj); const getId = () => obj.id; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/aliased-nested-scope-truncated-dep.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/aliased-nested-scope-truncated-dep.expect.md index a44c3a1a5de..e2e27806341 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/aliased-nested-scope-truncated-dep.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/aliased-nested-scope-truncated-dep.expect.md @@ -178,7 +178,7 @@ function Component(t0) { const $ = _c(2); const { prop } = t0; let t1; - if ($[0] !== prop) { + if (!Object.is($[0], prop)) { const obj = shallowCopy(prop); const aliasedObj = identity(obj); const id = [obj.id]; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scope-starts-within-cond.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scope-starts-within-cond.expect.md index 33d89a92d77..b53927b3cb0 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scope-starts-within-cond.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scope-starts-within-cond.expect.md @@ -40,7 +40,7 @@ function useFoo(cond) { const $ = _c(3); let s; let t0; - if ($[0] !== cond) { + if (!Object.is($[0], cond)) { t0 = Symbol.for("react.early_return_sentinel"); bb0: { if (cond) { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-iife-return-modified-later-logical.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-iife-return-modified-later-logical.expect.md index 62ea047e254..aa05d504920 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-iife-return-modified-later-logical.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-iife-return-modified-later-logical.expect.md @@ -28,7 +28,7 @@ import { getNull } from "shared-runtime"; function Component(props) { const $ = _c(2); let items; - if ($[0] !== props.a) { + if (!Object.is($[0], props.a)) { items = getNull() ?? []; items.push(props.a); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-nested-block-structure.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-nested-block-structure.expect.md index 2de34053421..04d08299cca 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-nested-block-structure.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-nested-block-structure.expect.md @@ -120,7 +120,7 @@ function useFoo(t0) { const { cond1, cond2 } = t0; let s; let t1; - if ($[0] !== cond1 || $[1] !== cond2) { + if (!Object.is($[0], cond1) || !Object.is($[1], cond2)) { t1 = Symbol.for("react.early_return_sentinel"); bb0: { if (cond1) { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-reactive-scope-overlaps-if.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-reactive-scope-overlaps-if.expect.md index 028831fb282..a103c1e8c69 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-reactive-scope-overlaps-if.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-reactive-scope-overlaps-if.expect.md @@ -46,7 +46,7 @@ function useFoo(t0) { t1 = $[0]; } let items = t1; - if ($[1] !== cond) { + if (!Object.is($[1], cond)) { bb0: { if (cond) { items = []; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-reactive-scope-overlaps-label.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-reactive-scope-overlaps-label.expect.md index dc39126da45..448296bb560 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-reactive-scope-overlaps-label.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-reactive-scope-overlaps-label.expect.md @@ -40,7 +40,7 @@ function useFoo(t0) { const $ = _c(3); const { cond, value } = t0; let items; - if ($[0] !== cond || $[1] !== value) { + if (!Object.is($[0], cond) || !Object.is($[1], value)) { bb0: { items = []; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-reactive-scope-overlaps-try.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-reactive-scope-overlaps-try.expect.md index 1bc6b9b51eb..017e48167a2 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-reactive-scope-overlaps-try.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-reactive-scope-overlaps-try.expect.md @@ -36,7 +36,7 @@ function useFoo(t0) { const $ = _c(2); const { value } = t0; let items; - if ($[0] !== value) { + if (!Object.is($[0], value)) { try { items = []; arrayPush(items, value); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-within-nested-valueblock-in-array.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-within-nested-valueblock-in-array.expect.md index aff7a2e7b99..fc99bd48dc7 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-within-nested-valueblock-in-array.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/align-scopes-within-nested-valueblock-in-array.expect.md @@ -52,7 +52,7 @@ function Foo(t0) { const $ = _c(3); const { cond1, cond2 } = t0; let t1; - if ($[0] !== cond1 || $[1] !== cond2) { + if (!Object.is($[0], cond1) || !Object.is($[1], cond2)) { const arr = makeArray({ a: 2 }, 2, []); t1 = cond1 ? ( <> diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allocating-logical-expression-instruction-scope.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allocating-logical-expression-instruction-scope.expect.md index 70a0b8293d8..0fef2c6cfc8 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allocating-logical-expression-instruction-scope.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allocating-logical-expression-instruction-scope.expect.md @@ -35,7 +35,7 @@ function Foo() { const $ = _c(4); const data = useFragment(); let t0; - if ($[0] !== data) { + if (!Object.is($[0], data)) { t0 = data?.toString() || ""; $[0] = data; $[1] = t0; @@ -43,7 +43,7 @@ function Foo() { t0 = $[1]; } let t1; - if ($[2] !== t0) { + if (!Object.is($[2], t0)) { t1 = [t0]; $[2] = t0; $[3] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allocating-primitive-as-dep-nested-scope.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allocating-primitive-as-dep-nested-scope.expect.md index 6702b26e92d..e2f1ca394b0 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allocating-primitive-as-dep-nested-scope.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allocating-primitive-as-dep-nested-scope.expect.md @@ -47,12 +47,12 @@ import { identity, mutate, setProperty } from "shared-runtime"; function AllocatingPrimitiveAsDepNested(props) { const $ = _c(5); let t0; - if ($[0] !== props.a || $[1] !== props.b) { + if (!Object.is($[0], props.a) || !Object.is($[1], props.b)) { const x = {}; mutate(x); const t1 = identity(props.b) + 1; let t2; - if ($[3] !== t1) { + if (!Object.is($[3], t1)) { t2 = identity(t1); $[3] = t1; $[4] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allocating-primitive-as-dep.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allocating-primitive-as-dep.expect.md index 293d9964cc4..8267bb5d00c 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allocating-primitive-as-dep.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allocating-primitive-as-dep.expect.md @@ -26,7 +26,7 @@ function AllocatingPrimitiveAsDep(props) { const $ = _c(2); const t0 = bar(props).b + 1; let t1; - if ($[0] !== t0) { + if (!Object.is($[0], t0)) { t1 = foo(t0); $[0] = t0; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-global-mutation-in-effect-indirect-usecallback.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-global-mutation-in-effect-indirect-usecallback.expect.md index 9b583998714..2c51ebd67e0 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-global-mutation-in-effect-indirect-usecallback.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-global-mutation-in-effect-indirect-usecallback.expect.md @@ -75,7 +75,7 @@ function Component() { const t4 = String(state); let t5; - if ($[4] !== t4) { + if (!Object.is($[4], t4)) { t5 =
{t4}
; $[4] = t4; $[5] = t5; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-global-mutation-in-effect-indirect.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-global-mutation-in-effect-indirect.expect.md index 4a9dfb220ff..20022205f03 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-global-mutation-in-effect-indirect.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-global-mutation-in-effect-indirect.expect.md @@ -74,7 +74,7 @@ function Component() { const t4 = String(state); let t5; - if ($[4] !== t4) { + if (!Object.is($[4], t4)) { t5 =
{t4}
; $[4] = t4; $[5] = t5; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-global-reassignment-in-effect-indirect.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-global-reassignment-in-effect-indirect.expect.md index 4ac51dc56b1..2d41c986ec2 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-global-reassignment-in-effect-indirect.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-global-reassignment-in-effect-indirect.expect.md @@ -74,7 +74,7 @@ function Component() { const t4 = String(state); let t5; - if ($[4] !== t4) { + if (!Object.is($[4], t4)) { t5 =
{t4}
; $[4] = t4; $[5] = t5; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-global-reassignment-in-effect.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-global-reassignment-in-effect.expect.md index 3733f19d91d..ae336b20306 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-global-reassignment-in-effect.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-global-reassignment-in-effect.expect.md @@ -63,7 +63,7 @@ function Component() { const t3 = String(state); let t4; - if ($[3] !== t3) { + if (!Object.is($[3], t3)) { t4 =
{t3}
; $[3] = t3; $[4] = t4; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-modify-global-in-callback-jsx.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-modify-global-in-callback-jsx.expect.md index 8a3d0fac963..892a1144e65 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-modify-global-in-callback-jsx.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-modify-global-in-callback-jsx.expect.md @@ -42,7 +42,7 @@ function Component(t0) { const $ = _c(4); const { value } = t0; let t1; - if ($[0] !== value) { + if (!Object.is($[0], value)) { t1 = () => { someGlobal.value = value; }; @@ -53,7 +53,7 @@ function Component(t0) { } const onClick = t1; let t2; - if ($[2] !== onClick) { + if (!Object.is($[2], onClick)) { t2 =
{someGlobal.value}
; $[2] = onClick; $[3] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-mutate-global-in-effect-fixpoint.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-mutate-global-in-effect-fixpoint.expect.md index 76e4432fe90..ee5c3d530c4 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-mutate-global-in-effect-fixpoint.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-mutate-global-in-effect-fixpoint.expect.md @@ -87,7 +87,7 @@ function Component() { const t3 = String(state); let t4; - if ($[3] !== t3) { + if (!Object.is($[3], t3)) { t4 =
{t3}
; $[3] = t3; $[4] = t4; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-passing-ref-to-render-helper-props-object.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-passing-ref-to-render-helper-props-object.expect.md index f23ab16c16b..46dcc12c27c 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-passing-ref-to-render-helper-props-object.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-passing-ref-to-render-helper-props-object.expect.md @@ -28,7 +28,7 @@ function Component(props) { const T0 = Foo; const t0 = props.render({ ref }); let t1; - if ($[0] !== T0 || $[1] !== t0) { + if (!Object.is($[0], T0) || !Object.is($[1], t0)) { t1 = {t0}; $[0] = T0; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-passing-ref-to-render-helper.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-passing-ref-to-render-helper.expect.md index a0ad22fcaf4..94e01103028 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-passing-ref-to-render-helper.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-passing-ref-to-render-helper.expect.md @@ -25,7 +25,7 @@ function Component(props) { const $ = _c(4); const ref = useRef(null); let t0; - if ($[0] !== props.render) { + if (!Object.is($[0], props.render)) { t0 = props.render(ref); $[0] = props.render; $[1] = t0; @@ -33,7 +33,7 @@ function Component(props) { t0 = $[1]; } let t1; - if ($[2] !== t0) { + if (!Object.is($[2], t0)) { t1 = {t0}; $[2] = t0; $[3] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-ref-access-in-effect-indirect.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-ref-access-in-effect-indirect.expect.md index 6cf97f6c351..a17be296c3c 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-ref-access-in-effect-indirect.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-ref-access-in-effect-indirect.expect.md @@ -91,7 +91,7 @@ function Component() { const t5 = String(state); let t6; - if ($[5] !== t5) { + if (!Object.is($[5], t5)) { t6 = ; $[5] = t5; $[6] = t6; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-ref-access-in-effect.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-ref-access-in-effect.expect.md index 009d504da25..e9d4bc8f20c 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-ref-access-in-effect.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-ref-access-in-effect.expect.md @@ -77,7 +77,7 @@ function Component() { const t4 = String(state); let t5; - if ($[4] !== t4) { + if (!Object.is($[4], t4)) { t5 = ; $[4] = t4; $[5] = t5; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-ref-access-in-unused-callback-nested.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-ref-access-in-unused-callback-nested.expect.md index 26e996017eb..b11c47f7e1d 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-ref-access-in-unused-callback-nested.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/allow-ref-access-in-unused-callback-nested.expect.md @@ -73,7 +73,7 @@ function Component() { const t3 = String(state); let t4; - if ($[3] !== t3) { + if (!Object.is($[3], t3)) { t4 = ; $[3] = t3; $[4] = t4; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-access-assignment.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-access-assignment.expect.md index 2c6184553d8..3ac01417b24 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-access-assignment.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-access-assignment.expect.md @@ -33,10 +33,10 @@ function Component(t0) { const $ = _c(6); const { a, b, c } = t0; let t1; - if ($[0] !== a || $[1] !== b || $[2] !== c) { + if (!Object.is($[0], a) || !Object.is($[1], b) || !Object.is($[2], c)) { const x = [a]; let t2; - if ($[4] !== b) { + if (!Object.is($[4], b)) { t2 = [null, b]; $[4] = b; $[5] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-at-closure.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-at-closure.expect.md index cd782c3f791..8d9d44e49b4 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-at-closure.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-at-closure.expect.md @@ -21,7 +21,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(5); let t0; - if ($[0] !== props.x) { + if (!Object.is($[0], props.x)) { t0 = foo(props.x); $[0] = props.x; $[1] = t0; @@ -30,7 +30,7 @@ function Component(props) { } const x = t0; let t1; - if ($[2] !== props || $[3] !== x) { + if (!Object.is($[2], props) || !Object.is($[3], x)) { const fn = function () { const arr = [...bar(props)]; return arr.at(x); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-at-effect.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-at-effect.expect.md index a8bad512154..a2bd100a213 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-at-effect.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-at-effect.expect.md @@ -24,7 +24,7 @@ import { c as _c } from "react/compiler-runtime"; // arrayInstance.at should hav function ArrayAtTest(props) { const $ = _c(9); let t0; - if ($[0] !== props.x) { + if (!Object.is($[0], props.x)) { t0 = foo(props.x); $[0] = props.x; $[1] = t0; @@ -32,7 +32,7 @@ function ArrayAtTest(props) { t0 = $[1]; } let t1; - if ($[2] !== t0) { + if (!Object.is($[2], t0)) { t1 = [t0]; $[2] = t0; $[3] = t1; @@ -41,9 +41,9 @@ function ArrayAtTest(props) { } const arr = t1; let t2; - if ($[4] !== arr || $[5] !== props.y) { + if (!Object.is($[4], arr) || !Object.is($[5], props.y)) { let t3; - if ($[7] !== props.y) { + if (!Object.is($[7], props.y)) { t3 = bar(props.y); $[7] = props.y; $[8] = t3; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-at-mutate-after-capture.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-at-mutate-after-capture.expect.md index 8f7670c9422..5c54427bdef 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-at-mutate-after-capture.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-at-mutate-after-capture.expect.md @@ -23,7 +23,7 @@ import { c as _c } from "react/compiler-runtime"; // x's mutable range should ex function Component(props) { const $ = _c(2); let x; - if ($[0] !== props.b) { + if (!Object.is($[0], props.b)) { x = [42, {}]; const idx = foo(props.b); const y = x.at(idx); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-concat-should-capture.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-concat-should-capture.expect.md index e88eff03af2..b77bdc2d042 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-concat-should-capture.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-concat-should-capture.expect.md @@ -43,7 +43,7 @@ function Foo(t0) { const $ = _c(2); const { inputNum } = t0; let arr2; - if ($[0] !== inputNum) { + if (!Object.is($[0], inputNum)) { const arr1 = [{ a: 1 }, {}]; arr2 = arr1.concat([1, inputNum]); mutate(arr2[0]); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-expression-spread.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-expression-spread.expect.md index f3af7efcf62..3a45223a37d 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-expression-spread.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-expression-spread.expect.md @@ -22,7 +22,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(3); let t0; - if ($[0] !== props.bar || $[1] !== props.foo) { + if (!Object.is($[0], props.bar) || !Object.is($[1], props.foo)) { t0 = [0, ...props.foo, null, ...props.bar, "z"]; $[0] = props.bar; $[1] = props.foo; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-from-arg1-captures-arg0.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-from-arg1-captures-arg0.expect.md index 12be224d8f2..f035678a874 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-from-arg1-captures-arg0.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-from-arg1-captures-arg0.expect.md @@ -64,7 +64,7 @@ function Component(t0) { t2 = $[1]; } let t3; - if ($[2] !== value) { + if (!Object.is($[2], value)) { t3 = [t1, t2, { value }]; $[2] = value; $[3] = t3; @@ -74,7 +74,7 @@ function Component(t0) { const arr = t3; useIdentity(); let t4; - if ($[4] !== arr) { + if (!Object.is($[4], arr)) { t4 = Array.from(arr, _temp); $[4] = arr; $[5] = t4; @@ -83,7 +83,7 @@ function Component(t0) { } const derived = t4; let t5; - if ($[6] !== derived) { + if (!Object.is($[6], derived)) { t5 = derived.at(-1); $[6] = derived; $[7] = t5; @@ -91,7 +91,7 @@ function Component(t0) { t5 = $[7]; } let t6; - if ($[8] !== t5) { + if (!Object.is($[8], t5)) { t6 = {t5}; $[8] = t5; $[9] = t6; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-from-captures-arg0.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-from-captures-arg0.expect.md index 3e89dbeae8a..58a602b6864 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-from-captures-arg0.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-from-captures-arg0.expect.md @@ -64,7 +64,7 @@ function Component(t0) { t2 = $[1]; } let t3; - if ($[2] !== value) { + if (!Object.is($[2], value)) { t3 = [t1, t2, { value }]; $[2] = value; $[3] = t3; @@ -74,7 +74,7 @@ function Component(t0) { const arr = t3; useIdentity(); let t4; - if ($[4] !== arr) { + if (!Object.is($[4], arr)) { t4 = Array.from(arr); $[4] = arr; $[5] = t4; @@ -83,7 +83,7 @@ function Component(t0) { } const derived = t4; let t5; - if ($[6] !== derived) { + if (!Object.is($[6], derived)) { t5 = derived.at(-1); $[6] = derived; $[7] = t5; @@ -91,7 +91,7 @@ function Component(t0) { t5 = $[7]; } let t6; - if ($[8] !== t5) { + if (!Object.is($[8], t5)) { t6 = {t5}; $[8] = t5; $[9] = t6; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-from-maybemutates-arg0.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-from-maybemutates-arg0.expect.md index 94211944955..6508946ed6c 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-from-maybemutates-arg0.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-from-maybemutates-arg0.expect.md @@ -37,7 +37,7 @@ function Component(t0) { useIdentity(); const derived = Array.from(arr).map(mutateAndReturn); let t1; - if ($[0] !== derived) { + if (!Object.is($[0], derived)) { t1 = derived.at(0); $[0] = derived; $[1] = t1; @@ -45,7 +45,7 @@ function Component(t0) { t1 = $[1]; } let t2; - if ($[2] !== derived) { + if (!Object.is($[2], derived)) { t2 = derived.at(-1); $[2] = derived; $[3] = t2; @@ -53,7 +53,7 @@ function Component(t0) { t2 = $[3]; } let t3; - if ($[4] !== t1 || $[5] !== t2) { + if (!Object.is($[4], t1) || !Object.is($[5], t2)) { t3 = ( {t1} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-join.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-join.expect.md index 0dbb7884322..a78c167c9cd 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-join.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-join.expect.md @@ -29,7 +29,7 @@ function Component(props) { t1 = $[1]; } let t2; - if ($[2] !== props.value) { + if (!Object.is($[2], props.value)) { t2 = [t0, t1, props.value]; $[2] = props.value; $[3] = t2; @@ -40,7 +40,7 @@ function Component(props) { const y = x.join(_temp); foo(y); let t3; - if ($[4] !== x || $[5] !== y) { + if (!Object.is($[4], x) || !Object.is($[5], y)) { t3 = [x, y]; $[4] = x; $[5] = y; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-map-captures-receiver-noAlias.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-map-captures-receiver-noAlias.expect.md index efd094c1a53..32e1b3214c0 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-map-captures-receiver-noAlias.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-map-captures-receiver-noAlias.expect.md @@ -25,7 +25,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(2); let t0; - if ($[0] !== props.a) { + if (!Object.is($[0], props.a)) { const item = { a: props.a }; const items = [item]; t0 = items.map(_temp); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-map-noAlias-escaping-function.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-map-noAlias-escaping-function.expect.md index f165502a29b..fd460997ed1 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-map-noAlias-escaping-function.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-map-noAlias-escaping-function.expect.md @@ -24,7 +24,7 @@ function Component(props) { const $ = _c(2); const f = _temp; let t0; - if ($[0] !== props.items) { + if (!Object.is($[0], props.items)) { const x = [...props.items].map(f); t0 = [x, f]; $[0] = props.items; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-pattern-params.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-pattern-params.expect.md index 65e9bca48a8..e4f6f6dbf03 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-pattern-params.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-pattern-params.expect.md @@ -24,7 +24,7 @@ function component(t0) { const $ = _c(7); const [a, b] = t0; let t1; - if ($[0] !== a) { + if (!Object.is($[0], a)) { t1 = { a }; $[0] = a; $[1] = t1; @@ -33,7 +33,7 @@ function component(t0) { } const y = t1; let t2; - if ($[2] !== b) { + if (!Object.is($[2], b)) { t2 = { b }; $[2] = b; $[3] = t2; @@ -42,7 +42,7 @@ function component(t0) { } const z = t2; let t3; - if ($[4] !== y || $[5] !== z) { + if (!Object.is($[4], y) || !Object.is($[5], z)) { t3 = [y, z]; $[4] = y; $[5] = z; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-pattern-spread-creates-array.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-pattern-spread-creates-array.expect.md index c3bc1d16238..82ec1b18095 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-pattern-spread-creates-array.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-pattern-spread-creates-array.expect.md @@ -51,7 +51,7 @@ function Component(props) { } const x = t0; let rest; - if ($[1] !== props.array) { + if (!Object.is($[1], props.array)) { [, ...rest] = props.array; rest.push(x); @@ -69,7 +69,7 @@ function Component(props) { t1 = $[3]; } let t2; - if ($[4] !== props.array) { + if (!Object.is($[4], props.array)) { t2 = [props.array]; $[4] = props.array; $[5] = t2; @@ -77,7 +77,7 @@ function Component(props) { t2 = $[5]; } let t3; - if ($[6] !== rest_0 || $[7] !== t2) { + if (!Object.is($[6], rest_0) || !Object.is($[7], t2)) { t3 = ( <> {t1} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-properties.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-properties.expect.md index de226fdb715..98991a5443a 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-properties.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-properties.expect.md @@ -24,7 +24,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(7); let t0; - if ($[0] !== props.a || $[1] !== props.b) { + if (!Object.is($[0], props.a) || !Object.is($[1], props.b)) { t0 = [props.a, props.b, "hello"]; $[0] = props.a; $[1] = props.b; @@ -36,7 +36,7 @@ function Component(props) { const x = a.length; const y = a.push; let t1; - if ($[3] !== a || $[4] !== x || $[5] !== y) { + if (!Object.is($[3], a) || !Object.is($[4], x) || !Object.is($[5], y)) { t1 = { a, x, y, z: a.concat }; $[3] = a; $[4] = x; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-property-call.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-property-call.expect.md index 6618be4a6c0..9fa2cecde68 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-property-call.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-property-call.expect.md @@ -26,7 +26,7 @@ function Component(props) { const $ = _c(11); let a; let t0; - if ($[0] !== props.a || $[1] !== props.b) { + if (!Object.is($[0], props.a) || !Object.is($[1], props.b)) { a = [props.a, props.b, "hello"]; t0 = a.push(42); $[0] = props.a; @@ -39,7 +39,7 @@ function Component(props) { } const x = t0; let t1; - if ($[4] !== a || $[5] !== props.c) { + if (!Object.is($[4], a) || !Object.is($[5], props.c)) { t1 = a.at(props.c); $[4] = a; $[5] = props.c; @@ -49,7 +49,7 @@ function Component(props) { } const y = t1; let t2; - if ($[7] !== a || $[8] !== x || $[9] !== y) { + if (!Object.is($[7], a) || !Object.is($[8], x) || !Object.is($[9], y)) { t2 = { a, x, y }; $[7] = a; $[8] = x; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-push-effect.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-push-effect.expect.md index 22cda38b1d7..fcdfebfa409 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-push-effect.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-push-effect.expect.md @@ -25,7 +25,7 @@ import { c as _c } from "react/compiler-runtime"; // arrayInstance.push should h function Component(props) { const $ = _c(8); let t0; - if ($[0] !== props.x) { + if (!Object.is($[0], props.x)) { t0 = foo(props.x); $[0] = props.x; $[1] = t0; @@ -34,7 +34,7 @@ function Component(props) { } const x = t0; let t1; - if ($[2] !== props.y) { + if (!Object.is($[2], props.y)) { t1 = { y: props.y }; $[2] = props.y; $[3] = t1; @@ -43,7 +43,7 @@ function Component(props) { } const y = t1; let arr; - if ($[4] !== x || $[5] !== y) { + if (!Object.is($[4], x) || !Object.is($[5], y)) { arr = []; let t2; if ($[7] === Symbol.for("react.memo_cache_sentinel")) { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-spread-later-mutated.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-spread-later-mutated.expect.md index a317e22faf9..b553392ae70 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-spread-later-mutated.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-spread-later-mutated.expect.md @@ -33,7 +33,7 @@ function useBar(t0) { const $ = _c(2); const { arg } = t0; let arr; - if ($[0] !== arg) { + if (!Object.is($[0], arg)) { const obj = {}; const s = new Set([obj, 5, 4]); const mutableIterator = s.values(); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-spread-mutable-iterator.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-spread-mutable-iterator.expect.md index 7aa0702d470..93b97101d9b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-spread-mutable-iterator.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/array-spread-mutable-iterator.expect.md @@ -58,7 +58,7 @@ function useBar(t0) { const $ = _c(2); const { arg } = t0; let t1; - if ($[0] !== arg) { + if (!Object.is($[0], arg)) { const s = new Set([1, 5, 4]); const mutableIterator = s.values(); t1 = [arg, ...mutableIterator]; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/arrow-expr-directive.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/arrow-expr-directive.expect.md index 93eb2bd28ac..6a5c6fec539 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/arrow-expr-directive.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/arrow-expr-directive.expect.md @@ -36,7 +36,7 @@ function Component() { } const update = t0; let t1; - if ($[1] !== count) { + if (!Object.is($[1], count)) { t1 = ; $[1] = count; $[2] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/assignment-expression-computed.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/assignment-expression-computed.expect.md index 38b7044d15e..e1ee7252a08 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/assignment-expression-computed.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/assignment-expression-computed.expect.md @@ -25,7 +25,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(2); let x; - if ($[0] !== props.x) { + if (!Object.is($[0], props.x)) { x = [props.x]; x[0] = x[0] * 2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/assignment-expression-nested-path.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/assignment-expression-nested-path.expect.md index 23672bcf08f..f23127e3440 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/assignment-expression-nested-path.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/assignment-expression-nested-path.expect.md @@ -24,7 +24,7 @@ import { c as _c } from "react/compiler-runtime"; function g(props) { const $ = _c(2); let a; - if ($[0] !== props.c) { + if (!Object.is($[0], props.c)) { a = { b: { c: props.c } }; a.b.c = a.b.c + 1; a.b.c = a.b.c * 2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/await-side-effecting-promise.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/await-side-effecting-promise.expect.md index 6996c2cac7f..dd5a4e40d82 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/await-side-effecting-promise.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/await-side-effecting-promise.expect.md @@ -17,7 +17,7 @@ import { c as _c } from "react/compiler-runtime"; async function Component(props) { const $ = _c(2); let x; - if ($[0] !== props.id) { + if (!Object.is($[0], props.id)) { x = []; await populateData(props.id, x); $[0] = props.id; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/await.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/await.expect.md index 5415d9bd49d..b2c8694f292 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/await.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/await.expect.md @@ -16,7 +16,7 @@ import { c as _c } from "react/compiler-runtime"; async function Component(props) { const $ = _c(4); let t0; - if ($[0] !== props.id) { + if (!Object.is($[0], props.id)) { t0 = await load(props.id); $[0] = props.id; $[1] = t0; @@ -25,7 +25,7 @@ async function Component(props) { } const user = t0; let t1; - if ($[2] !== user.name) { + if (!Object.is($[2], user.name)) { t1 =
{user.name}
; $[2] = user.name; $[3] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/babel-existing-react-import.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/babel-existing-react-import.expect.md index 8b48145d913..f205b4fcab8 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/babel-existing-react-import.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/babel-existing-react-import.expect.md @@ -30,7 +30,7 @@ function Component(props) { const $ = _c(4); const [x] = useState(0); let t0; - if ($[0] !== x) { + if (!Object.is($[0], x)) { t0 = calculateExpensiveNumber(x); $[0] = x; $[1] = t0; @@ -39,7 +39,7 @@ function Component(props) { } const expensiveNumber = t0; let t1; - if ($[2] !== expensiveNumber) { + if (!Object.is($[2], expensiveNumber)) { t1 =
{expensiveNumber}
; $[2] = expensiveNumber; $[3] = t1; @@ -53,7 +53,7 @@ function Component2(props) { const $ = _c(4); const [x] = useState(0); let t0; - if ($[0] !== x) { + if (!Object.is($[0], x)) { t0 = calculateExpensiveNumber(x); $[0] = x; $[1] = t0; @@ -62,7 +62,7 @@ function Component2(props) { } const expensiveNumber = t0; let t1; - if ($[2] !== expensiveNumber) { + if (!Object.is($[2], expensiveNumber)) { t1 =
{expensiveNumber}
; $[2] = expensiveNumber; $[3] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/babel-existing-react-kitchensink-import.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/babel-existing-react-kitchensink-import.expect.md index 745da40e7c2..d4b8af90378 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/babel-existing-react-kitchensink-import.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/babel-existing-react-kitchensink-import.expect.md @@ -32,7 +32,7 @@ function Component(props) { const $ = _c(4); const [x] = useState(0); let t0; - if ($[0] !== x) { + if (!Object.is($[0], x)) { t0 = calculateExpensiveNumber(x); $[0] = x; $[1] = t0; @@ -41,7 +41,7 @@ function Component(props) { } const expensiveNumber = t0; let t1; - if ($[2] !== expensiveNumber) { + if (!Object.is($[2], expensiveNumber)) { t1 =
{expensiveNumber}
; $[2] = expensiveNumber; $[3] = t1; @@ -55,7 +55,7 @@ function Component2(props) { const $ = _c(4); const [x] = useState(0); let t0; - if ($[0] !== x) { + if (!Object.is($[0], x)) { t0 = calculateExpensiveNumber(x); $[0] = x; $[1] = t0; @@ -64,7 +64,7 @@ function Component2(props) { } const expensiveNumber = t0; let t1; - if ($[2] !== expensiveNumber) { + if (!Object.is($[2], expensiveNumber)) { t1 =
{expensiveNumber}
; $[2] = expensiveNumber; $[3] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/babel-existing-react-namespace-import.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/babel-existing-react-namespace-import.expect.md index 297b01229c2..5545f389db0 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/babel-existing-react-namespace-import.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/babel-existing-react-namespace-import.expect.md @@ -30,7 +30,7 @@ function Component(props) { const $ = _c(4); const [x] = React.useState(0); let t0; - if ($[0] !== x) { + if (!Object.is($[0], x)) { t0 = calculateExpensiveNumber(x); $[0] = x; $[1] = t0; @@ -39,7 +39,7 @@ function Component(props) { } const expensiveNumber = t0; let t1; - if ($[2] !== expensiveNumber) { + if (!Object.is($[2], expensiveNumber)) { t1 =
{expensiveNumber}
; $[2] = expensiveNumber; $[3] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/babel-existing-react-runtime-import.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/babel-existing-react-runtime-import.expect.md index ac4e7dc3a8c..d32c15560d5 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/babel-existing-react-runtime-import.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/babel-existing-react-runtime-import.expect.md @@ -36,7 +36,7 @@ function Component(props) { const $ = _c(4); const [x] = React.useState(0); let t0; - if ($[0] !== x) { + if (!Object.is($[0], x)) { t0 = calculateExpensiveNumber(x); $[0] = x; $[1] = t0; @@ -45,7 +45,7 @@ function Component(props) { } const expensiveNumber = t0; let t1; - if ($[2] !== expensiveNumber) { + if (!Object.is($[2], expensiveNumber)) { t1 = (
{expensiveNumber} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/babel-repro-compact-negative-number.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/babel-repro-compact-negative-number.expect.md index 70e19e0744a..a772340d8e7 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/babel-repro-compact-negative-number.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/babel-repro-compact-negative-number.expect.md @@ -31,7 +31,7 @@ function Repro(props) { const t0 = props.arg - -2; let t1; - if ($[0] !== t0) { + if (!Object.is($[0], t0)) { t1 = {t0}; $[0] = t0; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/block-scoping-switch-variable-scoping.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/block-scoping-switch-variable-scoping.expect.md index b8e46660612..de620d18d06 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/block-scoping-switch-variable-scoping.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/block-scoping-switch-variable-scoping.expect.md @@ -37,7 +37,7 @@ import { useMemo } from "react"; function Component(props) { const $ = _c(2); let t0; - if ($[0] !== props.value) { + if (!Object.is($[0], props.value)) { t0 = { value: props.value }; $[0] = props.value; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/bug-capturing-func-maybealias-captured-mutate.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/bug-capturing-func-maybealias-captured-mutate.expect.md index 8d1e8522255..711379ddce6 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/bug-capturing-func-maybealias-captured-mutate.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/bug-capturing-func-maybealias-captured-mutate.expect.md @@ -88,7 +88,7 @@ function Component(t0) { const $ = _c(3); const { foo, bar } = t0; let y; - if ($[0] !== bar || $[1] !== foo) { + if (!Object.is($[0], bar) || !Object.is($[1], foo)) { const x = { foo }; y = { bar }; const f0 = function () { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/bug-type-inference-control-flow.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/bug-type-inference-control-flow.expect.md index 4f4cf2d2747..8345cf82d9c 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/bug-type-inference-control-flow.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/bug-type-inference-control-flow.expect.md @@ -73,7 +73,7 @@ function useFoo(t0) { const $ = _c(5); const { cond, value } = t0; let x; - if ($[0] !== cond) { + if (!Object.is($[0], cond)) { x = { value: cond ? CONST_NUMBER0 : [] }; mutate(x); $[0] = cond; @@ -88,7 +88,7 @@ function useFoo(t0) { result = xValue + 1; } else { let t1; - if ($[2] !== value || $[3] !== xValue) { + if (!Object.is($[2], value) || !Object.is($[3], xValue)) { t1 = arrayPush(xValue, value); $[2] = value; $[3] = xValue; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/cache-nan-dependency.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/cache-nan-dependency.expect.md new file mode 100644 index 00000000000..4661a8dac00 --- /dev/null +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/cache-nan-dependency.expect.md @@ -0,0 +1,35 @@ + +## Input + +```javascript +// @flow +function Component({value}) { + const derived = 0 / 0; // NaN + const result = useMemo(() => [derived], [derived]); + return result; +} + +``` + +## Code + +```javascript +import { c as _c } from "react/compiler-runtime"; +function Component(t0) { + const $ = _c(1); + const derived = NaN; + let t1; + if ($[0] === Symbol.for("react.memo_cache_sentinel")) { + t1 = [NaN]; + $[0] = t1; + } else { + t1 = $[0]; + } + const result = t1; + return result; +} + +``` + +### Eval output +(kind: exception) Fixture not implemented \ No newline at end of file diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/cache-nan-dependency.js b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/cache-nan-dependency.js new file mode 100644 index 00000000000..7a12753293c --- /dev/null +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/cache-nan-dependency.js @@ -0,0 +1,6 @@ +// @flow +function Component({value}) { + const derived = 0 / 0; // NaN + const result = useMemo(() => [derived], [derived]); + return result; +} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/call-spread.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/call-spread.expect.md index 2d7bc3f046e..785a6797e3f 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/call-spread.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/call-spread.expect.md @@ -25,7 +25,7 @@ import { makeArray } from "shared-runtime"; function Component(props) { const $ = _c(3); let t0; - if ($[0] !== props.a || $[1] !== props.b) { + if (!Object.is($[0], props.a) || !Object.is($[1], props.b)) { t0 = makeArray(...props.a, null, ...props.b); $[0] = props.a; $[1] = props.b; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/call-with-independently-memoizable-arg.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/call-with-independently-memoizable-arg.expect.md index 8b9da4435b5..abcbae35988 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/call-with-independently-memoizable-arg.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/call-with-independently-memoizable-arg.expect.md @@ -21,10 +21,10 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(4); let t0; - if ($[0] !== props) { + if (!Object.is($[0], props)) { const x = makeFunction(props); let t1; - if ($[2] !== props.text) { + if (!Object.is($[2], props.text)) { t1 = (
{props.text} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capture-indirect-mutate-alias-iife.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capture-indirect-mutate-alias-iife.expect.md index 3e6c904fa7d..217481fd337 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capture-indirect-mutate-alias-iife.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capture-indirect-mutate-alias-iife.expect.md @@ -28,7 +28,7 @@ import { c as _c } from "react/compiler-runtime"; function component(a) { const $ = _c(2); let x; - if ($[0] !== a) { + if (!Object.is($[0], a)) { x = { a }; const q = x; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capture-indirect-mutate-alias.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capture-indirect-mutate-alias.expect.md index c52a4478545..47c6c5deb32 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capture-indirect-mutate-alias.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capture-indirect-mutate-alias.expect.md @@ -31,7 +31,7 @@ import { c as _c } from "react/compiler-runtime"; function component(a) { const $ = _c(2); let x; - if ($[0] !== a) { + if (!Object.is($[0], a)) { x = { a }; const f0 = function () { const q = x; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capture-param-mutate.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capture-param-mutate.expect.md index 9d3623b849a..98ee9d4d35d 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capture-param-mutate.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capture-param-mutate.expect.md @@ -49,7 +49,7 @@ import { c as _c } from "react/compiler-runtime"; function getNativeLogFunction(level) { const $ = _c(2); let t0; - if ($[0] !== level) { + if (!Object.is($[0], level)) { t0 = function () { let str; if (arguments.length === 1 && typeof arguments[0] === "string") { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capture_mutate-across-fns-iife.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capture_mutate-across-fns-iife.expect.md index 381ef075010..708d6497e37 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capture_mutate-across-fns-iife.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capture_mutate-across-fns-iife.expect.md @@ -26,7 +26,7 @@ import { c as _c } from "react/compiler-runtime"; function component(a) { const $ = _c(2); let z; - if ($[0] !== a) { + if (!Object.is($[0], a)) { z = { a }; (function () { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capture_mutate-across-fns.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capture_mutate-across-fns.expect.md index 0fd96063a60..9c93c67e26a 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capture_mutate-across-fns.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capture_mutate-across-fns.expect.md @@ -29,7 +29,7 @@ import { c as _c } from "react/compiler-runtime"; function component(a) { const $ = _c(2); let z; - if ($[0] !== a) { + if (!Object.is($[0], a)) { z = { a }; const f0 = function () { const f1 = function () { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-arrow-function-1.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-arrow-function-1.expect.md index 95921ce9f27..e4888e17279 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-arrow-function-1.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-arrow-function-1.expect.md @@ -25,7 +25,7 @@ import { c as _c } from "react/compiler-runtime"; function component(a) { const $ = _c(2); let t0; - if ($[0] !== a) { + if (!Object.is($[0], a)) { const z = { a }; t0 = () => { console.log(z); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-fun-alias-captured-mutate-2-iife.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-fun-alias-captured-mutate-2-iife.expect.md index 5e0b32709b3..482c81e6ce6 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-fun-alias-captured-mutate-2-iife.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-fun-alias-captured-mutate-2-iife.expect.md @@ -32,7 +32,7 @@ import { mutate } from "shared-runtime"; function component(foo, bar) { const $ = _c(3); let x; - if ($[0] !== bar || $[1] !== foo) { + if (!Object.is($[0], bar) || !Object.is($[1], foo)) { x = { foo }; const y = { bar }; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-fun-alias-captured-mutate-2.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-fun-alias-captured-mutate-2.expect.md index 061e64222ee..de174fe3057 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-fun-alias-captured-mutate-2.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-fun-alias-captured-mutate-2.expect.md @@ -40,7 +40,7 @@ function Component(t0) { const $ = _c(3); const { foo, bar } = t0; let x; - if ($[0] !== bar || $[1] !== foo) { + if (!Object.is($[0], bar) || !Object.is($[1], foo)) { x = { foo }; const y = { bar }; const f0 = function () { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-fun-alias-captured-mutate-arr-2-iife.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-fun-alias-captured-mutate-arr-2-iife.expect.md index 81737a1ed50..e3942a63ed4 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-fun-alias-captured-mutate-arr-2-iife.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-fun-alias-captured-mutate-arr-2-iife.expect.md @@ -32,7 +32,7 @@ const { mutate } = require("shared-runtime"); function component(foo, bar) { const $ = _c(3); let x; - if ($[0] !== bar || $[1] !== foo) { + if (!Object.is($[0], bar) || !Object.is($[1], foo)) { x = { foo }; const y = { bar }; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-fun-alias-captured-mutate-arr-2.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-fun-alias-captured-mutate-arr-2.expect.md index fb44f2c7b8f..9469632a0fc 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-fun-alias-captured-mutate-arr-2.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-fun-alias-captured-mutate-arr-2.expect.md @@ -40,7 +40,7 @@ function Component(t0) { const $ = _c(3); const { foo, bar } = t0; let x; - if ($[0] !== bar || $[1] !== foo) { + if (!Object.is($[0], bar) || !Object.is($[1], foo)) { x = { foo }; const y = { bar }; const f0 = function () { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-captured-mutate-arr-iife.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-captured-mutate-arr-iife.expect.md index 4882aa822f4..21d8940763d 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-captured-mutate-arr-iife.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-captured-mutate-arr-iife.expect.md @@ -32,7 +32,7 @@ const { mutate } = require("shared-runtime"); function component(foo, bar) { const $ = _c(3); let y; - if ($[0] !== bar || $[1] !== foo) { + if (!Object.is($[0], bar) || !Object.is($[1], foo)) { const x = { foo }; y = { bar }; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-captured-mutate-arr.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-captured-mutate-arr.expect.md index e9cb3c4fd14..1ac63753ace 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-captured-mutate-arr.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-captured-mutate-arr.expect.md @@ -38,7 +38,7 @@ function Component(t0) { const $ = _c(3); const { foo, bar } = t0; let y; - if ($[0] !== bar || $[1] !== foo) { + if (!Object.is($[0], bar) || !Object.is($[1], foo)) { const x = { foo }; y = { bar }; const f0 = function () { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-captured-mutate-iife.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-captured-mutate-iife.expect.md index 60493dd25ad..ff17a0d9aaf 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-captured-mutate-iife.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-captured-mutate-iife.expect.md @@ -32,7 +32,7 @@ const { mutate } = require("shared-runtime"); function component(foo, bar) { const $ = _c(3); let y; - if ($[0] !== bar || $[1] !== foo) { + if (!Object.is($[0], bar) || !Object.is($[1], foo)) { const x = { foo }; y = { bar }; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-captured-mutate.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-captured-mutate.expect.md index 9a98f76b971..e0fc340609c 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-captured-mutate.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-captured-mutate.expect.md @@ -39,7 +39,7 @@ function Component(t0) { const $ = _c(3); const { foo, bar } = t0; let y; - if ($[0] !== bar || $[1] !== foo) { + if (!Object.is($[0], bar) || !Object.is($[1], foo)) { const x = { foo }; y = { bar }; const f0 = function () { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-computed-mutate-iife.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-computed-mutate-iife.expect.md index f44c24650cf..c8ac7fc4142 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-computed-mutate-iife.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-computed-mutate-iife.expect.md @@ -30,7 +30,7 @@ const { mutate } = require("shared-runtime"); function component(a) { const $ = _c(2); let y; - if ($[0] !== a) { + if (!Object.is($[0], a)) { const x = { a }; y = {}; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-computed-mutate.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-computed-mutate.expect.md index 513718ba860..c7df91c5335 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-computed-mutate.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-computed-mutate.expect.md @@ -31,7 +31,7 @@ function Component(t0) { const $ = _c(2); const { a } = t0; let y; - if ($[0] !== a) { + if (!Object.is($[0], a)) { const x = { a }; y = {}; const f0 = function () { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-mutate-iife.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-mutate-iife.expect.md index 1a9dac53bf0..10424857dd8 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-mutate-iife.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-mutate-iife.expect.md @@ -30,7 +30,7 @@ const { mutate } = require("shared-runtime"); function component(a) { const $ = _c(2); let y; - if ($[0] !== a) { + if (!Object.is($[0], a)) { const x = { a }; y = {}; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-mutate.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-mutate.expect.md index ae145f4d9e2..92e2a970e84 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-mutate.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-mutate.expect.md @@ -31,7 +31,7 @@ function Component(t0) { const $ = _c(2); const { a } = t0; let y; - if ($[0] !== a) { + if (!Object.is($[0], a)) { const x = { a }; y = {}; const f0 = function () { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-receiver-computed-mutate-iife.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-receiver-computed-mutate-iife.expect.md index 448078a9b5a..37fbb5acd40 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-receiver-computed-mutate-iife.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-receiver-computed-mutate-iife.expect.md @@ -31,7 +31,7 @@ import { mutate } from "shared-runtime"; function component(a) { const $ = _c(2); let y; - if ($[0] !== a) { + if (!Object.is($[0], a)) { const x = { a }; y = {}; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-receiver-computed-mutate.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-receiver-computed-mutate.expect.md index d65e9cca927..1913da92d6f 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-receiver-computed-mutate.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-receiver-computed-mutate.expect.md @@ -34,7 +34,7 @@ function Component(t0) { const $ = _c(2); const { a } = t0; let y; - if ($[0] !== a) { + if (!Object.is($[0], a)) { const x = { a }; y = {}; const f0 = function () { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-receiver-mutate-iife.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-receiver-mutate-iife.expect.md index 3acc6eac15d..5011b179076 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-receiver-mutate-iife.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-receiver-mutate-iife.expect.md @@ -31,7 +31,7 @@ const { mutate } = require("shared-runtime"); function component(a) { const $ = _c(2); let y; - if ($[0] !== a) { + if (!Object.is($[0], a)) { const x = { a }; y = {}; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-receiver-mutate.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-receiver-mutate.expect.md index deb78c79e08..c613e928ca4 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-receiver-mutate.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-alias-receiver-mutate.expect.md @@ -34,7 +34,7 @@ function Component(t0) { const $ = _c(2); const { a } = t0; let y; - if ($[0] !== a) { + if (!Object.is($[0], a)) { const x = { a }; y = {}; const f0 = function () { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-mutate-2.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-mutate-2.expect.md index 6836544c5d3..8d0d913659b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-mutate-2.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-mutate-2.expect.md @@ -28,7 +28,7 @@ import { c as _c } from "react/compiler-runtime"; function component(a, b) { const $ = _c(2); let z; - if ($[0] !== a) { + if (!Object.is($[0], a)) { z = { a }; const x = function () { z.a = 2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-mutate-3.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-mutate-3.expect.md index ca9986720c0..5d2bf80f2e5 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-mutate-3.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-mutate-3.expect.md @@ -27,7 +27,7 @@ import { c as _c } from "react/compiler-runtime"; function component(a, b) { const $ = _c(2); let t0; - if ($[0] !== a) { + if (!Object.is($[0], a)) { t0 = { a }; $[0] = a; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-mutate-nested.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-mutate-nested.expect.md index 566b02e1719..2dff721f389 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-mutate-nested.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-mutate-nested.expect.md @@ -26,7 +26,7 @@ import { c as _c } from "react/compiler-runtime"; function component(a) { const $ = _c(2); let y; - if ($[0] !== a) { + if (!Object.is($[0], a)) { y = { b: { a } }; const x = function () { y.b.a = 2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-mutate.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-mutate.expect.md index 03c0db7e971..7c4d1c0836b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-mutate.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-mutate.expect.md @@ -38,7 +38,7 @@ function Component(t0) { const $ = _c(3); const { a, b } = t0; let t1; - if ($[0] !== a || $[1] !== b) { + if (!Object.is($[0], a) || !Object.is($[1], b)) { const z = { a }; const y = { b: { b } }; const x = function () { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-no-mutate.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-no-mutate.expect.md index 14bf94e770a..600c018de88 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-no-mutate.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-no-mutate.expect.md @@ -34,10 +34,10 @@ function Component(t0) { const $ = _c(5); const { a, b } = t0; let z; - if ($[0] !== a || $[1] !== b) { + if (!Object.is($[0], a) || !Object.is($[1], b)) { z = { a }; let t1; - if ($[3] !== b) { + if (!Object.is($[3], b)) { t1 = { b }; $[3] = b; $[4] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-simple-alias-iife.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-simple-alias-iife.expect.md index a071dddba6b..f2532c8167a 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-simple-alias-iife.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-simple-alias-iife.expect.md @@ -30,7 +30,7 @@ const { mutate } = require("shared-runtime"); function component(a) { const $ = _c(2); let y; - if ($[0] !== a) { + if (!Object.is($[0], a)) { const x = { a }; y = {}; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-simple-alias.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-simple-alias.expect.md index 0e2d7702399..17cd7c4bcce 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-simple-alias.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-func-simple-alias.expect.md @@ -33,7 +33,7 @@ function Component(t0) { const $ = _c(2); const { a } = t0; let y; - if ($[0] !== a) { + if (!Object.is($[0], a)) { const x = { a }; y = {}; const f0 = function () { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-1.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-1.expect.md index 6364d9b1647..0e4ddec913d 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-1.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-1.expect.md @@ -25,7 +25,7 @@ import { c as _c } from "react/compiler-runtime"; function component(a) { const $ = _c(2); let t0; - if ($[0] !== a) { + if (!Object.is($[0], a)) { const z = { a }; t0 = function () { console.log(z); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-2-iife.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-2-iife.expect.md index 877cafa00dc..194b2ba573b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-2-iife.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-2-iife.expect.md @@ -27,7 +27,7 @@ import { c as _c } from "react/compiler-runtime"; function bar(a) { const $ = _c(4); let t0; - if ($[0] !== a) { + if (!Object.is($[0], a)) { t0 = [a]; $[0] = a; $[1] = t0; @@ -36,7 +36,7 @@ function bar(a) { } const x = t0; let y; - if ($[2] !== x[0][1]) { + if (!Object.is($[2], x[0][1])) { y = {}; y = x[0][1]; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-2.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-2.expect.md index 935f8618098..37c220c387f 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-2.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-2.expect.md @@ -28,7 +28,7 @@ import { c as _c } from "react/compiler-runtime"; function bar(a) { const $ = _c(2); let y; - if ($[0] !== a) { + if (!Object.is($[0], a)) { const x = [a]; y = {}; const f0 = function () { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-3-iife.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-3-iife.expect.md index 036f70d0449..9e20f8c2796 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-3-iife.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-3-iife.expect.md @@ -31,7 +31,7 @@ import { c as _c } from "react/compiler-runtime"; function bar(a, b) { const $ = _c(6); let t0; - if ($[0] !== a || $[1] !== b) { + if (!Object.is($[0], a) || !Object.is($[1], b)) { t0 = [a, b]; $[0] = a; $[1] = b; @@ -41,7 +41,7 @@ function bar(a, b) { } const x = t0; let y; - if ($[3] !== x[0][1] || $[4] !== x[1][0]) { + if (!Object.is($[3], x[0][1]) || !Object.is($[4], x[1][0])) { y = {}; let t = {}; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-3.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-3.expect.md index e542d21cd5e..b3971c7fdf2 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-3.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-3.expect.md @@ -32,7 +32,7 @@ import { c as _c } from "react/compiler-runtime"; function bar(a, b) { const $ = _c(3); let y; - if ($[0] !== a || $[1] !== b) { + if (!Object.is($[0], a) || !Object.is($[1], b)) { const x = [a, b]; y = {}; let t = {}; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-4-iife.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-4-iife.expect.md index 4019172e2ae..bb1cf93c365 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-4-iife.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-4-iife.expect.md @@ -27,7 +27,7 @@ import { c as _c } from "react/compiler-runtime"; function bar(a) { const $ = _c(4); let t0; - if ($[0] !== a) { + if (!Object.is($[0], a)) { t0 = [a]; $[0] = a; $[1] = t0; @@ -36,7 +36,7 @@ function bar(a) { } const x = t0; let y; - if ($[2] !== x[0].a[1]) { + if (!Object.is($[2], x[0].a[1])) { y = {}; y = x[0].a[1]; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-4.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-4.expect.md index 97762abcc0a..aa04c3fc0e1 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-4.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-4.expect.md @@ -28,7 +28,7 @@ import { c as _c } from "react/compiler-runtime"; function bar(a) { const $ = _c(2); let y; - if ($[0] !== a) { + if (!Object.is($[0], a)) { const x = [a]; y = {}; const f0 = function () { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-iife.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-iife.expect.md index 57f809f84a9..f9a001d8550 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-iife.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load-iife.expect.md @@ -26,7 +26,7 @@ import { c as _c } from "react/compiler-runtime"; function bar(a) { const $ = _c(4); let t0; - if ($[0] !== a) { + if (!Object.is($[0], a)) { t0 = [a]; $[0] = a; $[1] = t0; @@ -35,7 +35,7 @@ function bar(a) { } const x = t0; let y; - if ($[2] !== x[0]) { + if (!Object.is($[2], x[0])) { y = {}; y = x[0]; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load.expect.md index a3966035f80..ca9f55fdb25 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-alias-computed-load.expect.md @@ -28,7 +28,7 @@ import { c as _c } from "react/compiler-runtime"; function bar(a) { const $ = _c(2); let y; - if ($[0] !== a) { + if (!Object.is($[0], a)) { const x = [a]; y = {}; const f0 = function () { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-capture-ref-before-rename.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-capture-ref-before-rename.expect.md index f72e68eb9de..c7a79ef2221 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-capture-ref-before-rename.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-capture-ref-before-rename.expect.md @@ -42,7 +42,7 @@ function Component(t0) { const $ = _c(7); const { a, b } = t0; let z; - if ($[0] !== a) { + if (!Object.is($[0], a)) { z = { a }; mutate(z); @@ -54,7 +54,7 @@ function Component(t0) { let y = z; let t1; - if ($[2] !== b) { + if (!Object.is($[2], b)) { t1 = { b }; $[2] = b; $[3] = t1; @@ -63,7 +63,7 @@ function Component(t0) { } const z_0 = t1; let t2; - if ($[4] !== y || $[5] !== z_0) { + if (!Object.is($[4], y) || !Object.is($[5], z_0)) { t2 = { y, z: z_0 }; $[4] = y; $[5] = z_0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-conditional-capture-mutate.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-conditional-capture-mutate.expect.md index 743d3ce9e89..2ed1ddb4a58 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-conditional-capture-mutate.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-conditional-capture-mutate.expect.md @@ -25,7 +25,7 @@ import { c as _c } from "react/compiler-runtime"; function useHook(a, b) { const $ = _c(5); let t0; - if ($[0] !== a) { + if (!Object.is($[0], a)) { t0 = { a }; $[0] = a; $[1] = t0; @@ -35,7 +35,7 @@ function useHook(a, b) { const z = t0; const y = b; let t1; - if ($[2] !== y || $[3] !== z) { + if (!Object.is($[2], y) || !Object.is($[3], z)) { t1 = function () { if (y) { maybeMutate(z); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-decl.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-decl.expect.md index a023d50236d..9a8c0bd22a2 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-decl.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-decl.expect.md @@ -26,7 +26,7 @@ import { c as _c } from "react/compiler-runtime"; function component(a) { const $ = _c(2); let t; - if ($[0] !== a) { + if (!Object.is($[0], a)) { t = { a }; const x = function x() { t.foo(); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-member-expr-arguments.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-member-expr-arguments.expect.md index d9b3632a902..2c9292d834b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-member-expr-arguments.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-member-expr-arguments.expect.md @@ -22,7 +22,7 @@ import { c as _c } from "react/compiler-runtime"; function Foo(props) { const $ = _c(2); let t0; - if ($[0] !== props.router.location) { + if (!Object.is($[0], props.router.location)) { t0 = (reason) => { log(props.router.location); }; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-member-expr-call.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-member-expr-call.expect.md index cab9c9a500b..b4220de82ec 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-member-expr-call.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-member-expr-call.expect.md @@ -24,7 +24,7 @@ function component(t0) { const $ = _c(7); const { mutator } = t0; let t1; - if ($[0] !== mutator) { + if (!Object.is($[0], mutator)) { t1 = () => { mutator.poke(); }; @@ -35,7 +35,7 @@ function component(t0) { } const poke = t1; let t2; - if ($[2] !== mutator.user) { + if (!Object.is($[2], mutator.user)) { t2 = () => { mutator.user.hide(); }; @@ -46,7 +46,7 @@ function component(t0) { } const hide = t2; let t3; - if ($[4] !== hide || $[5] !== poke) { + if (!Object.is($[4], hide) || !Object.is($[5], poke)) { t3 = ; $[4] = hide; $[5] = poke; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-renamed-ref.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-renamed-ref.expect.md index 9d9b79ef257..d1d3af28e8e 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-renamed-ref.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-renamed-ref.expect.md @@ -38,7 +38,7 @@ function useHook(t0) { const $ = _c(2); const { a, b } = t0; let t1; - if ($[0] !== a) { + if (!Object.is($[0], a)) { t1 = { a }; $[0] = a; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-runs-inference.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-runs-inference.expect.md index 31b80bcda3b..0d11e3fd75b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-runs-inference.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-runs-inference.expect.md @@ -25,7 +25,7 @@ function Component(t0) { const $ = _c(2); const { a } = t0; let t1; - if ($[0] !== a) { + if (!Object.is($[0], a)) { const z = { a }; const p = () => {z}; t1 = p(); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-skip-computed-path.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-skip-computed-path.expect.md index 89e69d0790b..0fac6ee774d 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-skip-computed-path.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-skip-computed-path.expect.md @@ -22,7 +22,7 @@ import { c as _c } from "react/compiler-runtime"; function StoreLandingUnseenGiftModalContainer(a) { const $ = _c(2); let t0; - if ($[0] !== a) { + if (!Object.is($[0], a)) { const giftsSeen = { a }; t0 = ((gift) => (gift.id ? giftsSeen[gift.id] : false))(); $[0] = a; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-within-block.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-within-block.expect.md index b0bbce8d87e..ad1b20949bd 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-within-block.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-function-within-block.expect.md @@ -28,7 +28,7 @@ import { c as _c } from "react/compiler-runtime"; function component(a) { const $ = _c(4); let t0; - if ($[0] !== a) { + if (!Object.is($[0], a)) { t0 = { a }; $[0] = a; $[1] = t0; @@ -38,7 +38,7 @@ function component(a) { const z = t0; let x; let t1; - if ($[2] !== z) { + if (!Object.is($[2], z)) { t1 = function () { console.log(z); }; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-member-expr.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-member-expr.expect.md index 943533a63d1..12f96b39651 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-member-expr.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-member-expr.expect.md @@ -25,7 +25,7 @@ import { c as _c } from "react/compiler-runtime"; function component(a) { const $ = _c(4); let t0; - if ($[0] !== a) { + if (!Object.is($[0], a)) { t0 = { a }; $[0] = a; $[1] = t0; @@ -34,7 +34,7 @@ function component(a) { } const z = t0; let t1; - if ($[2] !== z.a) { + if (!Object.is($[2], z.a)) { t1 = function () { console.log(z.a); }; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-nested-member-call.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-nested-member-call.expect.md index 34a663aac4a..d7448692b2f 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-nested-member-call.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-nested-member-call.expect.md @@ -25,7 +25,7 @@ import { c as _c } from "react/compiler-runtime"; function component(a) { const $ = _c(2); let t0; - if ($[0] !== a) { + if (!Object.is($[0], a)) { t0 = { a: { a } }; $[0] = a; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-nested-member-expr-in-nested-func.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-nested-member-expr-in-nested-func.expect.md index 9e95af2b0d5..06bb1cd7430 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-nested-member-expr-in-nested-func.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-nested-member-expr-in-nested-func.expect.md @@ -27,7 +27,7 @@ import { c as _c } from "react/compiler-runtime"; function component(a) { const $ = _c(4); let t0; - if ($[0] !== a) { + if (!Object.is($[0], a)) { t0 = { a: { a } }; $[0] = a; $[1] = t0; @@ -36,7 +36,7 @@ function component(a) { } const z = t0; let t1; - if ($[2] !== z.a.a) { + if (!Object.is($[2], z.a.a)) { t1 = function () { (function () { console.log(z.a.a); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-nested-member-expr.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-nested-member-expr.expect.md index 13c122750e9..a9b1419059e 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-nested-member-expr.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-nested-member-expr.expect.md @@ -25,7 +25,7 @@ import { c as _c } from "react/compiler-runtime"; function component(a) { const $ = _c(4); let t0; - if ($[0] !== a) { + if (!Object.is($[0], a)) { t0 = { a: { a } }; $[0] = a; $[1] = t0; @@ -34,7 +34,7 @@ function component(a) { } const z = t0; let t1; - if ($[2] !== z.a.a) { + if (!Object.is($[2], z.a.a)) { t1 = function () { console.log(z.a.a); }; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-reference-changes-type.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-reference-changes-type.expect.md index f5d4b94ae54..3748d98baeb 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-reference-changes-type.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-reference-changes-type.expect.md @@ -30,7 +30,7 @@ function Component(t0) { const $ = _c(2); const { a } = t0; let y; - if ($[0] !== a) { + if (!Object.is($[0], a)) { const x = { a }; y = 1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-variable-in-nested-block.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-variable-in-nested-block.expect.md index be0b64c122a..2f1ac86a138 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-variable-in-nested-block.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-variable-in-nested-block.expect.md @@ -27,7 +27,7 @@ import { c as _c } from "react/compiler-runtime"; function component(a) { const $ = _c(2); let t0; - if ($[0] !== a) { + if (!Object.is($[0], a)) { const z = { a }; t0 = function () { console.log(z); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-variable-in-nested-function.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-variable-in-nested-function.expect.md index cf365b49568..a3223d98c0d 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-variable-in-nested-function.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/capturing-variable-in-nested-function.expect.md @@ -27,7 +27,7 @@ import { c as _c } from "react/compiler-runtime"; function component(a) { const $ = _c(2); let t0; - if ($[0] !== a) { + if (!Object.is($[0], a)) { const z = { a }; t0 = function () { (function () { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/codegen-instrument-forget-test.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/codegen-instrument-forget-test.expect.md index edabebecfc4..08b51d359d4 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/codegen-instrument-forget-test.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/codegen-instrument-forget-test.expect.md @@ -32,7 +32,7 @@ function Bar(props) { useRenderCounter("Bar", "/codegen-instrument-forget-test.ts"); const $ = _c(2); let t0; - if ($[0] !== props.bar) { + if (!Object.is($[0], props.bar)) { t0 =
{props.bar}
; $[0] = props.bar; $[1] = t0; @@ -52,7 +52,7 @@ function Foo(props) { useRenderCounter("Foo", "/codegen-instrument-forget-test.ts"); const $ = _c(2); let t0; - if ($[0] !== props.bar) { + if (!Object.is($[0], props.bar)) { t0 = {props.bar}; $[0] = props.bar; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/component-declaration-basic.flow.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/component-declaration-basic.flow.expect.md index 15cba5b29a7..22e633739e3 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/component-declaration-basic.flow.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/component-declaration-basic.flow.expect.md @@ -28,7 +28,7 @@ export default function Foo(t0) { const $ = _c(2); const { bar } = t0; let t1; - if ($[0] !== bar) { + if (!Object.is($[0], bar)) { t1 = ; $[0] = bar; $[1] = t1; @@ -42,7 +42,7 @@ function Bar(t0) { const $ = _c(2); const { bar } = t0; let t1; - if ($[0] !== bar) { + if (!Object.is($[0], bar)) { t1 =
{bar}
; $[0] = bar; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/component-inner-function-with-many-args.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/component-inner-function-with-many-args.expect.md index fe3d17d120e..62bf19f8182 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/component-inner-function-with-many-args.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/component-inner-function-with-many-args.expect.md @@ -25,7 +25,7 @@ function Component(props) { const $ = _c(2); const cb = _temp; let t0; - if ($[0] !== props.id) { + if (!Object.is($[0], props.id)) { t0 = ; $[0] = props.id; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/component.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/component.expect.md index c6037fd2bb3..f367be06c31 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/component.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/component.expect.md @@ -46,7 +46,7 @@ function Component(props) { const items = props.items; const maxItems = props.maxItems; let renderedItems; - if ($[0] !== items || $[1] !== maxItems) { + if (!Object.is($[0], items) || !Object.is($[1], maxItems)) { renderedItems = []; const seen = new Set(); const max = Math.max(0, maxItems); @@ -71,7 +71,7 @@ function Component(props) { const count = renderedItems.length; let t0; - if ($[3] !== count) { + if (!Object.is($[3], count)) { t0 =

{count} Items

; $[3] = count; $[4] = t0; @@ -79,7 +79,7 @@ function Component(props) { t0 = $[4]; } let t1; - if ($[5] !== renderedItems || $[6] !== t0) { + if (!Object.is($[5], renderedItems) || !Object.is($[6], t0)) { t1 = (
{t0} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/computed-call-spread.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/computed-call-spread.expect.md index 0329450b13e..45cdae17881 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/computed-call-spread.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/computed-call-spread.expect.md @@ -16,7 +16,11 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(4); let t0; - if ($[0] !== props.a || $[1] !== props.b || $[2] !== props.method) { + if ( + !Object.is($[0], props.a) || + !Object.is($[1], props.b) || + !Object.is($[2], props.method) + ) { t0 = foo[props.method](...props.a, null, ...props.b); $[0] = props.a; $[1] = props.b; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/computed-load-primitive-as-dependency.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/computed-load-primitive-as-dependency.expect.md index 9f147194da1..c03de9c90cc 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/computed-load-primitive-as-dependency.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/computed-load-primitive-as-dependency.expect.md @@ -25,7 +25,7 @@ function Component(props) { const t0 = a[props.a] + 1; let t1; - if ($[0] !== t0) { + if (!Object.is($[0], t0)) { t1 = bar(t0); $[0] = t0; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/computed-store-alias.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/computed-store-alias.expect.md index 9af46bbfd98..9ba98ef7e44 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/computed-store-alias.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/computed-store-alias.expect.md @@ -32,7 +32,7 @@ function useHook(t0) { const $ = _c(3); const { a, b } = t0; let x; - if ($[0] !== a || $[1] !== b) { + if (!Object.is($[0], a) || !Object.is($[1], b)) { const y = { a }; x = { b }; x.y = y; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/conditional-break-labeled.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/conditional-break-labeled.expect.md index 3f795b604e3..c5462d7b304 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/conditional-break-labeled.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/conditional-break-labeled.expect.md @@ -36,10 +36,10 @@ function Component(props) { const $ = _c(5); let a; if ( - $[0] !== props.a || - $[1] !== props.b || - $[2] !== props.c || - $[3] !== props.d + !Object.is($[0], props.a) || + !Object.is($[1], props.b) || + !Object.is($[2], props.c) || + !Object.is($[3], props.d) ) { a = []; a.push(props.a); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/conditional-early-return.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/conditional-early-return.expect.md index 5e708b95c6f..1389e3d60b6 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/conditional-early-return.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/conditional-early-return.expect.md @@ -73,7 +73,11 @@ function ComponentA(props) { const $ = _c(5); let a_DEBUG; let t0; - if ($[0] !== props.a || $[1] !== props.b || $[2] !== props.d) { + if ( + !Object.is($[0], props.a) || + !Object.is($[1], props.b) || + !Object.is($[2], props.d) + ) { t0 = Symbol.for("react.early_return_sentinel"); bb0: { a_DEBUG = []; @@ -107,10 +111,10 @@ function ComponentB(props) { const $ = _c(5); let a; if ( - $[0] !== props.a || - $[1] !== props.b || - $[2] !== props.c || - $[3] !== props.d + !Object.is($[0], props.a) || + !Object.is($[1], props.b) || + !Object.is($[2], props.c) || + !Object.is($[3], props.d) ) { a = []; a.push(props.a); @@ -138,10 +142,10 @@ function ComponentC(props) { let a; let t0; if ( - $[0] !== props.a || - $[1] !== props.b || - $[2] !== props.c || - $[3] !== props.d + !Object.is($[0], props.a) || + !Object.is($[1], props.b) || + !Object.is($[2], props.c) || + !Object.is($[3], props.d) ) { t0 = Symbol.for("react.early_return_sentinel"); bb0: { @@ -179,10 +183,10 @@ function ComponentD(props) { let a; let t0; if ( - $[0] !== props.a || - $[1] !== props.b || - $[2] !== props.c || - $[3] !== props.d + !Object.is($[0], props.a) || + !Object.is($[1], props.b) || + !Object.is($[2], props.c) || + !Object.is($[3], props.d) ) { t0 = Symbol.for("react.early_return_sentinel"); bb0: { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/conditional-on-mutable.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/conditional-on-mutable.expect.md index 0bcaf60a8e6..30c07d22b19 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/conditional-on-mutable.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/conditional-on-mutable.expect.md @@ -38,7 +38,11 @@ import { c as _c } from "react/compiler-runtime"; function ComponentA(props) { const $ = _c(4); let t0; - if ($[0] !== props.p0 || $[1] !== props.p1 || $[2] !== props.p2) { + if ( + !Object.is($[0], props.p0) || + !Object.is($[1], props.p1) || + !Object.is($[2], props.p2) + ) { const a = []; const b = []; if (b) { @@ -61,7 +65,11 @@ function ComponentA(props) { function ComponentB(props) { const $ = _c(4); let t0; - if ($[0] !== props.p0 || $[1] !== props.p1 || $[2] !== props.p2) { + if ( + !Object.is($[0], props.p0) || + !Object.is($[1], props.p1) || + !Object.is($[2], props.p2) + ) { const a = []; const b = []; if (mayMutate(b)) { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/conflict-codegen-instrument-forget.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/conflict-codegen-instrument-forget.expect.md index 243c4154679..d40e9d3d44d 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/conflict-codegen-instrument-forget.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/conflict-codegen-instrument-forget.expect.md @@ -61,7 +61,7 @@ function Bar(props) { } const _shouldInstrument = t1; let t2; - if ($[2] !== props.bar) { + if (!Object.is($[2], props.bar)) { t2 = (
{props.bar} @@ -81,7 +81,7 @@ function Foo(props) { useRenderCounter("Foo", "/conflict-codegen-instrument-forget.ts"); const $ = _c(2); let t0; - if ($[0] !== props.bar) { + if (!Object.is($[0], props.bar)) { t0 = {props.bar}; $[0] = props.bar; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/consecutive-use-memo.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/consecutive-use-memo.expect.md index b09c51a8768..a4de5e50a13 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/consecutive-use-memo.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/consecutive-use-memo.expect.md @@ -29,7 +29,7 @@ function useHook(t0) { const $ = _c(7); const { a, b } = t0; let t1; - if ($[0] !== a) { + if (!Object.is($[0], a)) { t1 = identity({ a }); $[0] = a; $[1] = t1; @@ -38,7 +38,7 @@ function useHook(t0) { } const valA = t1; let t2; - if ($[2] !== b) { + if (!Object.is($[2], b)) { t2 = identity([b]); $[2] = b; $[3] = t2; @@ -47,7 +47,7 @@ function useHook(t0) { } const valB = t2; let t3; - if ($[4] !== valA || $[5] !== valB) { + if (!Object.is($[4], valA) || !Object.is($[5], valB)) { t3 = [valA, valB]; $[4] = valA; $[5] = valB; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/console-readonly.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/console-readonly.expect.md index 29fd76e8363..4fb9752ef62 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/console-readonly.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/console-readonly.expect.md @@ -34,7 +34,7 @@ import { shallowCopy } from "shared-runtime"; function Component(props) { const $ = _c(2); let t0; - if ($[0] !== props) { + if (!Object.is($[0], props)) { t0 = shallowCopy(props); $[0] = props; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/const-propagation-phi-nodes.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/const-propagation-phi-nodes.expect.md index fc2a10cd3d9..7ede04a1708 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/const-propagation-phi-nodes.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/const-propagation-phi-nodes.expect.md @@ -40,7 +40,7 @@ function useFoo(setOne) { z = 5; } let t0; - if ($[0] !== x || $[1] !== y || $[2] !== z) { + if (!Object.is($[0], x) || !Object.is($[1], y) || !Object.is($[2], z)) { t0 = { x, y, z }; $[0] = x; $[1] = y; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/constant-computed.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/constant-computed.expect.md index a7662e95ad8..8b2324df4cd 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/constant-computed.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/constant-computed.expect.md @@ -25,7 +25,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(2); let x; - if ($[0] !== props.foo) { + if (!Object.is($[0], props.foo)) { x = {}; x.foo = x.foo + x.bar; x.foo(props.foo); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/constant-propagate-global-phis.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/constant-propagate-global-phis.expect.md index a738754a160..77120c632a8 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/constant-propagate-global-phis.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/constant-propagate-global-phis.expect.md @@ -40,7 +40,7 @@ function Test() { const { tab } = useFoo(); const currentTab = tab === CONST_STRING0 ? CONST_STRING0 : CONST_STRING1; let t0; - if ($[0] !== currentTab) { + if (!Object.is($[0], currentTab)) { t0 = ; $[0] = currentTab; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-as-jsx-element-tag.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-as-jsx-element-tag.expect.md index 636bc53a172..2e5fe34deed 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-as-jsx-element-tag.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-as-jsx-element-tag.expect.md @@ -43,7 +43,7 @@ function Component(props) { Component = $[0]; } let t0; - if ($[1] !== props) { + if (!Object.is($[1], props)) { t0 = ; $[1] = props; $[2] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-reactive-explicit-control-flow.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-reactive-explicit-control-flow.expect.md index 1e349821723..bfd01ae108d 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-reactive-explicit-control-flow.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-reactive-explicit-control-flow.expect.md @@ -33,7 +33,7 @@ function Component(t0) { const $ = _c(2); const { shouldReassign } = t0; let x; - if ($[0] !== shouldReassign) { + if (!Object.is($[0], shouldReassign)) { x = null; const reassign = () => { if (shouldReassign) { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-reactive-implicit-control-flow.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-reactive-implicit-control-flow.expect.md index 8f5da848766..648de8c0856 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-reactive-implicit-control-flow.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-reactive-implicit-control-flow.expect.md @@ -37,7 +37,7 @@ function Component(t0) { const $ = _c(2); const { shouldReassign } = t0; let x; - if ($[0] !== shouldReassign) { + if (!Object.is($[0], shouldReassign)) { x = null; const reassign = () => { x = 2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-reassigned-objectmethod.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-reassigned-objectmethod.expect.md index cdd0269d5cf..993f1a800b8 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-reassigned-objectmethod.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-reassigned-objectmethod.expect.md @@ -34,7 +34,7 @@ function Component(t0) { const $ = _c(2); const { cond } = t0; let x; - if ($[0] !== cond) { + if (!Object.is($[0], cond)) { x = 2; const obj = { method(cond_0) { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-reassigned-reactive-capture.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-reassigned-reactive-capture.expect.md index 8578d269cbe..556d718ea8b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-reassigned-reactive-capture.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-reassigned-reactive-capture.expect.md @@ -31,7 +31,7 @@ function Component(t0) { const $ = _c(2); const { value } = t0; let x; - if ($[0] !== value) { + if (!Object.is($[0], value)) { x = null; const reassign = () => { x = value; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-reassigned-two-lambdas.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-reassigned-two-lambdas.expect.md index 4ab74076756..3fdc64d6d5c 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-reassigned-two-lambdas.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/context-variable-reassigned-two-lambdas.expect.md @@ -39,7 +39,7 @@ function Component(t0) { const $ = _c(3); const { doReassign1, doReassign2 } = t0; let x; - if ($[0] !== doReassign1 || $[1] !== doReassign2) { + if (!Object.is($[0], doReassign1) || !Object.is($[1], doReassign2)) { x = {}; const reassign1 = () => { x = 2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/controlled-input.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/controlled-input.expect.md index 1d7a816a95f..34bbbc5590b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/controlled-input.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/controlled-input.expect.md @@ -34,7 +34,7 @@ function component() { } const handler = t0; let t1; - if ($[1] !== x) { + if (!Object.is($[1], x)) { t1 = ; $[1] = x; $[2] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/createElement-freeze.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/createElement-freeze.expect.md index 8f0033e086d..c9f37d20e30 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/createElement-freeze.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/createElement-freeze.expect.md @@ -29,7 +29,7 @@ import { shallowCopy } from "shared-runtime"; function Component(props) { const $ = _c(5); let t0; - if ($[0] !== props.width) { + if (!Object.is($[0], props.width)) { t0 = { style: { width: props.width } }; $[0] = props.width; $[1] = t0; @@ -38,7 +38,7 @@ function Component(props) { } const childProps = t0; let t1; - if ($[2] !== childProps) { + if (!Object.is($[2], childProps)) { let t2; if ($[4] === Symbol.for("react.memo_cache_sentinel")) { t2 = ["hello world"]; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/debugger-memoized.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/debugger-memoized.expect.md index ef4b8ce7b47..f9f489e11da 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/debugger-memoized.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/debugger-memoized.expect.md @@ -24,7 +24,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(2); let x; - if ($[0] !== props.value) { + if (!Object.is($[0], props.value)) { x = []; debugger; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/default-param-array-with-unary.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/default-param-array-with-unary.expect.md index db406da6a18..f353364bca5 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/default-param-array-with-unary.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/default-param-array-with-unary.expect.md @@ -20,7 +20,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(t0) { const $ = _c(2); let t1; - if ($[0] !== t0) { + if (!Object.is($[0], t0)) { t1 = t0 === undefined ? [-1, 1] : t0; $[0] = t0; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/default-param-calls-global-function.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/default-param-calls-global-function.expect.md index 0cd9742942a..232088ce3b4 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/default-param-calls-global-function.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/default-param-calls-global-function.expect.md @@ -24,7 +24,7 @@ import { identity } from "shared-runtime"; function Component(t0) { const $ = _c(2); let t1; - if ($[0] !== t0) { + if (!Object.is($[0], t0)) { t1 = t0 === undefined ? identity([_temp, true, 42, "hello"]) : t0; $[0] = t0; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/delete-computed-property.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/delete-computed-property.expect.md index 02be1a0ca47..328892db768 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/delete-computed-property.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/delete-computed-property.expect.md @@ -24,7 +24,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(3); let x; - if ($[0] !== props.a || $[1] !== props.b) { + if (!Object.is($[0], props.a) || !Object.is($[1], props.b)) { x = { a: props.a, b: props.b }; delete x["b"]; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/delete-property.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/delete-property.expect.md index a68721b5a22..8580678a108 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/delete-property.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/delete-property.expect.md @@ -23,7 +23,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(3); let x; - if ($[0] !== props.a || $[1] !== props.b) { + if (!Object.is($[0], props.a) || !Object.is($[1], props.b)) { x = { a: props.a, b: props.b }; delete x.b; $[0] = props.a; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/dependencies-outputs.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/dependencies-outputs.expect.md index 80f0508fd83..a644841f19e 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/dependencies-outputs.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/dependencies-outputs.expect.md @@ -32,7 +32,7 @@ import { c as _c } from "react/compiler-runtime"; function foo(a, b) { const $ = _c(5); let x; - if ($[0] !== a) { + if (!Object.is($[0], a)) { x = []; x.push(a); $[0] = a; @@ -41,7 +41,7 @@ function foo(a, b) { x = $[1]; } let y; - if ($[2] !== b || $[3] !== x) { + if (!Object.is($[2], b) || !Object.is($[3], x)) { y = []; if (x.length) { y.push(x); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/dependencies.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/dependencies.expect.md index 057c6ba2533..0a9a886d3a3 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/dependencies.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/dependencies.expect.md @@ -35,7 +35,7 @@ function foo(x, y, z) { const items = [z]; items.push(x); let items2; - if ($[0] !== x || $[1] !== y) { + if (!Object.is($[0], x) || !Object.is($[1], y)) { items2 = []; if (x) { items2.push(y); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-array-assignment-to-context-var.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-array-assignment-to-context-var.expect.md index 1268cbcfdc3..4156d1a5b75 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-array-assignment-to-context-var.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-array-assignment-to-context-var.expect.md @@ -30,7 +30,7 @@ import { identity } from "shared-runtime"; function Component(props) { const $ = _c(4); let x; - if ($[0] !== props.value) { + if (!Object.is($[0], props.value)) { const [t0] = props.value; x = t0; const foo = () => { @@ -44,7 +44,7 @@ function Component(props) { x = $[1]; } let t0; - if ($[2] !== x) { + if (!Object.is($[2], x)) { t0 = { x }; $[2] = x; $[3] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-array-declaration-to-context-var.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-array-declaration-to-context-var.expect.md index 769e4871f4a..29097e44d34 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-array-declaration-to-context-var.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-array-declaration-to-context-var.expect.md @@ -29,7 +29,7 @@ import { identity } from "shared-runtime"; function Component(props) { const $ = _c(4); let x; - if ($[0] !== props.value) { + if (!Object.is($[0], props.value)) { const [t0] = props.value; x = t0; const foo = () => { @@ -43,7 +43,7 @@ function Component(props) { x = $[1]; } let t0; - if ($[2] !== x) { + if (!Object.is($[2], x)) { t0 =
{x}
; $[2] = x; $[3] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-capture-global.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-capture-global.expect.md index cbe56f29c07..57b20b78f82 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-capture-global.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-capture-global.expect.md @@ -24,7 +24,7 @@ let someGlobal = {}; function component(a) { const $ = _c(2); let t0; - if ($[0] !== a) { + if (!Object.is($[0], a)) { t0 = { a, someGlobal }; $[0] = a; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-default-array-with-unary.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-default-array-with-unary.expect.md index de9083fbec8..f411651dca8 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-default-array-with-unary.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-default-array-with-unary.expect.md @@ -22,7 +22,7 @@ function Component(props) { const $ = _c(2); const [t0] = props.value; let t1; - if ($[0] !== t0) { + if (!Object.is($[0], t0)) { t1 = t0 === undefined ? [-1, 1] : t0; $[0] = t0; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-in-branch-ssa.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-in-branch-ssa.expect.md index b1597891062..1b933e97ea8 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-in-branch-ssa.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-in-branch-ssa.expect.md @@ -42,7 +42,7 @@ function useFoo(props) { let y = null; let z; let myList; - if ($[0] !== props) { + if (!Object.is($[0], props)) { myList = []; if (props.doDestructure) { ({ x, y, z } = props); @@ -61,7 +61,7 @@ function useFoo(props) { z = $[4]; } let t0; - if ($[5] !== myList || $[6] !== x || $[7] !== y) { + if (!Object.is($[5], myList) || !Object.is($[6], x) || !Object.is($[7], y)) { t0 = { x, y, myList }; $[5] = myList; $[6] = x; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-object-assignment-to-context-var.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-object-assignment-to-context-var.expect.md index e66ef2df13d..1f55386e9fd 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-object-assignment-to-context-var.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-object-assignment-to-context-var.expect.md @@ -30,7 +30,7 @@ import { identity } from "shared-runtime"; function Component(props) { const $ = _c(4); let x; - if ($[0] !== props) { + if (!Object.is($[0], props)) { const { x: t0 } = props; x = t0; const foo = () => { @@ -44,7 +44,7 @@ function Component(props) { x = $[1]; } let t0; - if ($[2] !== x) { + if (!Object.is($[2], x)) { t0 = { x }; $[2] = x; $[3] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-object-declaration-to-context-var.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-object-declaration-to-context-var.expect.md index 66799c5c472..62b0cf17838 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-object-declaration-to-context-var.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructure-object-declaration-to-context-var.expect.md @@ -29,7 +29,7 @@ import { identity } from "shared-runtime"; function Component(props) { const $ = _c(4); let x; - if ($[0] !== props) { + if (!Object.is($[0], props)) { const { x: t0 } = props; x = t0; const foo = () => { @@ -43,7 +43,7 @@ function Component(props) { x = $[1]; } let t0; - if ($[2] !== x) { + if (!Object.is($[2], x)) { t0 = { x }; $[2] = x; $[3] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-array-default.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-array-default.expect.md index 971f9a1f4e4..60bc4a1ad0d 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-array-default.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-array-default.expect.md @@ -23,7 +23,7 @@ function Component(props) { const $ = _c(2); const [t0] = props.y; let t1; - if ($[0] !== t0) { + if (!Object.is($[0], t0)) { t1 = t0 === undefined ? ["default"] : t0; $[0] = t0; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-assignment-array-default.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-assignment-array-default.expect.md index 966826aab82..049bf6d339a 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-assignment-array-default.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-assignment-array-default.expect.md @@ -30,7 +30,7 @@ function Component(props) { if (props.cond) { const [t0] = props.y; let t1; - if ($[0] !== t0) { + if (!Object.is($[0], t0)) { t1 = t0 === undefined ? ["default"] : t0; $[0] = t0; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-assignment.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-assignment.expect.md index 98025e3fa99..b78203a1017 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-assignment.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-assignment.expect.md @@ -50,7 +50,12 @@ function foo(a, b, c) { [n] = t7; o = t5; let t8; - if ($[0] !== d || $[1] !== g || $[2] !== n || $[3] !== o) { + if ( + !Object.is($[0], d) || + !Object.is($[1], g) || + !Object.is($[2], n) || + !Object.is($[3], o) + ) { t8 = { d, g, n, o }; $[0] = d; $[1] = g; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-mixed-scope-and-local-variables-with-default.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-mixed-scope-and-local-variables-with-default.expect.md index 3a8f9e84cac..071761d5773 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-mixed-scope-and-local-variables-with-default.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-mixed-scope-and-local-variables-with-default.expect.md @@ -73,12 +73,12 @@ function Component(props) { props.post, ); let t0; - if ($[0] !== post) { + if (!Object.is($[0], post)) { const allUrls = []; const { media: t1, comments: t2, urls: t3 } = post; const media = t1 === undefined ? null : t1; let t4; - if ($[2] !== t2) { + if (!Object.is($[2], t2)) { t4 = t2 === undefined ? [] : t2; $[2] = t2; $[3] = t4; @@ -87,7 +87,7 @@ function Component(props) { } const comments = t4; let t5; - if ($[4] !== t3) { + if (!Object.is($[4], t3)) { t5 = t3 === undefined ? [] : t3; $[4] = t3; $[5] = t5; @@ -96,7 +96,7 @@ function Component(props) { } const urls = t5; let t6; - if ($[6] !== comments.length) { + if (!Object.is($[6], comments.length)) { t6 = (e) => { if (!comments.length) { return; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-mixed-scope-declarations-and-locals.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-mixed-scope-declarations-and-locals.expect.md index fbb6e50871d..5a5c99f9bb6 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-mixed-scope-declarations-and-locals.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-mixed-scope-declarations-and-locals.expect.md @@ -51,11 +51,11 @@ function Component(props) { props.post, ); let t0; - if ($[0] !== post) { + if (!Object.is($[0], post)) { const allUrls = []; const { media, comments, urls } = post; let t1; - if ($[2] !== comments.length) { + if (!Object.is($[2], comments.length)) { t1 = (e) => { if (!comments.length) { return; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-object-default.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-object-default.expect.md index 48ae27c74e1..423d2fb0ecb 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-object-default.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-object-default.expect.md @@ -23,7 +23,7 @@ function Component(props) { const $ = _c(2); const { x: t0 } = props.y; let t1; - if ($[0] !== t0) { + if (!Object.is($[0], t0)) { t1 = t0 === undefined ? { y: "default" } : t0; $[0] = t0; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-object-pattern-within-rest.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-object-pattern-within-rest.expect.md index 677107be83a..ec9b580b0f5 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-object-pattern-within-rest.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-object-pattern-within-rest.expect.md @@ -22,7 +22,7 @@ function Component(props) { const $ = _c(6); let t0; let y; - if ($[0] !== props.value) { + if (!Object.is($[0], props.value)) { [y, ...t0] = props.value; $[0] = props.value; $[1] = t0; @@ -33,7 +33,7 @@ function Component(props) { } const { z } = t0; let t1; - if ($[3] !== y || $[4] !== z) { + if (!Object.is($[3], y) || !Object.is($[4], z)) { t1 = [y, z]; $[3] = y; $[4] = z; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-property-inference.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-property-inference.expect.md index a43d5756096..ffe517b528b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-property-inference.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-property-inference.expect.md @@ -19,7 +19,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(5); let x; - if ($[0] !== props.value) { + if (!Object.is($[0], props.value)) { x = []; x.push(props.value); $[0] = props.value; @@ -30,7 +30,7 @@ function Component(props) { const { length: y } = x; foo(y); let t0; - if ($[2] !== x || $[3] !== y) { + if (!Object.is($[2], x) || !Object.is($[3], y)) { t0 = [x, y]; $[2] = x; $[3] = y; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-same-property-identifier-names.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-same-property-identifier-names.expect.md index 3e1c4771eab..13f38c5c922 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-same-property-identifier-names.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-same-property-identifier-names.expect.md @@ -32,7 +32,7 @@ function Component(props) { const { x: t0, sameName: renamed } = props; const { destructured } = t0; let t1; - if ($[0] !== destructured) { + if (!Object.is($[0], destructured)) { t1 = identity(destructured); $[0] = destructured; $[1] = t1; @@ -41,7 +41,7 @@ function Component(props) { } const sameName = t1; let t2; - if ($[2] !== renamed || $[3] !== sameName) { + if (!Object.is($[2], renamed) || !Object.is($[3], sameName)) { t2 = [sameName, renamed]; $[2] = renamed; $[3] = sameName; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-with-typecast-as-default-value.flow.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-with-typecast-as-default-value.flow.expect.md index 6fce86805e2..decd5e086ad 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-with-typecast-as-default-value.flow.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring-with-typecast-as-default-value.flow.expect.md @@ -23,7 +23,7 @@ function Component(props) { const $ = _c(2); const [t0] = props.y; let t1; - if ($[0] !== t0) { + if (!Object.is($[0], t0)) { t1 = t0 === undefined ? ([]: Array) : t0; $[0] = t0; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring.expect.md index f292e83e164..b7d314cc3e0 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/destructuring.expect.md @@ -39,7 +39,7 @@ function foo(a, b, c) { let d; let h; let t0; - if ($[0] !== a) { + if (!Object.is($[0], a)) { [d, t0, ...h] = a; $[0] = a; $[1] = d; @@ -53,7 +53,7 @@ function foo(a, b, c) { const [t1] = t0; let g; let t2; - if ($[4] !== t1) { + if (!Object.is($[4], t1)) { ({ e: t2, ...g } = t1); $[4] = t1; $[5] = g; @@ -67,7 +67,7 @@ function foo(a, b, c) { const { m: t4 } = t3; let o; let t5; - if ($[7] !== t4) { + if (!Object.is($[7], t4)) { [t5, ...o] = t4; $[7] = t4; $[8] = o; @@ -79,13 +79,13 @@ function foo(a, b, c) { const [n] = t5; let t6; if ( - $[10] !== d || - $[11] !== f || - $[12] !== g || - $[13] !== h || - $[14] !== n || - $[15] !== o || - $[16] !== p + !Object.is($[10], d) || + !Object.is($[11], f) || + !Object.is($[12], g) || + !Object.is($[13], h) || + !Object.is($[14], n) || + !Object.is($[15], o) || + !Object.is($[16], p) ) { t6 = [d, f, g, h, n, o, p]; $[10] = d; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/do-while-compound-test.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/do-while-compound-test.expect.md index 845955d5c83..a91288d1d89 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/do-while-compound-test.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/do-while-compound-test.expect.md @@ -27,7 +27,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(2); let ret; - if ($[0] !== props) { + if (!Object.is($[0], props)) { const x = [1, 2, 3]; ret = []; do { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/do-while-conditional-break.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/do-while-conditional-break.expect.md index 1dd74b2d934..a96df462d70 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/do-while-conditional-break.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/do-while-conditional-break.expect.md @@ -22,7 +22,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(2); let x; - if ($[0] !== props) { + if (!Object.is($[0], props)) { x = [0, 1, 2, 3]; do { if (x === 0) { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/dont-merge-if-dep-is-inner-declaration-of-previous-scope.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/dont-merge-if-dep-is-inner-declaration-of-previous-scope.expect.md index ce5bfda6440..d66e540a0da 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/dont-merge-if-dep-is-inner-declaration-of-previous-scope.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/dont-merge-if-dep-is-inner-declaration-of-previous-scope.expect.md @@ -55,11 +55,11 @@ function Component(t0) { const { a, b, c } = t0; let x; let y; - if ($[0] !== a || $[1] !== b || $[2] !== c) { + if (!Object.is($[0], a) || !Object.is($[1], b) || !Object.is($[2], c)) { x = []; if (a) { let t1; - if ($[5] !== b) { + if (!Object.is($[5], b)) { t1 = [b]; $[5] = b; $[6] = t1; @@ -80,7 +80,7 @@ function Component(t0) { y = $[4]; } let t1; - if ($[7] !== y) { + if (!Object.is($[7], y)) { t1 = [y]; $[7] = y; $[8] = t1; @@ -89,7 +89,7 @@ function Component(t0) { } const z = t1; let t2; - if ($[9] !== a || $[10] !== b || $[11] !== c) { + if (!Object.is($[9], a) || !Object.is($[10], b) || !Object.is($[11], c)) { t2 = [a, b, c]; $[9] = a; $[10] = b; @@ -99,7 +99,7 @@ function Component(t0) { t2 = $[12]; } let t3; - if ($[13] !== t2 || $[14] !== x) { + if (!Object.is($[13], t2) || !Object.is($[14], x)) { t3 = ; $[13] = t2; $[14] = x; @@ -108,7 +108,7 @@ function Component(t0) { t3 = $[15]; } let t4; - if ($[16] !== a || $[17] !== b) { + if (!Object.is($[16], a) || !Object.is($[17], b)) { t4 = [a, b]; $[16] = a; $[17] = b; @@ -117,7 +117,7 @@ function Component(t0) { t4 = $[18]; } let t5; - if ($[19] !== t4 || $[20] !== z) { + if (!Object.is($[19], t4) || !Object.is($[20], z)) { t5 = ; $[19] = t4; $[20] = z; @@ -126,7 +126,7 @@ function Component(t0) { t5 = $[21]; } let t6; - if ($[22] !== t3 || $[23] !== t5) { + if (!Object.is($[22], t3) || !Object.is($[23], t5)) { t6 = ( <> {t3} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/dont-merge-overlapping-scopes-store-const-used-later.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/dont-merge-overlapping-scopes-store-const-used-later.expect.md index a59d1a566c1..ade3e686c61 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/dont-merge-overlapping-scopes-store-const-used-later.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/dont-merge-overlapping-scopes-store-const-used-later.expect.md @@ -28,7 +28,7 @@ import { Stringify, makeObject_Primitives } from "shared-runtime"; function Component(props) { const $ = _c(6); let t0; - if ($[0] !== props.count) { + if (!Object.is($[0], props.count)) { t0 = [props.count]; $[0] = props.count; $[1] = t0; @@ -38,7 +38,7 @@ function Component(props) { const array = t0; const x = makeObject_Primitives(); let t1; - if ($[2] !== array) { + if (!Object.is($[2], array)) { t1 =
{array}
; $[2] = array; $[3] = t1; @@ -48,7 +48,7 @@ function Component(props) { const element = t1; console.log(x); let t2; - if ($[4] !== element) { + if (!Object.is($[4], element)) { t2 =
{element}
; $[4] = element; $[5] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/dont-merge-overlapping-scopes-with-intermediate-reassignment.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/dont-merge-overlapping-scopes-with-intermediate-reassignment.expect.md index cae53674bc7..686c609ece1 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/dont-merge-overlapping-scopes-with-intermediate-reassignment.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/dont-merge-overlapping-scopes-with-intermediate-reassignment.expect.md @@ -34,7 +34,7 @@ function Component(props) { const $ = _c(7); let x; let t0; - if ($[0] !== props.count) { + if (!Object.is($[0], props.count)) { t0 = [props.count]; $[0] = props.count; $[1] = t0; @@ -44,7 +44,7 @@ function Component(props) { const array = t0; x = array; let t1; - if ($[2] !== array) { + if (!Object.is($[2], array)) { t1 =
{array}
; $[2] = array; $[3] = t1; @@ -53,7 +53,7 @@ function Component(props) { } const element = t1; let t2; - if ($[4] !== element || $[5] !== x) { + if (!Object.is($[4], element) || !Object.is($[5], x)) { t2 = (
{element} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/drop-methodcall-usecallback.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/drop-methodcall-usecallback.expect.md index be8e2268290..66ac6c5176b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/drop-methodcall-usecallback.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/drop-methodcall-usecallback.expect.md @@ -27,7 +27,7 @@ import * as React from "react"; function Component(props) { const $ = _c(4); let t0; - if ($[0] !== props.value) { + if (!Object.is($[0], props.value)) { t0 = () => { console.log(props.value); }; @@ -38,7 +38,7 @@ function Component(props) { } const onClick = t0; let t1; - if ($[2] !== onClick) { + if (!Object.is($[2], onClick)) { t1 =
; $[2] = onClick; $[3] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/drop-methodcall-usememo.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/drop-methodcall-usememo.expect.md index 42a3484335d..d79a8cc8abd 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/drop-methodcall-usememo.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/drop-methodcall-usememo.expect.md @@ -29,7 +29,7 @@ import * as React from "react"; function Component(props) { const $ = _c(2); let x; - if ($[0] !== props.value) { + if (!Object.is($[0], props.value)) { x = []; x.push(props.value); $[0] = props.value; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/early-return-nested-early-return-within-reactive-scope.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/early-return-nested-early-return-within-reactive-scope.expect.md index 68b0122ea92..753a1182807 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/early-return-nested-early-return-within-reactive-scope.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/early-return-nested-early-return-within-reactive-scope.expect.md @@ -33,7 +33,11 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(7); let t0; - if ($[0] !== props.a || $[1] !== props.b || $[2] !== props.cond) { + if ( + !Object.is($[0], props.a) || + !Object.is($[1], props.b) || + !Object.is($[2], props.cond) + ) { t0 = Symbol.for("react.early_return_sentinel"); bb0: { const x = []; @@ -41,7 +45,7 @@ function Component(props) { x.push(props.a); if (props.b) { let t1; - if ($[4] !== props.b) { + if (!Object.is($[4], props.b)) { t1 = [props.b]; $[4] = props.b; $[5] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/early-return-no-declarations-reassignments-dependencies.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/early-return-no-declarations-reassignments-dependencies.expect.md index 56fdd4ccf82..31870c956ff 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/early-return-no-declarations-reassignments-dependencies.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/early-return-no-declarations-reassignments-dependencies.expect.md @@ -91,7 +91,7 @@ function Component(props) { return t0; } let t1; - if ($[1] !== props.a) { + if (!Object.is($[1], props.a)) { t1 = makeArray(props.a); $[1] = props.a; $[2] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/early-return-within-reactive-scope.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/early-return-within-reactive-scope.expect.md index 31df829e0c2..f025c491280 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/early-return-within-reactive-scope.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/early-return-within-reactive-scope.expect.md @@ -47,7 +47,11 @@ import { makeArray } from "shared-runtime"; function Component(props) { const $ = _c(6); let t0; - if ($[0] !== props.a || $[1] !== props.b || $[2] !== props.cond) { + if ( + !Object.is($[0], props.a) || + !Object.is($[1], props.b) || + !Object.is($[2], props.cond) + ) { t0 = Symbol.for("react.early_return_sentinel"); bb0: { const x = []; @@ -57,7 +61,7 @@ function Component(props) { break bb0; } else { let t1; - if ($[4] !== props.b) { + if (!Object.is($[4], props.b)) { t1 = makeArray(props.b); $[4] = props.b; $[5] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/empty-eslint-suppressions-config.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/empty-eslint-suppressions-config.expect.md index eeb0ba6c96d..4a299b76363 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/empty-eslint-suppressions-config.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/empty-eslint-suppressions-config.expect.md @@ -32,7 +32,7 @@ function Component(props) { "use forget"; const $ = _c(2); let t0; - if ($[0] !== props.text) { + if (!Object.is($[0], props.text)) { t0 =
{props.text}
; $[0] = props.text; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-destructured-rest-element.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-destructured-rest-element.expect.md index f38ffba9585..ed84b946341 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-destructured-rest-element.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-destructured-rest-element.expect.md @@ -25,7 +25,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(7); let b; - if ($[0] !== props.a) { + if (!Object.is($[0], props.a)) { const { a, ...t0 } = props.a; b = t0; $[0] = props.a; @@ -34,7 +34,7 @@ function Component(props) { b = $[1]; } let d; - if ($[2] !== props.c) { + if (!Object.is($[2], props.c)) { [, ...d] = props.c; $[2] = props.c; $[3] = d; @@ -42,7 +42,7 @@ function Component(props) { d = $[3]; } let t0; - if ($[4] !== b || $[5] !== d) { + if (!Object.is($[4], b) || !Object.is($[5], d)) { t0 =
; $[4] = b; $[5] = d; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-jsx-child.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-jsx-child.expect.md index ac182ce0ad6..4a2613e7b09 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-jsx-child.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-jsx-child.expect.md @@ -29,11 +29,11 @@ import { c as _c } from "react/compiler-runtime"; function foo(a, b, c) { const $ = _c(9); let x; - if ($[0] !== a || $[1] !== b || $[2] !== c) { + if (!Object.is($[0], a) || !Object.is($[1], b) || !Object.is($[2], c)) { x = []; if (a) { let y; - if ($[4] !== b || $[5] !== c) { + if (!Object.is($[4], b) || !Object.is($[5], c)) { y = []; if (b) { y.push(c); @@ -45,7 +45,7 @@ function foo(a, b, c) { y = $[6]; } let t0; - if ($[7] !== y) { + if (!Object.is($[7], y)) { t0 =
{y}
; $[7] = y; $[8] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-logical.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-logical.expect.md index d5e8bfbf9ef..abfed42f107 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-logical.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-logical.expect.md @@ -26,7 +26,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(6); let t0; - if ($[0] !== props.a) { + if (!Object.is($[0], props.a)) { t0 = [props.a]; $[0] = props.a; $[1] = t0; @@ -35,7 +35,7 @@ function Component(props) { } const a = t0; let t1; - if ($[2] !== props.b) { + if (!Object.is($[2], props.b)) { t1 = [props.b]; $[2] = props.b; $[3] = t1; @@ -44,7 +44,7 @@ function Component(props) { } const b = t1; let t2; - if ($[4] !== props.c) { + if (!Object.is($[4], props.c)) { t2 = [props.c]; $[4] = props.c; $[5] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-non-escaping-interleaved-allocating-dependency.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-non-escaping-interleaved-allocating-dependency.expect.md index 866fe3985f2..617b9c041ea 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-non-escaping-interleaved-allocating-dependency.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-non-escaping-interleaved-allocating-dependency.expect.md @@ -33,7 +33,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(5); let t0; - if ($[0] !== props.a) { + if (!Object.is($[0], props.a)) { t0 = [props.a]; $[0] = props.a; $[1] = t0; @@ -42,7 +42,7 @@ function Component(props) { } const a = t0; let b; - if ($[2] !== a || $[3] !== props.b) { + if (!Object.is($[2], a) || !Object.is($[3], props.b)) { b = []; const c = {}; c.a = a; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-non-escaping-interleaved-allocating-nested-dependency.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-non-escaping-interleaved-allocating-nested-dependency.expect.md index 52a184a8fe2..97c96e0efbf 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-non-escaping-interleaved-allocating-nested-dependency.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-non-escaping-interleaved-allocating-nested-dependency.expect.md @@ -42,7 +42,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(5); let t0; - if ($[0] !== props.a) { + if (!Object.is($[0], props.a)) { const a = [props.a]; t0 = [a]; $[0] = props.a; @@ -52,7 +52,7 @@ function Component(props) { } const b = t0; let c; - if ($[2] !== b || $[3] !== props.b) { + if (!Object.is($[2], b) || !Object.is($[3], props.b)) { c = []; const d = {}; d.b = b; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-non-escaping-interleaved-primitive-dependency.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-non-escaping-interleaved-primitive-dependency.expect.md index 1f8f15b12dc..83eeb19b108 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-non-escaping-interleaved-primitive-dependency.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/escape-analysis-non-escaping-interleaved-primitive-dependency.expect.md @@ -37,7 +37,7 @@ function Component(props) { const a = props.a + props.b; let b; - if ($[0] !== a || $[1] !== props.c) { + if (!Object.is($[0], a) || !Object.is($[1], props.c)) { b = []; const c = {}; c.a = a; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/evaluation-order-mutate-call-after-dependency-load.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/evaluation-order-mutate-call-after-dependency-load.expect.md index acad3c30921..e3cb1fdf3d0 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/evaluation-order-mutate-call-after-dependency-load.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/evaluation-order-mutate-call-after-dependency-load.expect.md @@ -49,7 +49,7 @@ function useFoo(source) { const $ = _c(6); let t0; let t1; - if ($[0] !== source) { + if (!Object.is($[0], source)) { const arr = [1, 2, 3, ...source]; t0 = arr.length; t1 = arr.push(0); @@ -61,7 +61,7 @@ function useFoo(source) { t1 = $[2]; } let t2; - if ($[3] !== t0 || $[4] !== t1) { + if (!Object.is($[3], t0) || !Object.is($[4], t1)) { t2 = [t0, t1]; $[3] = t0; $[4] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/evaluation-order-mutate-store-after-dependency-load.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/evaluation-order-mutate-store-after-dependency-load.expect.md index b2bf1e36a48..fb9a8ca27d2 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/evaluation-order-mutate-store-after-dependency-load.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/evaluation-order-mutate-store-after-dependency-load.expect.md @@ -49,7 +49,7 @@ function useFoo(source) { const $ = _c(6); let t0; let t1; - if ($[0] !== source) { + if (!Object.is($[0], source)) { const arr = [1, 2, 3, ...source]; t0 = arr.length; t1 = arr.length = 0; @@ -61,7 +61,7 @@ function useFoo(source) { t1 = $[2]; } let t2; - if ($[3] !== t0 || $[4] !== t1) { + if (!Object.is($[3], t0) || !Object.is($[4], t1)) { t2 = [t0, t1]; $[3] = t0; $[4] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/exhaustive-deps/compile-files-with-exhaustive-deps-violation-in-effects.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/exhaustive-deps/compile-files-with-exhaustive-deps-violation-in-effects.expect.md index e8e18395eca..9c310a9d37b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/exhaustive-deps/compile-files-with-exhaustive-deps-violation-in-effects.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/exhaustive-deps/compile-files-with-exhaustive-deps-violation-in-effects.expect.md @@ -39,7 +39,7 @@ function Component(t0) { const $ = _c(10); const { x } = t0; let t1; - if ($[0] !== x) { + if (!Object.is($[0], x)) { t1 = () => { console.log(x); }; @@ -57,7 +57,7 @@ function Component(t0) { } useEffect(t1, t2); let t3; - if ($[3] !== x) { + if (!Object.is($[3], x)) { t3 = [x]; $[3] = x; $[4] = t3; @@ -66,7 +66,7 @@ function Component(t0) { } const memo = t3; let t4; - if ($[5] !== x) { + if (!Object.is($[5], x)) { t4 = [x]; $[5] = x; $[6] = t4; @@ -74,7 +74,7 @@ function Component(t0) { t4 = $[6]; } let t5; - if ($[7] !== memo || $[8] !== t4) { + if (!Object.is($[7], memo) || !Object.is($[8], t4)) { t5 = ; $[7] = memo; $[8] = t4; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/exhaustive-deps/exhaustive-deps-effect-events.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/exhaustive-deps/exhaustive-deps-effect-events.expect.md index a633db2d8da..6fd5db69b9f 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/exhaustive-deps/exhaustive-deps-effect-events.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/exhaustive-deps/exhaustive-deps-effect-events.expect.md @@ -37,7 +37,7 @@ function Component(t0) { const $ = _c(12); const { x, y, z } = t0; let t1; - if ($[0] !== x) { + if (!Object.is($[0], x)) { t1 = () => { log(x); }; @@ -48,7 +48,7 @@ function Component(t0) { } const effectEvent = useEffectEvent(t1); let t2; - if ($[2] !== y) { + if (!Object.is($[2], y)) { t2 = (z_0) => { log(y, z_0); }; @@ -59,7 +59,7 @@ function Component(t0) { } const effectEvent2 = useEffectEvent(t2); let t3; - if ($[4] !== effectEvent) { + if (!Object.is($[4], effectEvent)) { t3 = () => { effectEvent(); }; @@ -77,7 +77,7 @@ function Component(t0) { } useEffect(t3, t4); let t5; - if ($[7] !== effectEvent2 || $[8] !== z) { + if (!Object.is($[7], effectEvent2) || !Object.is($[8], z)) { t5 = () => { effectEvent2(z); }; @@ -88,7 +88,7 @@ function Component(t0) { t5 = $[9]; } let t6; - if ($[10] !== z) { + if (!Object.is($[10], z)) { t6 = [z]; $[10] = z; $[11] = t6; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/exhaustive-deps/exhaustive-deps.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/exhaustive-deps/exhaustive-deps.expect.md index 70d8a3abbf6..f927f3d7602 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/exhaustive-deps/exhaustive-deps.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/exhaustive-deps/exhaustive-deps.expect.md @@ -100,7 +100,7 @@ function useHook4(x, y, z) { function useHook5(x) { const $ = _c(2); let e; - if ($[0] !== x) { + if (!Object.is($[0], x)) { e = []; const local = makeObject_Primitives(x); const fn = () => { @@ -119,7 +119,7 @@ function useHook5(x) { function useHook6(x) { const $ = _c(2); let f; - if ($[0] !== x) { + if (!Object.is($[0], x)) { f = []; f.push(x.y.z); f.push(x.y); @@ -172,13 +172,13 @@ function Component(t0) { const g = useHook7(x); let t1; if ( - $[0] !== a || - $[1] !== b || - $[2] !== c || - $[3] !== d || - $[4] !== e || - $[5] !== f || - $[6] !== g + !Object.is($[0], a) || + !Object.is($[1], b) || + !Object.is($[2], c) || + !Object.is($[3], d) || + !Object.is($[4], e) || + !Object.is($[5], f) || + !Object.is($[6], g) ) { t1 = ; $[0] = a; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/existing-variables-with-c-name.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/existing-variables-with-c-name.expect.md index 4257f9b6047..d28677a70aa 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/existing-variables-with-c-name.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/existing-variables-with-c-name.expect.md @@ -43,7 +43,7 @@ function Component(props) { const c1 = __c; const $c = c1; let t0; - if ($[0] !== $c) { + if (!Object.is($[0], $c)) { t0 = [$c]; $[0] = $c; $[1] = t0; @@ -52,7 +52,7 @@ function Component(props) { } const array = t0; let t1; - if ($[2] !== state) { + if (!Object.is($[2], state)) { t1 = [state]; $[2] = state; $[3] = t1; @@ -60,7 +60,7 @@ function Component(props) { t1 = $[3]; } let t2; - if ($[4] !== array || $[5] !== t1) { + if (!Object.is($[4], array) || !Object.is($[5], t1)) { t2 = ; $[4] = array; $[5] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/extend-scopes-if.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/extend-scopes-if.expect.md index 07d02cb0e97..219e62353ee 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/extend-scopes-if.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/extend-scopes-if.expect.md @@ -32,7 +32,7 @@ import { c as _c } from "react/compiler-runtime"; function foo(a, b, c) { const $ = _c(4); let x; - if ($[0] !== a || $[1] !== b || $[2] !== c) { + if (!Object.is($[0], a) || !Object.is($[1], b) || !Object.is($[2], c)) { x = []; if (a) { if (b) { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fast-refresh-reloading.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fast-refresh-reloading.expect.md index 136c19e62d0..c9223d18462 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fast-refresh-reloading.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fast-refresh-reloading.expect.md @@ -40,7 +40,7 @@ function Component(props) { const [state] = useState(0); const t0 = state * 2; let t1; - if ($[1] !== t0) { + if (!Object.is($[1], t0)) { t1 = [t0]; $[1] = t0; $[2] = t1; @@ -49,7 +49,7 @@ function Component(props) { } const doubled = t1; let t2; - if ($[3] !== state) { + if (!Object.is($[3], state)) { t2 = [state]; $[3] = state; $[4] = t2; @@ -57,7 +57,7 @@ function Component(props) { t2 = $[4]; } let t3; - if ($[5] !== doubled || $[6] !== t2) { + if (!Object.is($[5], doubled) || !Object.is($[6], t2)) { t3 = ; $[5] = doubled; $[6] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/bug-fbt-plural-multiple-function-calls.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/bug-fbt-plural-multiple-function-calls.expect.md index f4a416a5036..fa2dcdbd7a6 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/bug-fbt-plural-multiple-function-calls.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/bug-fbt-plural-multiple-function-calls.expect.md @@ -54,7 +54,7 @@ function useFoo(t0) { const $ = _c(3); const { apples, bananas } = t0; let t1; - if ($[0] !== apples || $[1] !== bananas) { + if (!Object.is($[0], apples) || !Object.is($[1], bananas)) { t1 = fbt._( { "*": { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/bug-fbt-plural-multiple-mixed-call-tag.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/bug-fbt-plural-multiple-mixed-call-tag.expect.md index 21b0dd24868..6653186b541 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/bug-fbt-plural-multiple-mixed-call-tag.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/bug-fbt-plural-multiple-mixed-call-tag.expect.md @@ -61,7 +61,7 @@ function useFoo(t0) { const $ = _c(3); const { apples, bananas } = t0; let t1; - if ($[0] !== apples || $[1] !== bananas) { + if (!Object.is($[0], apples) || !Object.is($[1], bananas)) { t1 = (
{fbt._( diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbs-params.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbs-params.expect.md index 3334d26ec3e..2da2bd9afe3 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbs-params.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbs-params.expect.md @@ -33,7 +33,7 @@ import { fbs } from "fbt"; function Component(props) { const $ = _c(2); let t0; - if ($[0] !== props.name) { + if (!Object.is($[0], props.name)) { t0 = (
{text}
; $[2] = text; $[3] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-call.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-call.expect.md index b03288870db..e44e1d018f0 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-call.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-call.expect.md @@ -28,7 +28,7 @@ import fbt from "fbt"; function Component(props) { const $ = _c(4); let t0; - if ($[0] !== props.count) { + if (!Object.is($[0], props.count)) { t0 = fbt._( "{(key) count} items", [fbt._param("(key) count", props.count)], @@ -41,7 +41,7 @@ function Component(props) { } const text = t0; let t1; - if ($[2] !== text) { + if (!Object.is($[2], text)) { t1 =
{text}
; $[2] = text; $[3] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-no-whitespace-btw-text-and-param.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-no-whitespace-btw-text-and-param.expect.md index 862417e5b5b..400b3b6118a 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-no-whitespace-btw-text-and-param.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-no-whitespace-btw-text-and-param.expect.md @@ -31,7 +31,7 @@ function Component(t0) { const $ = _c(2); const { value } = t0; let t1; - if ($[0] !== value) { + if (!Object.is($[0], value)) { t1 = fbt._( "Before text{paramName}After text", [fbt._param("paramName", value)], diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-param-with-leading-whitespace.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-param-with-leading-whitespace.expect.md index 96cea12a623..00183cc117f 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-param-with-leading-whitespace.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-param-with-leading-whitespace.expect.md @@ -46,9 +46,9 @@ import { identity } from "shared-runtime"; function Component(props) { const $ = _c(5); let t0; - if ($[0] !== props.count || $[1] !== props.option) { + if (!Object.is($[0], props.count) || !Object.is($[1], props.option)) { let t1; - if ($[3] !== props.count) { + if (!Object.is($[3], props.count)) { t1 = identity(props.count); $[3] = props.count; $[4] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-param-with-newline.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-param-with-newline.expect.md index f3d5e8ac6af..15df0f23ef1 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-param-with-newline.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-param-with-newline.expect.md @@ -34,7 +34,7 @@ import fbt from "fbt"; function Component(props) { const $ = _c(2); let t0; - if ($[0] !== props.name) { + if (!Object.is($[0], props.name)) { const element = fbt._( "Hello {a really long description that got split into multiple lines}", [ diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-param-with-quotes.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-param-with-quotes.expect.md index 62366dc5141..4d5293ad25c 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-param-with-quotes.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-param-with-quotes.expect.md @@ -29,7 +29,7 @@ import fbt from "fbt"; function Component(props) { const $ = _c(2); let t0; - if ($[0] !== props.name) { + if (!Object.is($[0], props.name)) { const element = fbt._( 'Hello {"user" name}', [fbt._param('"user" name', props.name)], diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-param-with-trailing-whitespace.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-param-with-trailing-whitespace.expect.md index e5f465df169..68ec120025a 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-param-with-trailing-whitespace.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-param-with-trailing-whitespace.expect.md @@ -46,9 +46,9 @@ import { identity } from "shared-runtime"; function Component(props) { const $ = _c(5); let t0; - if ($[0] !== props.count || $[1] !== props.option) { + if (!Object.is($[0], props.count) || !Object.is($[1], props.option)) { let t1; - if ($[3] !== props.count) { + if (!Object.is($[3], props.count)) { t1 = identity(props.count); $[3] = props.count; $[4] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-param-with-unicode.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-param-with-unicode.expect.md index 6c3a94509eb..869287a21c0 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-param-with-unicode.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-param-with-unicode.expect.md @@ -29,7 +29,7 @@ import fbt from "fbt"; function Component(props) { const $ = _c(2); let t0; - if ($[0] !== props.name) { + if (!Object.is($[0], props.name)) { const element = fbt._( "Hello {user name ☺}", [fbt._param("user name \u263A", props.name)], diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-params-complex-param-value.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-params-complex-param-value.expect.md index 37f57721a44..59b56819cb8 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-params-complex-param-value.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-params-complex-param-value.expect.md @@ -23,7 +23,7 @@ import fbt from "fbt"; function Component(props) { const $ = _c(2); let t0; - if ($[0] !== props.name) { + if (!Object.is($[0], props.name)) { t0 = fbt._( "Hello {user name}", [fbt._param("user name", capitalize(props.name))], diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-params.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-params.expect.md index 610932fd4bb..13b9c3d51e3 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-params.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-params.expect.md @@ -34,7 +34,7 @@ import fbt from "fbt"; function Component(props) { const $ = _c(7); let t0; - if ($[0] !== props.name) { + if (!Object.is($[0], props.name)) { t0 = fbt._("Hello {user name}", [fbt._param("user name", props.name)], { hk: "2zEDKF", }); @@ -44,7 +44,7 @@ function Component(props) { t0 = $[1]; } let t1; - if ($[2] !== props.actions) { + if (!Object.is($[2], props.actions)) { t1 = fbt._( "{actions|response}", [fbt._param("actions|response", props.actions)], @@ -56,7 +56,7 @@ function Component(props) { t1 = $[3]; } let t2; - if ($[4] !== t0 || $[5] !== t1) { + if (!Object.is($[4], t0) || !Object.is($[5], t1)) { t2 = (
{t0} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-preserve-jsxtext.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-preserve-jsxtext.expect.md index 4b39a6d237d..9507f4dfe1c 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-preserve-jsxtext.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-preserve-jsxtext.expect.md @@ -34,7 +34,7 @@ import fbt from "fbt"; function Foo(props) { const $ = _c(2); let t0; - if ($[0] !== props.value) { + if (!Object.is($[0], props.value)) { t0 = fbt._( { "0": "hello {value},", "1": "goodbye {value}," }, [ diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-preserve-whitespace-subtree.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-preserve-whitespace-subtree.expect.md index 702a9fd8eab..59fe2915946 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-preserve-whitespace-subtree.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-preserve-whitespace-subtree.expect.md @@ -47,7 +47,7 @@ import fbt from "fbt"; function Foo(props) { const $ = _c(2); let t0; - if ($[0] !== props.name) { + if (!Object.is($[0], props.name)) { t0 = fbt._( "{=m0}", [ diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-preserve-whitespace-two-subtrees.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-preserve-whitespace-two-subtrees.expect.md index c421ccbe810..7430f5b66ba 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-preserve-whitespace-two-subtrees.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-preserve-whitespace-two-subtrees.expect.md @@ -40,9 +40,9 @@ function Foo(t0) { const $ = _c(13); const { name1, name2 } = t0; let t1; - if ($[0] !== name1 || $[1] !== name2) { + if (!Object.is($[0], name1) || !Object.is($[1], name2)) { let t2; - if ($[3] !== name1) { + if (!Object.is($[3], name1)) { t2 = {name1}; $[3] = name1; $[4] = t2; @@ -50,7 +50,7 @@ function Foo(t0) { t2 = $[4]; } let t3; - if ($[5] !== name1 || $[6] !== t2) { + if (!Object.is($[5], name1) || !Object.is($[6], t2)) { t3 = {t2}; $[5] = name1; $[6] = t2; @@ -59,7 +59,7 @@ function Foo(t0) { t3 = $[7]; } let t4; - if ($[8] !== name2) { + if (!Object.is($[8], name2)) { t4 = {name2}; $[8] = name2; $[9] = t4; @@ -67,7 +67,7 @@ function Foo(t0) { t4 = $[9]; } let t5; - if ($[10] !== name2 || $[11] !== t4) { + if (!Object.is($[10], name2) || !Object.is($[11], t4)) { t5 = {t4}; $[10] = name2; $[11] = t4; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-preserve-whitespace.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-preserve-whitespace.expect.md index 1af75896847..39d3ffb1920 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-preserve-whitespace.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-preserve-whitespace.expect.md @@ -32,7 +32,7 @@ function Component(t0) { const $ = _c(2); const { value } = t0; let t1; - if ($[0] !== value) { + if (!Object.is($[0], value)) { t1 = fbt._( "Before text {paramName}", [ diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-repro-invalid-mutable-range-destructured-prop.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-repro-invalid-mutable-range-destructured-prop.expect.md index 4f81700bbb0..a2dafdcf568 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-repro-invalid-mutable-range-destructured-prop.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-repro-invalid-mutable-range-destructured-prop.expect.md @@ -40,7 +40,7 @@ function Component(t0) { const $ = _c(7); const { data } = t0; let t1; - if ($[0] !== data.name) { + if (!Object.is($[0], data.name)) { t1 = fbt._("{name}", [fbt._param("name", data.name ?? "")], { hk: "csQUH", }); @@ -51,7 +51,7 @@ function Component(t0) { } const el = t1; let t2; - if ($[2] !== data.name) { + if (!Object.is($[2], data.name)) { t2 = [data.name]; $[2] = data.name; $[3] = t2; @@ -59,7 +59,7 @@ function Component(t0) { t2 = $[3]; } let t3; - if ($[4] !== el || $[5] !== t2) { + if (!Object.is($[4], el) || !Object.is($[5], t2)) { t3 = ; $[4] = el; $[5] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-single-space-btw-param-and-text.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-single-space-btw-param-and-text.expect.md index c23c485cde4..523d8673e8d 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-single-space-btw-param-and-text.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-single-space-btw-param-and-text.expect.md @@ -31,7 +31,7 @@ function Component(t0) { const $ = _c(2); const { value } = t0; let t1; - if ($[0] !== value) { + if (!Object.is($[0], value)) { t1 = fbt._( "Before text {paramName} after text", [fbt._param("paramName", value)], diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-template-string-same-scope.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-template-string-same-scope.expect.md index f35e4708298..ac2f7f02a43 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-template-string-same-scope.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-template-string-same-scope.expect.md @@ -42,7 +42,7 @@ export function Component(props) { count = props.items.length; } let t0; - if ($[0] !== count) { + if (!Object.is($[0], count)) { t0 = fbt._("for {count} experiences", [fbt._param("count", count)], { hk: "nmYpm", }); @@ -52,7 +52,7 @@ export function Component(props) { t0 = $[1]; } let t1; - if ($[2] !== t0) { + if (!Object.is($[2], t0)) { t1 = {t0}; $[2] = t0; $[3] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-to-string.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-to-string.expect.md index 9ad917e6f78..baabaa6af90 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-to-string.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-to-string.expect.md @@ -29,7 +29,7 @@ import fbt from "fbt"; function Component(props) { const $ = _c(2); let t0; - if ($[0] !== props.name) { + if (!Object.is($[0], props.name)) { const element = fbt._( "Hello {user name}", [fbt._param("user name", props.name)], diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-whitespace-around-param-value.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-whitespace-around-param-value.expect.md index 420f3de7d40..5c402f85339 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-whitespace-around-param-value.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-whitespace-around-param-value.expect.md @@ -31,7 +31,7 @@ function Component(t0) { const $ = _c(2); const { value } = t0; let t1; - if ($[0] !== value) { + if (!Object.is($[0], value)) { t1 = fbt._( "Before text {paramName} after text", [fbt._param("paramName", value)], diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-whitespace-within-text.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-whitespace-within-text.expect.md index 1b060dacfeb..7c5f87a250c 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-whitespace-within-text.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbt-whitespace-within-text.expect.md @@ -33,7 +33,7 @@ function Component(t0) { const $ = _c(2); const { value } = t0; let t1; - if ($[0] !== value) { + if (!Object.is($[0], value)) { t1 = fbt._( "Before text {paramName} after text more text and more and more and more and more and more and more and more and more and blah blah blah blah", [fbt._param("paramName", value)], diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbtparam-with-jsx-element-content.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbtparam-with-jsx-element-content.expect.md index 66141f7f8d7..ee83a4bddf9 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbtparam-with-jsx-element-content.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbtparam-with-jsx-element-content.expect.md @@ -32,9 +32,13 @@ function Component(t0) { const $ = _c(6); const { name, data, icon } = t0; let t1; - if ($[0] !== data || $[1] !== icon || $[2] !== name) { + if ( + !Object.is($[0], data) || + !Object.is($[1], icon) || + !Object.is($[2], name) + ) { let t2; - if ($[4] !== name) { + if (!Object.is($[4], name)) { t2 = {name}; $[4] = name; $[5] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbtparam-with-jsx-fragment-value.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbtparam-with-jsx-fragment-value.expect.md index c9a43bb075e..f218fad9a4b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbtparam-with-jsx-fragment-value.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/fbtparam-with-jsx-fragment-value.expect.md @@ -29,10 +29,10 @@ import { identity } from "shared-runtime"; function Component(props) { const $ = _c(4); let t0; - if ($[0] !== props.text) { + if (!Object.is($[0], props.text)) { const t1 = identity(props.text); let t2; - if ($[2] !== t1) { + if (!Object.is($[2], t1)) { t2 = <>{t1}; $[2] = t1; $[3] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/recursively-merge-scopes-jsx.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/recursively-merge-scopes-jsx.expect.md index 93a9b869f67..a5bc47929cd 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/recursively-merge-scopes-jsx.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/recursively-merge-scopes-jsx.expect.md @@ -50,7 +50,7 @@ function Example(t0) { const $ = _c(2); const { x } = t0; let t1; - if ($[0] !== x) { + if (!Object.is($[0], x)) { t1 = fbt._( "Outer Text {=m1}", [ diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/repro-fbt-param-nested-fbt-jsx.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/repro-fbt-param-nested-fbt-jsx.expect.md index 10a2a9ae131..d3ac61d1bc7 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/repro-fbt-param-nested-fbt-jsx.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/repro-fbt-param-nested-fbt-jsx.expect.md @@ -67,9 +67,9 @@ function Component(t0) { const $ = _c(9); const { firstname, lastname } = t0; let t1; - if ($[0] !== firstname || $[1] !== lastname) { + if (!Object.is($[0], firstname) || !Object.is($[1], lastname)) { let t2; - if ($[3] !== firstname) { + if (!Object.is($[3], firstname)) { t2 = ; $[3] = firstname; $[4] = t2; @@ -77,7 +77,7 @@ function Component(t0) { t2 = $[4]; } let t3; - if ($[5] !== lastname) { + if (!Object.is($[5], lastname)) { t3 = ; $[5] = lastname; $[6] = t3; @@ -106,7 +106,7 @@ function Component(t0) { t1 = $[2]; } let t2; - if ($[7] !== t1) { + if (!Object.is($[7], t1)) { t2 =
{t1}
; $[7] = t1; $[8] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/repro-fbt-param-nested-fbt.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/repro-fbt-param-nested-fbt.expect.md index 063e45e04e3..d5372c02a3e 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/repro-fbt-param-nested-fbt.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/repro-fbt-param-nested-fbt.expect.md @@ -66,7 +66,7 @@ function Component(t0) { const $ = _c(5); const { firstname, lastname } = t0; let t1; - if ($[0] !== firstname || $[1] !== lastname) { + if (!Object.is($[0], firstname) || !Object.is($[1], lastname)) { t1 = fbt._( "Name: {firstname}, {lastname}", [ @@ -102,7 +102,7 @@ function Component(t0) { t1 = $[2]; } let t2; - if ($[3] !== t1) { + if (!Object.is($[3], t1)) { t2 =
{t1}
; $[3] = t1; $[4] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/repro-macro-property-not-handled.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/repro-macro-property-not-handled.expect.md index a06b283d044..e172cf16f91 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/repro-macro-property-not-handled.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/repro-macro-property-not-handled.expect.md @@ -44,7 +44,7 @@ function useFoo(t0) { const $ = _c(2); const { items } = t0; let t1; - if ($[0] !== items) { + if (!Object.is($[0], items)) { t1 = [...items]; $[0] = items; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/repro-separately-memoized-fbt-param.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/repro-separately-memoized-fbt-param.expect.md index b8d3ba638ee..382489ffffd 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/repro-separately-memoized-fbt-param.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/fbt/repro-separately-memoized-fbt-param.expect.md @@ -40,7 +40,7 @@ function Component() { const $ = _c(2); const [count] = useState(0); let t0; - if ($[0] !== count) { + if (!Object.is($[0], count)) { t0 = fbt._( { "*": { "*": "Expected at least {min} items, but got {count} items." } }, [ diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/flag-enable-emit-hook-guards.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/flag-enable-emit-hook-guards.expect.md index 714cd931ae8..092e1d7f7af 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/flag-enable-emit-hook-guards.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/flag-enable-emit-hook-guards.expect.md @@ -72,7 +72,7 @@ function Component(t0) { print(value, state); let t2; let t3; - if ($[1] !== state) { + if (!Object.is($[1], state)) { t2 = () => { if (state === 4) { setState(5); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/flow-enum-inline.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/flow-enum-inline.expect.md index dfbf4fbfd93..882769776b8 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/flow-enum-inline.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/flow-enum-inline.expect.md @@ -39,7 +39,7 @@ function Component(props) { bool = Bool.True; } let t0; - if ($[0] !== bool) { + if (!Object.is($[0], bool)) { t0 =
{bool}
; $[0] = bool; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-in-statement-break.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-in-statement-break.expect.md index a9d20954d00..08be33d3b4e 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-in-statement-break.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-in-statement-break.expect.md @@ -30,7 +30,7 @@ function Component(props) { const $ = _c(2); let x; let t0; - if ($[0] !== props.value) { + if (!Object.is($[0], props.value)) { t0 = { ...props.value }; $[0] = props.value; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-in-statement-continue.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-in-statement-continue.expect.md index 06f13c05775..73ca6475d0b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-in-statement-continue.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-in-statement-continue.expect.md @@ -39,7 +39,7 @@ function Component(props) { const $ = _c(2); let x; let t0; - if ($[0] !== props.value) { + if (!Object.is($[0], props.value)) { t0 = { ...props.value }; $[0] = props.value; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-in-statement.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-in-statement.expect.md index 00ce1f020e0..1091181a40b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-in-statement.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-in-statement.expect.md @@ -28,7 +28,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(2); let t0; - if ($[0] !== props) { + if (!Object.is($[0], props)) { const items = []; for (const key in props) { items.push(
{key}
); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-loop-with-value-block-initializer.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-loop-with-value-block-initializer.expect.md index a68e2a23fb2..8a641757c09 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-loop-with-value-block-initializer.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-loop-with-value-block-initializer.expect.md @@ -67,7 +67,7 @@ const TOTAL = 10; function Component(props) { const $ = _c(3); let t0; - if ($[0] !== props.items || $[1] !== props.start) { + if (!Object.is($[0], props.items) || !Object.is($[1], props.start)) { const items = []; for (let i = props.start ?? 0; i < props.items.length; i++) { const item = props.items[i]; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-multiple-variable-declarations-in-initializer.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-multiple-variable-declarations-in-initializer.expect.md index 2cb73623e94..3afa246c74b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-multiple-variable-declarations-in-initializer.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-multiple-variable-declarations-in-initializer.expect.md @@ -26,7 +26,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(2); let items; - if ($[0] !== props.items) { + if (!Object.is($[0], props.items)) { items = []; for (let i = 0, length = props.items.length; i < length; i++) { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-of-immutable-collection.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-of-immutable-collection.expect.md index 746f79a5ad6..7e773df2b3a 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-of-immutable-collection.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-of-immutable-collection.expect.md @@ -40,7 +40,7 @@ function Router(t0) { const $ = _c(3); const { title, mapping } = t0; let array; - if ($[0] !== mapping || $[1] !== title) { + if (!Object.is($[0], mapping) || !Object.is($[1], title)) { array = []; for (const [, entry] of mapping) { array.push([title, entry]); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-of-iterator-of-immutable-collection.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-of-iterator-of-immutable-collection.expect.md index 484e5b72a6b..c779e1e0542 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-of-iterator-of-immutable-collection.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-of-iterator-of-immutable-collection.expect.md @@ -40,7 +40,7 @@ function Router(t0) { const $ = _c(3); const { title, mapping } = t0; let array; - if ($[0] !== mapping || $[1] !== title) { + if (!Object.is($[0], mapping) || !Object.is($[1], title)) { array = []; for (const entry of mapping.values()) { array.push([title, entry]); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-of-nonmutating-loop-local-collection.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-of-nonmutating-loop-local-collection.expect.md index 6d05e5e5ae3..f635bbb7b41 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-of-nonmutating-loop-local-collection.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-of-nonmutating-loop-local-collection.expect.md @@ -47,7 +47,7 @@ function Component(t0) { const $ = _c(19); const { a, b } = t0; let t1; - if ($[0] !== a) { + if (!Object.is($[0], a)) { t1 = [a]; $[0] = a; $[1] = t1; @@ -56,7 +56,7 @@ function Component(t0) { } const x = t1; let items; - if ($[2] !== b || $[3] !== x) { + if (!Object.is($[2], b) || !Object.is($[3], x)) { items = [b]; for (const i of x) { items.push(i); @@ -69,7 +69,7 @@ function Component(t0) { } const y = items; let t2; - if ($[5] !== a) { + if (!Object.is($[5], a)) { t2 = [a]; $[5] = a; $[6] = t2; @@ -77,7 +77,7 @@ function Component(t0) { t2 = $[6]; } let t3; - if ($[7] !== t2 || $[8] !== x) { + if (!Object.is($[7], t2) || !Object.is($[8], x)) { t3 = ; $[7] = t2; $[8] = x; @@ -86,7 +86,7 @@ function Component(t0) { t3 = $[9]; } let t4; - if ($[10] !== b || $[11] !== x) { + if (!Object.is($[10], b) || !Object.is($[11], x)) { t4 = [x, b]; $[10] = b; $[11] = x; @@ -95,7 +95,7 @@ function Component(t0) { t4 = $[12]; } let t5; - if ($[13] !== t4 || $[14] !== y) { + if (!Object.is($[13], t4) || !Object.is($[14], y)) { t5 = ; $[13] = t4; $[14] = y; @@ -104,7 +104,7 @@ function Component(t0) { t5 = $[15]; } let t6; - if ($[16] !== t3 || $[17] !== t5) { + if (!Object.is($[16], t3) || !Object.is($[17], t5)) { t6 = ( <> {t3} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-with-assignment-as-update.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-with-assignment-as-update.expect.md index f315ccaedb2..b9b3e627f01 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-with-assignment-as-update.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/for-with-assignment-as-update.expect.md @@ -28,7 +28,7 @@ function Component(props) { x = x + i; } let t0; - if ($[0] !== x) { + if (!Object.is($[0], x)) { t0 = [x]; $[0] = x; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-declaration-simple.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-declaration-simple.expect.md index c3e50f3a8fd..2cb617bd61b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-declaration-simple.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-declaration-simple.expect.md @@ -26,7 +26,7 @@ import { c as _c } from "react/compiler-runtime"; function component(a) { const $ = _c(3); let t; - if ($[0] !== a) { + if (!Object.is($[0], a)) { t = { a }; let t0; if ($[2] === Symbol.for("react.memo_cache_sentinel")) { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-expr-directive.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-expr-directive.expect.md index 8c4aa612e8c..a8cd22573b0 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-expr-directive.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-expr-directive.expect.md @@ -42,7 +42,7 @@ function Component() { } const update = t0; let t1; - if ($[1] !== count) { + if (!Object.is($[1], count)) { t1 = ; $[1] = count; $[2] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-expression-maybe-mutates-hook-return-value.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-expression-maybe-mutates-hook-return-value.expect.md index c8d6224645b..db50e32189f 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-expression-maybe-mutates-hook-return-value.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-expression-maybe-mutates-hook-return-value.expect.md @@ -25,7 +25,7 @@ function Component(props) { const $ = _c(2); const id = useSelectedEntitytId(); let t0; - if ($[0] !== id) { + if (!Object.is($[0], id)) { const onLoad = () => { log(id); }; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-expression-prototype-call-mutating.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-expression-prototype-call-mutating.expect.md index 4c03adc0e38..a502e0df068 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-expression-prototype-call-mutating.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-expression-prototype-call-mutating.expect.md @@ -35,7 +35,7 @@ import { ValidateMemoization } from "shared-runtime"; function Component(props) { const $ = _c(7); let a; - if ($[0] !== props.name) { + if (!Object.is($[0], props.name)) { a = []; const f = function () { a.push(props.name); @@ -49,7 +49,7 @@ function Component(props) { } const a_0 = a; let t0; - if ($[2] !== props.name) { + if (!Object.is($[2], props.name)) { t0 = [props.name]; $[2] = props.name; $[3] = t0; @@ -57,7 +57,7 @@ function Component(props) { t0 = $[3]; } let t1; - if ($[4] !== a_0 || $[5] !== t0) { + if (!Object.is($[4], a_0) || !Object.is($[5], t0)) { t1 = ; $[4] = a_0; $[5] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-expression-prototype-call.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-expression-prototype-call.expect.md index 73dbdc7f9d4..0b5442337bf 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-expression-prototype-call.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-expression-prototype-call.expect.md @@ -23,7 +23,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(2); let t0; - if ($[0] !== props) { + if (!Object.is($[0], props)) { const f = function () { return
{props.name}
; }; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-expression-with-store-to-parameter.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-expression-with-store-to-parameter.expect.md index 0825fbc44c3..6113a182303 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-expression-with-store-to-parameter.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-expression-with-store-to-parameter.expect.md @@ -22,7 +22,7 @@ function Component(props) { const $ = _c(2); const mutate = _temp; let x; - if ($[0] !== props) { + if (!Object.is($[0], props)) { x = makeObject(props); mutate(x); $[0] = props; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-param-assignment-pattern.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-param-assignment-pattern.expect.md index 2e2c403bf7b..b92192b3d40 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-param-assignment-pattern.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/function-param-assignment-pattern.expect.md @@ -22,7 +22,7 @@ function Component(t0, t1) { const $ = _c(5); const x = t0 === undefined ? "default" : t0; let t2; - if ($[0] !== t1) { + if (!Object.is($[0], t1)) { t2 = t1 === undefined ? [{}] : t1; $[0] = t1; $[1] = t2; @@ -31,7 +31,7 @@ function Component(t0, t1) { } const y = t2; let t3; - if ($[2] !== x || $[3] !== y) { + if (!Object.is($[2], x) || !Object.is($[3], y)) { t3 = [x, y]; $[2] = x; $[3] = y; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/arrow-function-expr-gating-test.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/arrow-function-expr-gating-test.expect.md index 298b4d59dfc..a02e6667f11 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/arrow-function-expr-gating-test.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/arrow-function-expr-gating-test.expect.md @@ -26,7 +26,7 @@ const ErrorView = isForgetEnabled_Fixtures() const $ = _c(2); const { error } = t0; let t1; - if ($[0] !== error) { + if (!Object.is($[0], error)) { t1 = ; $[0] = error; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/codegen-instrument-forget-gating-test.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/codegen-instrument-forget-gating-test.expect.md index 4f31c280775..79788d985c2 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/codegen-instrument-forget-gating-test.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/codegen-instrument-forget-gating-test.expect.md @@ -46,7 +46,7 @@ const Bar = isForgetEnabled_Fixtures() useRenderCounter("Bar", "/codegen-instrument-forget-gating-test.ts"); const $ = _c(2); let t0; - if ($[0] !== props.bar) { + if (!Object.is($[0], props.bar)) { t0 =
{props.bar}
; $[0] = props.bar; $[1] = t0; @@ -83,7 +83,7 @@ const Foo = isForgetEnabled_Fixtures() t1 = $[0]; } let t2; - if ($[1] !== t0) { + if (!Object.is($[1], t0)) { t2 = {t1}; $[1] = t0; $[2] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/component-syntax-ref-gating.flow.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/component-syntax-ref-gating.flow.expect.md index 410b6512446..f587d6f359a 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/component-syntax-ref-gating.flow.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/component-syntax-ref-gating.flow.expect.md @@ -30,7 +30,7 @@ const isForgetEnabled_Fixtures_result = isForgetEnabled_Fixtures(); function Foo_withRef_optimized(_$$empty_props_placeholder$$, ref) { const $ = _c(2); let t0; - if ($[0] !== ref) { + if (!Object.is($[0], ref)) { t0 = ; $[0] = ref; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/conflicting-gating-fn.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/conflicting-gating-fn.expect.md index ca6f518032b..258fc289233 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/conflicting-gating-fn.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/conflicting-gating-fn.expect.md @@ -37,7 +37,7 @@ export const Bar = _isForgetEnabled_Fixtures() "use forget"; const $ = _c(2); let t0; - if ($[0] !== props.bar) { + if (!Object.is($[0], props.bar)) { t0 =
{props.bar}
; $[0] = props.bar; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-test-export-default-function.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-test-export-default-function.expect.md index fbe3c554c19..37a9bff040b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-test-export-default-function.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-test-export-default-function.expect.md @@ -34,7 +34,7 @@ const Bar = isForgetEnabled_Fixtures() "use forget"; const $ = _c(2); let t0; - if ($[0] !== props.bar) { + if (!Object.is($[0], props.bar)) { t0 =
{props.bar}
; $[0] = props.bar; $[1] = t0; @@ -57,7 +57,7 @@ const Foo = isForgetEnabled_Fixtures() "use forget"; const $ = _c(2); let t0; - if ($[0] !== props.bar) { + if (!Object.is($[0], props.bar)) { t0 = {props.bar}; $[0] = props.bar; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-test-export-function-and-default.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-test-export-function-and-default.expect.md index 2a0d3a598ec..95e91288258 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-test-export-function-and-default.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-test-export-function-and-default.expect.md @@ -41,7 +41,7 @@ const Bar = isForgetEnabled_Fixtures() "use forget"; const $ = _c(2); let t0; - if ($[0] !== props.bar) { + if (!Object.is($[0], props.bar)) { t0 =
{props.bar}
; $[0] = props.bar; $[1] = t0; @@ -77,7 +77,7 @@ const Foo = isForgetEnabled_Fixtures() t1 = $[0]; } let t2; - if ($[1] !== t0) { + if (!Object.is($[1], t0)) { t2 = {t1}; $[1] = t0; $[2] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-test-export-function.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-test-export-function.expect.md index 9661fe3d2bf..01c2235e462 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-test-export-function.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-test-export-function.expect.md @@ -34,7 +34,7 @@ export const Bar = isForgetEnabled_Fixtures() "use forget"; const $ = _c(2); let t0; - if ($[0] !== props.bar) { + if (!Object.is($[0], props.bar)) { t0 =
{props.bar}
; $[0] = props.bar; $[1] = t0; @@ -57,7 +57,7 @@ export const Foo = isForgetEnabled_Fixtures() "use forget"; const $ = _c(2); let t0; - if ($[0] !== props.bar) { + if (!Object.is($[0], props.bar)) { t0 = {props.bar}; $[0] = props.bar; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-test.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-test.expect.md index 0cd67fd1d20..2782a24cf58 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-test.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-test.expect.md @@ -34,7 +34,7 @@ const Bar = isForgetEnabled_Fixtures() "use forget"; const $ = _c(2); let t0; - if ($[0] !== props.bar) { + if (!Object.is($[0], props.bar)) { t0 =
{props.bar}
; $[0] = props.bar; $[1] = t0; @@ -56,7 +56,7 @@ const Foo = isForgetEnabled_Fixtures() "use forget"; const $ = _c(2); let t0; - if ($[0] !== props.bar) { + if (!Object.is($[0], props.bar)) { t0 = {props.bar}; $[0] = props.bar; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-use-before-decl-ref.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-use-before-decl-ref.expect.md index 9730119c250..e5f352c25dc 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-use-before-decl-ref.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-use-before-decl-ref.expect.md @@ -31,7 +31,7 @@ const isForgetEnabled_Fixtures_result = isForgetEnabled_Fixtures(); function Foo_withRef_optimized(props, ref) { const $ = _c(3); let t0; - if ($[0] !== props || $[1] !== ref) { + if (!Object.is($[0], props) || !Object.is($[1], ref)) { t0 = ; $[0] = props; $[1] = ref; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-use-before-decl.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-use-before-decl.expect.md index 937af490f1d..a190e909112 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-use-before-decl.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-use-before-decl.expect.md @@ -34,7 +34,7 @@ function Foo_optimized(t0) { const $ = _c(3); const { prop1, prop2 } = t0; let t1; - if ($[0] !== prop1 || $[1] !== prop2) { + if (!Object.is($[0], prop1) || !Object.is($[1], prop2)) { t1 = ; $[0] = prop1; $[1] = prop2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-with-hoisted-type-reference.flow.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-with-hoisted-type-reference.flow.expect.md index f81680970c4..9d440e7e986 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-with-hoisted-type-reference.flow.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/gating-with-hoisted-type-reference.flow.expect.md @@ -33,7 +33,7 @@ const Component = isForgetEnabled_Fixtures() const $ = _c(2); const { value } = t0; let t1; - if ($[0] !== value) { + if (!Object.is($[0], value)) { t1 =
{value}
; $[0] = value; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/multi-arrow-expr-export-default-gating-test.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/multi-arrow-expr-export-default-gating-test.expect.md index 1300bc8982d..e616d936797 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/multi-arrow-expr-export-default-gating-test.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/multi-arrow-expr-export-default-gating-test.expect.md @@ -27,7 +27,7 @@ const ErrorView = isForgetEnabled_Fixtures() ? (error, _retry) => { const $ = _c(2); let t0; - if ($[0] !== error) { + if (!Object.is($[0], error)) { t0 = ; $[0] = error; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/multi-arrow-expr-export-gating-test.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/multi-arrow-expr-export-gating-test.expect.md index c8905939391..dd9bb06e0f8 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/multi-arrow-expr-export-gating-test.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/multi-arrow-expr-export-gating-test.expect.md @@ -32,7 +32,7 @@ const ErrorView = isForgetEnabled_Fixtures() ? (error, _retry) => { const $ = _c(2); let t0; - if ($[0] !== error) { + if (!Object.is($[0], error)) { t0 = ; $[0] = error; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/multi-arrow-expr-gating-test.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/multi-arrow-expr-gating-test.expect.md index 74be7ac5666..97489e13023 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/multi-arrow-expr-gating-test.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/gating/multi-arrow-expr-gating-test.expect.md @@ -34,7 +34,7 @@ const ErrorView = isForgetEnabled_Fixtures() ? (error, _retry) => { const $ = _c(2); let t0; - if ($[0] !== error) { + if (!Object.is($[0], error)) { t0 = ; $[0] = error; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/map-constructor.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/map-constructor.expect.md index 61fe33680fa..ee36f3b0a8d 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/map-constructor.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/map-constructor.expect.md @@ -32,10 +32,10 @@ function useHook(t0) { const $ = _c(7); const { el1, el2 } = t0; let s; - if ($[0] !== el1 || $[1] !== el2) { + if (!Object.is($[0], el1) || !Object.is($[1], el2)) { s = new Map(); let t1; - if ($[3] !== el1) { + if (!Object.is($[3], el1)) { t1 = makeArray(el1); $[3] = el1; $[4] = t1; @@ -44,7 +44,7 @@ function useHook(t0) { } s.set(el1, t1); let t2; - if ($[5] !== el2) { + if (!Object.is($[5], el2)) { t2 = makeArray(el2); $[5] = el2; $[6] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/repro-array-filter-capture-mutate-bug.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/repro-array-filter-capture-mutate-bug.expect.md index 091d050e640..5a1f9bd95b7 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/repro-array-filter-capture-mutate-bug.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/repro-array-filter-capture-mutate-bug.expect.md @@ -67,7 +67,7 @@ function Component(t0) { useIdentity(null); const derived = arr.filter(mutateAndReturn); let t1; - if ($[0] !== derived) { + if (!Object.is($[0], derived)) { t1 = derived.at(0); $[0] = derived; $[1] = t1; @@ -75,7 +75,7 @@ function Component(t0) { t1 = $[1]; } let t2; - if ($[2] !== derived) { + if (!Object.is($[2], derived)) { t2 = derived.at(-1); $[2] = derived; $[3] = t2; @@ -83,7 +83,7 @@ function Component(t0) { t2 = $[3]; } let t3; - if ($[4] !== t1 || $[5] !== t2) { + if (!Object.is($[4], t1) || !Object.is($[5], t2)) { t3 = ( {t1} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/repro-array-filter-known-nonmutate-Boolean.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/repro-array-filter-known-nonmutate-Boolean.expect.md index 0812e46c55b..cb7e1990e33 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/repro-array-filter-known-nonmutate-Boolean.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/repro-array-filter-known-nonmutate-Boolean.expect.md @@ -53,7 +53,7 @@ function Component(t0) { t2 = $[1]; } let t3; - if ($[2] !== value) { + if (!Object.is($[2], value)) { t3 = [t1, t2, { value }]; $[2] = value; $[3] = t3; @@ -63,7 +63,7 @@ function Component(t0) { const arr = t3; useIdentity(null); let t4; - if ($[4] !== arr) { + if (!Object.is($[4], arr)) { t4 = arr.filter(Boolean); $[4] = arr; $[5] = t4; @@ -72,7 +72,7 @@ function Component(t0) { } const derived = t4; let t5; - if ($[6] !== derived) { + if (!Object.is($[6], derived)) { t5 = derived.at(0); $[6] = derived; $[7] = t5; @@ -80,7 +80,7 @@ function Component(t0) { t5 = $[7]; } let t6; - if ($[8] !== derived) { + if (!Object.is($[8], derived)) { t6 = derived.at(-1); $[8] = derived; $[9] = t6; @@ -88,7 +88,7 @@ function Component(t0) { t6 = $[9]; } let t7; - if ($[10] !== t5 || $[11] !== t6) { + if (!Object.is($[10], t5) || !Object.is($[11], t6)) { t7 = ( {t5} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/repro-array-map-capture-mutate-bug.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/repro-array-map-capture-mutate-bug.expect.md index b6bd4709ca6..296ecd405fb 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/repro-array-map-capture-mutate-bug.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/repro-array-map-capture-mutate-bug.expect.md @@ -45,7 +45,7 @@ function Component(t0) { useIdentity(null); const derived = arr.map(mutateAndReturn); let t1; - if ($[0] !== derived) { + if (!Object.is($[0], derived)) { t1 = derived.at(0); $[0] = derived; $[1] = t1; @@ -53,7 +53,7 @@ function Component(t0) { t1 = $[1]; } let t2; - if ($[2] !== derived) { + if (!Object.is($[2], derived)) { t2 = derived.at(-1); $[2] = derived; $[3] = t2; @@ -61,7 +61,7 @@ function Component(t0) { t2 = $[3]; } let t3; - if ($[4] !== t1 || $[5] !== t2) { + if (!Object.is($[4], t1) || !Object.is($[5], t2)) { t3 = ( {t1} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/repro-array-map-known-mutate-shape.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/repro-array-map-known-mutate-shape.expect.md index 27735532326..809c41ce071 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/repro-array-map-known-mutate-shape.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/repro-array-map-known-mutate-shape.expect.md @@ -54,7 +54,7 @@ function Component(t0) { useIdentity(null); const derived = arr.map(Object.fromEntries); let t1; - if ($[0] !== derived) { + if (!Object.is($[0], derived)) { t1 = derived.at(0); $[0] = derived; $[1] = t1; @@ -62,7 +62,7 @@ function Component(t0) { t1 = $[1]; } let t2; - if ($[2] !== derived) { + if (!Object.is($[2], derived)) { t2 = derived.at(-1); $[2] = derived; $[3] = t2; @@ -70,7 +70,7 @@ function Component(t0) { t2 = $[3]; } let t3; - if ($[4] !== t1 || $[5] !== t2) { + if (!Object.is($[4], t1) || !Object.is($[5], t2)) { t3 = ( {t1} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/set-add-mutate.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/set-add-mutate.expect.md index cb829ffea21..e003d53641e 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/set-add-mutate.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/set-add-mutate.expect.md @@ -36,14 +36,14 @@ function useHook(t0) { const $ = _c(5); const { el1, el2 } = t0; let s; - if ($[0] !== el1 || $[1] !== el2) { + if (!Object.is($[0], el1) || !Object.is($[1], el2)) { s = new Set(); const arr = makeArray(el1); s.add(arr); arr.push(el2); let t1; - if ($[3] !== el2) { + if (!Object.is($[3], el2)) { t1 = makeArray(el2); $[3] = el2; $[4] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/set-constructor-arg.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/set-constructor-arg.expect.md index 245d11243a9..c2e6bd817b3 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/set-constructor-arg.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/set-constructor-arg.expect.md @@ -47,7 +47,7 @@ function useFoo(t0) { t1 = $[0]; } let s1; - if ($[1] !== propArr[0]) { + if (!Object.is($[1], propArr[0])) { s1 = new Set(t1); s1.add(propArr[0]); $[1] = propArr[0]; @@ -57,7 +57,7 @@ function useFoo(t0) { } let s2; let s3; - if ($[3] !== propArr[1] || $[4] !== propArr[2]) { + if (!Object.is($[3], propArr[1]) || !Object.is($[4], propArr[2])) { s2 = new Set(MODULE_LOCAL.values()); s2.add(propArr[1]); s3 = new Set(s2.values()); @@ -71,7 +71,7 @@ function useFoo(t0) { s3 = $[6]; } let s4; - if ($[7] !== propArr[3] || $[8] !== s3) { + if (!Object.is($[7], propArr[3]) || !Object.is($[8], s3)) { s4 = new Set(s3); s4.add(propArr[3]); $[7] = propArr[3]; @@ -81,7 +81,12 @@ function useFoo(t0) { s4 = $[9]; } let t2; - if ($[10] !== s1 || $[11] !== s2 || $[12] !== s3 || $[13] !== s4) { + if ( + !Object.is($[10], s1) || + !Object.is($[11], s2) || + !Object.is($[12], s3) || + !Object.is($[13], s4) + ) { t2 = [s1, s2, s3, s4]; $[10] = s1; $[11] = s2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/set-constructor.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/set-constructor.expect.md index 371e98089f5..2ce7abdcd04 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/set-constructor.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/set-constructor.expect.md @@ -32,10 +32,10 @@ function useHook(t0) { const $ = _c(7); const { el1, el2 } = t0; let s; - if ($[0] !== el1 || $[1] !== el2) { + if (!Object.is($[0], el1) || !Object.is($[1], el2)) { s = new Set(); let t1; - if ($[3] !== el1) { + if (!Object.is($[3], el1)) { t1 = makeArray(el1); $[3] = el1; $[4] = t1; @@ -44,7 +44,7 @@ function useHook(t0) { } s.add(t1); let t2; - if ($[5] !== el2) { + if (!Object.is($[5], el2)) { t2 = makeArray(el2); $[5] = el2; $[6] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/set-copy-constructor-mutate.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/set-copy-constructor-mutate.expect.md index 78bac9ae4f5..caa4132f9f3 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/set-copy-constructor-mutate.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/set-copy-constructor-mutate.expect.md @@ -38,7 +38,7 @@ function useFoo(t0) { const { propArr } = t0; let s1; let s2; - if ($[0] !== propArr[0]) { + if (!Object.is($[0], propArr[0])) { s1 = new Set([1, 2, 3]); s1.add(makeArray(propArr[0])); s2 = new Set(s1); @@ -52,7 +52,7 @@ function useFoo(t0) { s2 = $[2]; } let t1; - if ($[3] !== s1 || $[4] !== s2) { + if (!Object.is($[3], s1) || !Object.is($[4], s2)) { t1 = [s1, s2]; $[3] = s1; $[4] = s2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/set-foreach-mutate.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/set-foreach-mutate.expect.md index 8c66b1f6788..e97317757bc 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/set-foreach-mutate.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/global-types/set-foreach-mutate.expect.md @@ -32,7 +32,7 @@ function Component(t0) { useIdentity(); const derived = new Set(arr).forEach(mutateAndReturn); let t1; - if ($[0] !== derived) { + if (!Object.is($[0], derived)) { t1 = {[...derived]}; $[0] = derived; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/globals-dont-resolve-local-useState.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/globals-dont-resolve-local-useState.expect.md index be7f3f1bd28..a4d3236244b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/globals-dont-resolve-local-useState.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/globals-dont-resolve-local-useState.expect.md @@ -34,7 +34,7 @@ function useState(value) { const $ = _c(2); const [state, setState] = _useState(value); let t0; - if ($[0] !== state) { + if (!Object.is($[0], state)) { t0 = [state, setState]; $[0] = state; $[1] = t0; @@ -48,7 +48,7 @@ function Component() { const $ = _c(5); const [state, setState] = useState("hello"); let t0; - if ($[0] !== setState) { + if (!Object.is($[0], setState)) { t0 = () => setState("goodbye"); $[0] = setState; $[1] = t0; @@ -56,7 +56,7 @@ function Component() { t0 = $[1]; } let t1; - if ($[2] !== state || $[3] !== t0) { + if (!Object.is($[2], state) || !Object.is($[3], t0)) { t1 =
{state}
; $[2] = state; $[3] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisted-context-variable-in-outlined-fn.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisted-context-variable-in-outlined-fn.expect.md index cbcb4486d92..992de0c3eab 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisted-context-variable-in-outlined-fn.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisted-context-variable-in-outlined-fn.expect.md @@ -41,7 +41,7 @@ function useFoo() { const $ = _c(4); const makeCb = useIdentity(_temp); let t0; - if ($[0] !== makeCb) { + if (!Object.is($[0], makeCb)) { t0 = makeCb(); $[0] = makeCb; $[1] = t0; @@ -49,7 +49,7 @@ function useFoo() { t0 = $[1]; } let t1; - if ($[2] !== t0) { + if (!Object.is($[2], t0)) { t1 = ; $[2] = t0; $[3] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisted-function-declaration.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisted-function-declaration.expect.md index 84b7bd087b0..dfeb8eb5dea 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisted-function-declaration.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisted-function-declaration.expect.md @@ -31,7 +31,7 @@ import { c as _c } from "react/compiler-runtime"; function component(a) { const $ = _c(2); let t; - if ($[0] !== a) { + if (!Object.is($[0], a)) { t = { a }; x(t); function x(p) { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-functionexpr-conditional-dep.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-functionexpr-conditional-dep.expect.md index 4c032f697f0..e18f1d57cfe 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-functionexpr-conditional-dep.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-functionexpr-conditional-dep.expect.md @@ -58,7 +58,7 @@ function Component(t0) { const $ = _c(3); const { obj, isObjNull } = t0; let t1; - if ($[0] !== isObjNull || $[1] !== obj) { + if (!Object.is($[0], isObjNull) || !Object.is($[1], obj)) { const callback = () => { if (!isObjNull) { return obj.prop; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-let-declaration-without-initialization.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-let-declaration-without-initialization.expect.md index a67bd73fa82..8690f839c97 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-let-declaration-without-initialization.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-let-declaration-without-initialization.expect.md @@ -34,7 +34,7 @@ function useHook(t0) { const $ = _c(2); const { cond } = t0; let t1; - if ($[0] !== cond) { + if (!Object.is($[0], cond)) { const getX = () => x; let x; if (cond) { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-nested-const-declaration-2.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-nested-const-declaration-2.expect.md index b586131445f..a9d428f2596 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-nested-const-declaration-2.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-nested-const-declaration-2.expect.md @@ -29,7 +29,7 @@ import { c as _c } from "react/compiler-runtime"; function hoisting(cond) { const $ = _c(2); let items; - if ($[0] !== cond) { + if (!Object.is($[0], cond)) { items = []; if (cond) { const foo = () => { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-nested-let-declaration-2.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-nested-let-declaration-2.expect.md index ec9c7298408..2ad22a461e1 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-nested-let-declaration-2.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-nested-let-declaration-2.expect.md @@ -29,7 +29,7 @@ import { c as _c } from "react/compiler-runtime"; function hoisting(cond) { const $ = _c(2); let items; - if ($[0] !== cond) { + if (!Object.is($[0], cond)) { items = []; if (cond) { const foo = () => { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-reassigned-let-declaration.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-reassigned-let-declaration.expect.md index f393597719d..e6d6a8702b2 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-reassigned-let-declaration.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-reassigned-let-declaration.expect.md @@ -34,7 +34,7 @@ function useHook(t0) { const $ = _c(2); const { cond } = t0; let t1; - if ($[0] !== cond) { + if (!Object.is($[0], cond)) { const getX = () => x; let x = CONST_NUMBER0; if (cond) { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-reassigned-twice-let-declaration.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-reassigned-twice-let-declaration.expect.md index 7d6461e3a9f..a1c82decabd 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-reassigned-twice-let-declaration.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-reassigned-twice-let-declaration.expect.md @@ -35,7 +35,7 @@ function useHook(t0) { const $ = _c(2); const { cond } = t0; let t1; - if ($[0] !== cond) { + if (!Object.is($[0], cond)) { const getX = () => x; let x = CONST_NUMBER0; if (cond) { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-recursive-call.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-recursive-call.expect.md index 61fbfc5efec..821523f4b23 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-recursive-call.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-recursive-call.expect.md @@ -29,7 +29,7 @@ function Foo(t0) { const $ = _c(2); const { value } = t0; let t1; - if ($[0] !== value) { + if (!Object.is($[0], value)) { const factorial = (x) => { if (x <= 1) { return 1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-setstate-captured-indirectly-jsx.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-setstate-captured-indirectly-jsx.expect.md index 9397518d2d1..ab25861e8a4 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-setstate-captured-indirectly-jsx.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hoisting-setstate-captured-indirectly-jsx.expect.md @@ -35,7 +35,7 @@ function useFoo() { const [, t0] = useState(); const setState = t0; let t1; - if ($[0] !== setState) { + if (!Object.is($[0], setState)) { t1 = () => { setState(DISABLED_FORM); }; @@ -47,7 +47,7 @@ function useFoo() { setState; const handleLogout = t1; let t2; - if ($[2] !== handleLogout) { + if (!Object.is($[2], handleLogout)) { const getComponent = () => handleLogout()} />; t2 = getComponent(); $[2] = handleLogout; @@ -56,7 +56,7 @@ function useFoo() { t2 = $[3]; } let t3; - if ($[4] !== onClick || $[5] !== t2) { + if (!Object.is($[4], onClick) || !Object.is($[5], t2)) { t3 = [t2, onClick]; $[4] = onClick; $[5] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/holey-array-expr.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/holey-array-expr.expect.md index d31fa0b1cc9..e3fa7bf987e 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/holey-array-expr.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/holey-array-expr.expect.md @@ -26,7 +26,7 @@ import { CONST_STRING0 } from "shared-runtime"; function t(props) { const $ = _c(2); let t0; - if ($[0] !== props) { + if (!Object.is($[0], props)) { t0 = [, CONST_STRING0, props]; $[0] = props; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hook-call-freezes-captured-memberexpr.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hook-call-freezes-captured-memberexpr.expect.md index 957919516d0..b2828409894 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hook-call-freezes-captured-memberexpr.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hook-call-freezes-captured-memberexpr.expect.md @@ -36,7 +36,7 @@ function Foo(t0) { const $ = _c(9); const { val1 } = t0; let t1; - if ($[0] !== val1) { + if (!Object.is($[0], val1)) { t1 = { inner: val1 }; $[0] = val1; $[1] = t1; @@ -45,7 +45,7 @@ function Foo(t0) { } const x = t1; let t2; - if ($[2] !== x.inner) { + if (!Object.is($[2], x.inner)) { t2 = () => x.inner; $[2] = x.inner; $[3] = t2; @@ -54,7 +54,7 @@ function Foo(t0) { } const cb = useIdentity(t2); let t3; - if ($[4] !== x) { + if (!Object.is($[4], x)) { t3 = identity(x); $[4] = x; $[5] = t3; @@ -63,7 +63,7 @@ function Foo(t0) { } const copy = t3; let t4; - if ($[6] !== cb || $[7] !== copy) { + if (!Object.is($[6], cb) || !Object.is($[7], copy)) { t4 = ; $[6] = cb; $[7] = copy; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hook-call.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hook-call.expect.md index cd01f8ad98a..204d4f1662f 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hook-call.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hook-call.expect.md @@ -39,7 +39,7 @@ function Component(props) { const y = useFreeze(x); foo(y, x); let t1; - if ($[1] !== y) { + if (!Object.is($[1], y)) { t1 = ( {x} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hook-declaration-basic.flow.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hook-declaration-basic.flow.expect.md index d23e808983d..5fc665d87e9 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hook-declaration-basic.flow.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hook-declaration-basic.flow.expect.md @@ -21,7 +21,7 @@ import { c as _c } from "react/compiler-runtime"; export default function useFoo(bar) { const $ = _c(2); let t0; - if ($[0] !== bar) { + if (!Object.is($[0], bar)) { t0 = [bar]; $[0] = bar; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hook-noAlias.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hook-noAlias.expect.md index 329d57a0351..76fd1dd4bc7 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hook-noAlias.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/hook-noAlias.expect.md @@ -29,7 +29,7 @@ import { useNoAlias } from "shared-runtime"; function Component(props) { const $ = _c(5); let t0; - if ($[0] !== props.a) { + if (!Object.is($[0], props.a)) { t0 = { a: props.a }; $[0] = props.a; $[1] = t0; @@ -41,7 +41,7 @@ function Component(props) { console.log(props); }, [props.a]); let t1; - if ($[2] !== item || $[3] !== x) { + if (!Object.is($[2], item) || !Object.is($[3], x)) { t1 = [x, item]; $[2] = item; $[3] = x; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/idx-method-no-outlining-wildcard.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/idx-method-no-outlining-wildcard.expect.md index e004ef246ab..340b1053a0d 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/idx-method-no-outlining-wildcard.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/idx-method-no-outlining-wildcard.expect.md @@ -36,7 +36,7 @@ import { c as _c } from "react/compiler-runtime"; // @customMacros:"idx.*.b" function Component(props) { const $ = _c(16); let t0; - if ($[0] !== props) { + if (!Object.is($[0], props)) { t0 = idx(props, (_) => _.group.label); $[0] = props; $[1] = t0; @@ -45,7 +45,7 @@ function Component(props) { } const groupName1 = t0; let t1; - if ($[2] !== props) { + if (!Object.is($[2], props)) { t1 = idx.a(props, (__0) => __0.group.label); $[2] = props; $[3] = t1; @@ -54,7 +54,7 @@ function Component(props) { } const groupName2 = t1; let t2; - if ($[4] !== props) { + if (!Object.is($[4], props)) { t2 = idx.a.b(props, (__1) => __1.group.label); $[4] = props; $[5] = t2; @@ -63,7 +63,7 @@ function Component(props) { } const groupName3 = t2; let t3; - if ($[6] !== props) { + if (!Object.is($[6], props)) { t3 = idx.hello_world.b(props, (__2) => __2.group.label); $[6] = props; $[7] = t3; @@ -72,7 +72,7 @@ function Component(props) { } const groupName4 = t3; let t4; - if ($[8] !== props) { + if (!Object.is($[8], props)) { t4 = idx.hello_world.b.c(props, (__3) => __3.group.label); $[8] = props; $[9] = t4; @@ -82,11 +82,11 @@ function Component(props) { const groupName5 = t4; let t5; if ( - $[10] !== groupName1 || - $[11] !== groupName2 || - $[12] !== groupName3 || - $[13] !== groupName4 || - $[14] !== groupName5 + !Object.is($[10], groupName1) || + !Object.is($[11], groupName2) || + !Object.is($[12], groupName3) || + !Object.is($[13], groupName4) || + !Object.is($[14], groupName5) ) { t5 = (
diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/idx-method-no-outlining.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/idx-method-no-outlining.expect.md index e98fb191ce7..a8b67116867 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/idx-method-no-outlining.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/idx-method-no-outlining.expect.md @@ -30,7 +30,7 @@ import { c as _c } from "react/compiler-runtime"; // @customMacros:"idx.a" function Component(props) { const $ = _c(10); let t0; - if ($[0] !== props) { + if (!Object.is($[0], props)) { t0 = idx(props, (_) => _.group.label); $[0] = props; $[1] = t0; @@ -39,7 +39,7 @@ function Component(props) { } const groupName1 = t0; let t1; - if ($[2] !== props) { + if (!Object.is($[2], props)) { t1 = idx.a(props, (__0) => __0.group.label); $[2] = props; $[3] = t1; @@ -48,7 +48,7 @@ function Component(props) { } const groupName2 = t1; let t2; - if ($[4] !== props) { + if (!Object.is($[4], props)) { t2 = idx.a.b(props, (__1) => __1.group.label); $[4] = props; $[5] = t2; @@ -57,7 +57,11 @@ function Component(props) { } const groupName3 = t2; let t3; - if ($[6] !== groupName1 || $[7] !== groupName2 || $[8] !== groupName3) { + if ( + !Object.is($[6], groupName1) || + !Object.is($[7], groupName2) || + !Object.is($[8], groupName3) + ) { t3 = (
{groupName1} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/idx-no-outlining.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/idx-no-outlining.expect.md index aec4231c8dd..088b10640c3 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/idx-no-outlining.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/idx-no-outlining.expect.md @@ -27,7 +27,7 @@ function Component(props) { var _ref2; const $ = _c(4); let t0; - if ($[0] !== props) { + if (!Object.is($[0], props)) { var _ref; t0 = (_ref = props) != null @@ -42,7 +42,7 @@ function Component(props) { } const groupName = t0; let t1; - if ($[2] !== groupName) { + if (!Object.is($[2], groupName)) { t1 =
{groupName}
; $[2] = groupName; $[3] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/ignore-use-no-forget.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/ignore-use-no-forget.expect.md index b73d7fd31fd..242af4648d9 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/ignore-use-no-forget.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/ignore-use-no-forget.expect.md @@ -24,7 +24,7 @@ function Component(prop) { "use no forget"; const $ = _c(4); let t0; - if ($[0] !== prop.x) { + if (!Object.is($[0], prop.x)) { t0 = prop.x.toFixed(); $[0] = prop.x; $[1] = t0; @@ -33,7 +33,7 @@ function Component(prop) { } const result = t0; let t1; - if ($[2] !== result) { + if (!Object.is($[2], result)) { t1 =
{result}
; $[2] = result; $[3] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/iife-return-modified-later-phi.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/iife-return-modified-later-phi.expect.md index 22f967883b0..663d5c365e3 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/iife-return-modified-later-phi.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/iife-return-modified-later-phi.expect.md @@ -28,7 +28,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(3); let items; - if ($[0] !== props.a || $[1] !== props.cond) { + if (!Object.is($[0], props.a) || !Object.is($[1], props.cond)) { let t0; if (props.cond) { t0 = []; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/iife-return-modified-later.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/iife-return-modified-later.expect.md index 76fc6e86aba..084f0033d47 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/iife-return-modified-later.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/iife-return-modified-later.expect.md @@ -24,7 +24,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(2); let items; - if ($[0] !== props.a) { + if (!Object.is($[0], props.a)) { items = []; items.push(props.a); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/immutable-hooks.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/immutable-hooks.expect.md index 20d5af7045a..f9daf89368c 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/immutable-hooks.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/immutable-hooks.expect.md @@ -33,7 +33,7 @@ function Component(props) { bar(x, y); let t1; - if ($[1] !== y) { + if (!Object.is($[1], y)) { t1 = [x, y]; $[1] = y; $[2] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/import-as-local.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/import-as-local.expect.md index afbb1bdfe78..d5a087f7077 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/import-as-local.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/import-as-local.expect.md @@ -77,7 +77,7 @@ export function useCustomHook(src) { const destroyed = useRef(false); const getItem = _temp; let t1; - if ($[1] !== src) { + if (!Object.is($[1], src)) { t1 = () => { if (destroyed.current) { return; @@ -92,7 +92,7 @@ export function useCustomHook(src) { } const getItemEvent = useEffectEvent(t1); let t2; - if ($[3] !== getItemEvent) { + if (!Object.is($[3], getItemEvent)) { t2 = () => { destroyed.current = false; getItemEvent(); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/independent-across-if.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/independent-across-if.expect.md index dad9f3c24f9..1707b782f3a 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/independent-across-if.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/independent-across-if.expect.md @@ -60,7 +60,11 @@ function Component(props) { const $ = _c(8); let a; let b; - if ($[0] !== props.a || $[1] !== props.b || $[2] !== props.c) { + if ( + !Object.is($[0], props.a) || + !Object.is($[1], props.b) || + !Object.is($[2], props.c) + ) { a = compute(props.a); b = compute(props.b); if (props.c) { @@ -77,7 +81,7 @@ function Component(props) { b = $[4]; } let t0; - if ($[5] !== a || $[6] !== b) { + if (!Object.is($[5], a) || !Object.is($[6], b)) { t0 = ; $[5] = a; $[6] = b; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/independent.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/independent.expect.md index ac8a952e78d..1861b5bf3ae 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/independent.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/independent.expect.md @@ -40,7 +40,7 @@ import { c as _c } from "react/compiler-runtime"; /** function Component(props) { const $ = _c(7); let t0; - if ($[0] !== props.a) { + if (!Object.is($[0], props.a)) { t0 = compute(props.a); $[0] = props.a; $[1] = t0; @@ -49,7 +49,7 @@ function Component(props) { } const a = t0; let t1; - if ($[2] !== props.b) { + if (!Object.is($[2], props.b)) { t1 = compute(props.b); $[2] = props.b; $[3] = t1; @@ -58,7 +58,7 @@ function Component(props) { } const b = t1; let t2; - if ($[4] !== a || $[5] !== b) { + if (!Object.is($[4], a) || !Object.is($[5], b)) { t2 = ; $[4] = a; $[5] = b; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/independently-memoize-object-property.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/independently-memoize-object-property.expect.md index 9d4f1c427b3..74d8aeff5e6 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/independently-memoize-object-property.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/independently-memoize-object-property.expect.md @@ -25,10 +25,10 @@ import { c as _c } from "react/compiler-runtime"; function foo(a, b, c) { const $ = _c(7); let x; - if ($[0] !== a || $[1] !== b || $[2] !== c) { + if (!Object.is($[0], a) || !Object.is($[1], b) || !Object.is($[2], c)) { x = { a }; let t0; - if ($[4] !== b || $[5] !== c) { + if (!Object.is($[4], b) || !Object.is($[5], c)) { t0 = [b, c]; $[4] = b; $[5] = c; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-compile-hooks-with-multiple-params.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-compile-hooks-with-multiple-params.expect.md index 129d3a72e9e..c9cd07e5cc9 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-compile-hooks-with-multiple-params.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-compile-hooks-with-multiple-params.expect.md @@ -31,7 +31,7 @@ function useFoo(value1, value2) { const t0 = useNoAlias(value1 + value2); let t1; - if ($[0] !== t0) { + if (!Object.is($[0], t0)) { t1 = { value: t0 }; $[0] = t0; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-functions-component-with-hook-call.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-functions-component-with-hook-call.expect.md index d92f1a6c450..627f729b5b2 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-functions-component-with-hook-call.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-functions-component-with-hook-call.expect.md @@ -18,7 +18,7 @@ function Component(props) { const $ = _c(2); const [state] = useState(null); let t0; - if ($[0] !== state) { + if (!Object.is($[0], state)) { t0 = [state]; $[0] = state; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-functions-component-with-ref-arg.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-functions-component-with-ref-arg.expect.md index 5f3da3fd8e4..04e35fba526 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-functions-component-with-ref-arg.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-functions-component-with-ref-arg.expect.md @@ -23,7 +23,7 @@ import { c as _c } from "react/compiler-runtime"; // @compilationMode:"infer" function Foo(t0, ref) { const $ = _c(2); let t1; - if ($[0] !== ref) { + if (!Object.is($[0], ref)) { t1 =
; $[0] = ref; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-functions-hook-with-hook-call.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-functions-hook-with-hook-call.expect.md index a94055469af..a5356ce76cf 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-functions-hook-with-hook-call.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-functions-hook-with-hook-call.expect.md @@ -18,7 +18,7 @@ function useStateValue(props) { const $ = _c(2); const [state] = useState(null); let t0; - if ($[0] !== state) { + if (!Object.is($[0], state)) { t0 = [state]; $[0] = state; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-global-object.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-global-object.expect.md index 319777120f3..2b585308583 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-global-object.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-global-object.expect.md @@ -37,7 +37,7 @@ import { identity, sum } from "shared-runtime"; function Component(props) { const $ = _c(4); let t0; - if ($[0] !== props.b) { + if (!Object.is($[0], props.b)) { t0 = identity(props.b); $[0] = props.b; $[1] = t0; @@ -51,7 +51,7 @@ function Component(props) { sum(primitiveVal1, Infinity, primitiveVal3); let t1; - if ($[2] !== primitiveVal1) { + if (!Object.is($[2], primitiveVal1)) { t1 = { primitiveVal1, primitiveVal2: Infinity, primitiveVal3 }; $[2] = primitiveVal1; $[3] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-sequential-optional-chain-nonnull.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-sequential-optional-chain-nonnull.expect.md index f415c20528b..8ff37bbd4f3 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-sequential-optional-chain-nonnull.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/infer-sequential-optional-chain-nonnull.expect.md @@ -33,7 +33,7 @@ function useFoo(t0) { const $ = _c(2); const { a } = t0; let x; - if ($[0] !== a.b.c.d.e) { + if (!Object.is($[0], a.b.c.d.e)) { x = []; x.push(a?.b.c?.d.e); x.push(a.b?.c.d?.e); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/array-map-named-callback-cross-context.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/array-map-named-callback-cross-context.expect.md index c1a6dfb3eae..91bf01f560a 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/array-map-named-callback-cross-context.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/array-map-named-callback-cross-context.expect.md @@ -60,7 +60,7 @@ function useFoo(t0) { const $ = _c(13); const { arr1, arr2 } = t0; let t1; - if ($[0] !== arr1[0]) { + if (!Object.is($[0], arr1[0])) { t1 = (e) => arr1[0].value + e.value; $[0] = arr1[0]; $[1] = t1; @@ -69,7 +69,7 @@ function useFoo(t0) { } const cb1 = t1; let t2; - if ($[2] !== arr1 || $[3] !== cb1) { + if (!Object.is($[2], arr1) || !Object.is($[3], cb1)) { t2 = () => arr1.map(cb1); $[2] = arr1; $[3] = cb1; @@ -79,7 +79,7 @@ function useFoo(t0) { } const getArrMap1 = t2; let t3; - if ($[5] !== arr2) { + if (!Object.is($[5], arr2)) { t3 = (e_0) => arr2[0].value + e_0.value; $[5] = arr2; $[6] = t3; @@ -88,7 +88,7 @@ function useFoo(t0) { } const cb2 = t3; let t4; - if ($[7] !== arr1 || $[8] !== cb2) { + if (!Object.is($[7], arr1) || !Object.is($[8], cb2)) { t4 = () => arr1.map(cb2); $[7] = arr1; $[8] = cb2; @@ -98,7 +98,7 @@ function useFoo(t0) { } const getArrMap2 = t4; let t5; - if ($[10] !== getArrMap1 || $[11] !== getArrMap2) { + if (!Object.is($[10], getArrMap1) || !Object.is($[11], getArrMap2)) { t5 = ( arr1[0].value + e.value; $[0] = arr1[0]; $[1] = t1; @@ -50,7 +50,7 @@ function useFoo(t0) { } const cb1 = t1; let t2; - if ($[2] !== arr1 || $[3] !== cb1) { + if (!Object.is($[2], arr1) || !Object.is($[3], cb1)) { t2 = arr1.map(cb1); $[2] = arr1; $[3] = cb1; @@ -60,7 +60,7 @@ function useFoo(t0) { } const x = t2; let t3; - if ($[5] !== arr2) { + if (!Object.is($[5], arr2)) { t3 = (e_0) => arr2[0].value + e_0.value; $[5] = arr2; $[6] = t3; @@ -69,7 +69,7 @@ function useFoo(t0) { } const cb2 = t3; let t4; - if ($[7] !== arr1 || $[8] !== cb2) { + if (!Object.is($[7], arr1) || !Object.is($[8], cb2)) { t4 = arr1.map(cb2); $[7] = arr1; $[8] = cb2; @@ -79,7 +79,7 @@ function useFoo(t0) { } const y = t4; let t5; - if ($[10] !== x || $[11] !== y) { + if (!Object.is($[10], x) || !Object.is($[11], y)) { t5 = [x, y]; $[10] = x; $[11] = y; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/array-map-named-chained-callbacks.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/array-map-named-chained-callbacks.expect.md index 96ec12d5eab..3160534d79f 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/array-map-named-chained-callbacks.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/array-map-named-chained-callbacks.expect.md @@ -45,7 +45,7 @@ function useFoo(t0) { const $ = _c(13); const { arr1, arr2 } = t0; let t1; - if ($[0] !== arr1[0]) { + if (!Object.is($[0], arr1[0])) { const getVal1 = () => arr1[0].value; t1 = (e) => getVal1() + e.value; $[0] = arr1[0]; @@ -55,7 +55,7 @@ function useFoo(t0) { } const cb1 = t1; let t2; - if ($[2] !== arr1 || $[3] !== cb1) { + if (!Object.is($[2], arr1) || !Object.is($[3], cb1)) { t2 = arr1.map(cb1); $[2] = arr1; $[3] = cb1; @@ -65,7 +65,7 @@ function useFoo(t0) { } const x = t2; let t3; - if ($[5] !== arr2) { + if (!Object.is($[5], arr2)) { const getVal2 = () => arr2[0].value; t3 = (e_0) => getVal2() + e_0.value; $[5] = arr2; @@ -75,7 +75,7 @@ function useFoo(t0) { } const cb2 = t3; let t4; - if ($[7] !== arr1 || $[8] !== cb2) { + if (!Object.is($[7], arr1) || !Object.is($[8], cb2)) { t4 = arr1.map(cb2); $[7] = arr1; $[8] = cb2; @@ -85,7 +85,7 @@ function useFoo(t0) { } const y = t4; let t5; - if ($[10] !== x || $[11] !== y) { + if (!Object.is($[10], x) || !Object.is($[11], y)) { t5 = [x, y]; $[10] = x; $[11] = y; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/array-map-simple.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/array-map-simple.expect.md index 5eb97aa1bf0..49fe637ea9f 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/array-map-simple.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/array-map-simple.expect.md @@ -47,9 +47,9 @@ function useFoo(t0) { const $ = _c(12); const { arr1, arr2 } = t0; let t1; - if ($[0] !== arr1) { + if (!Object.is($[0], arr1)) { let t2; - if ($[2] !== arr1[0]) { + if (!Object.is($[2], arr1[0])) { t2 = (e) => arr1[0].value + e.value; $[2] = arr1[0]; $[3] = t2; @@ -64,9 +64,9 @@ function useFoo(t0) { } const x = t1; let t2; - if ($[4] !== arr1 || $[5] !== arr2) { + if (!Object.is($[4], arr1) || !Object.is($[5], arr2)) { let t3; - if ($[7] !== arr2) { + if (!Object.is($[7], arr2)) { t3 = (e_0) => arr2[0].value + e_0.value; $[7] = arr2; $[8] = t3; @@ -82,7 +82,7 @@ function useFoo(t0) { } const y = t2; let t3; - if ($[9] !== x || $[10] !== y) { + if (!Object.is($[9], x) || !Object.is($[10], y)) { t3 = [x, y]; $[9] = x; $[10] = y; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/conditional-call-chain.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/conditional-call-chain.expect.md index 4622beeb0eb..5a3c16325b7 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/conditional-call-chain.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/conditional-call-chain.expect.md @@ -45,7 +45,7 @@ function Component(t0) { const $ = _c(7); const { a, b } = t0; let t1; - if ($[0] !== a.value) { + if (!Object.is($[0], a.value)) { t1 = () => { console.log(a.value); }; @@ -56,7 +56,7 @@ function Component(t0) { } const logA = t1; let t2; - if ($[2] !== b.value) { + if (!Object.is($[2], b.value)) { t2 = () => { console.log(b.value); }; @@ -69,7 +69,7 @@ function Component(t0) { const hasLogged = useRef(false); let t3; - if ($[4] !== logA || $[5] !== logB) { + if (!Object.is($[4], logA) || !Object.is($[5], logB)) { const log = () => { if (!hasLogged.current) { logA(); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/conditional-call.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/conditional-call.expect.md index 0080fd04689..0fcd4c3a638 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/conditional-call.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/conditional-call.expect.md @@ -44,7 +44,7 @@ function useMakeCallback(t0) { const { obj } = t0; const [state, setState] = useState(0); let t1; - if ($[0] !== obj.value) { + if (!Object.is($[0], obj.value)) { t1 = () => { if (obj.value !== 0) { setState(obj.value); @@ -62,7 +62,7 @@ function useMakeCallback(t0) { cb(); } let t2; - if ($[2] !== cb) { + if (!Object.is($[2], cb)) { t2 = { cb }; $[2] = cb; $[3] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/conditionally-return-fn.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/conditionally-return-fn.expect.md index 77b62bc8c24..062172d9a5f 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/conditionally-return-fn.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/conditionally-return-fn.expect.md @@ -51,7 +51,7 @@ function useMakeCallback(t0) { const $ = _c(3); const { obj, shouldMakeCb, setState } = t0; let t1; - if ($[0] !== obj.value || $[1] !== setState) { + if (!Object.is($[0], obj.value) || !Object.is($[1], setState)) { t1 = () => setState(obj.value); $[0] = obj.value; $[1] = setState; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/direct-call.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/direct-call.expect.md index 2f31be1ffe1..7d52aabc46f 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/direct-call.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/direct-call.expect.md @@ -34,7 +34,7 @@ function useMakeCallback(t0) { const { obj } = t0; const [state, setState] = useState(0); let t1; - if ($[0] !== obj.value || $[1] !== state) { + if (!Object.is($[0], obj.value) || !Object.is($[1], state)) { t1 = () => { if (obj.value !== state) { setState(obj.value); @@ -51,7 +51,7 @@ function useMakeCallback(t0) { useIdentity(); cb(); let t2; - if ($[3] !== cb) { + if (!Object.is($[3], cb)) { t2 = [cb]; $[3] = cb; $[4] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/function-with-conditional-callsite-in-another-function.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/function-with-conditional-callsite-in-another-function.expect.md index 8301912b024..500cc98e38f 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/function-with-conditional-callsite-in-another-function.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/function-with-conditional-callsite-in-another-function.expect.md @@ -89,7 +89,7 @@ function useMakeCallback(t0) { const $ = _c(6); const { obj, cond, setState } = t0; let t1; - if ($[0] !== obj.value || $[1] !== setState) { + if (!Object.is($[0], obj.value) || !Object.is($[1], setState)) { t1 = () => setState(obj.value); $[0] = obj.value; $[1] = setState; @@ -99,7 +99,7 @@ function useMakeCallback(t0) { } const cb = t1; let t2; - if ($[3] !== cb || $[4] !== cond) { + if (!Object.is($[3], cb) || !Object.is($[4], cond)) { t2 = () => (cond ? cb() : undefined); $[3] = cb; $[4] = cond; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/hook-call.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/hook-call.expect.md index ab8326a2286..08e6c3871ee 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/hook-call.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/hook-call.expect.md @@ -48,7 +48,7 @@ function useMakeCallback(t0) { const $ = _c(3); const { obj, setState } = t0; let t1; - if ($[0] !== obj.value || $[1] !== setState) { + if (!Object.is($[0], obj.value) || !Object.is($[1], setState)) { t1 = () => setState(obj.value); $[0] = obj.value; $[1] = setState; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/jsx-and-passed.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/jsx-and-passed.expect.md index 688901a4e21..2ca42f7a80b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/jsx-and-passed.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/jsx-and-passed.expect.md @@ -32,7 +32,7 @@ function useFoo(t0) { const $ = _c(8); const { arr1 } = t0; let t1; - if ($[0] !== arr1[0]) { + if (!Object.is($[0], arr1[0])) { t1 = (e) => arr1[0].value + e.value; $[0] = arr1[0]; $[1] = t1; @@ -41,7 +41,7 @@ function useFoo(t0) { } const cb1 = t1; let t2; - if ($[2] !== arr1 || $[3] !== cb1) { + if (!Object.is($[2], arr1) || !Object.is($[3], cb1)) { t2 = arr1.map(cb1); $[2] = arr1; $[3] = cb1; @@ -51,7 +51,7 @@ function useFoo(t0) { } const x = t2; let t3; - if ($[5] !== cb1 || $[6] !== x) { + if (!Object.is($[5], cb1) || !Object.is($[6], x)) { t3 = [x, cb1]; $[5] = cb1; $[6] = x; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/jsx-function.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/jsx-function.expect.md index 76228fc2491..69c832b37d9 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/jsx-function.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/jsx-function.expect.md @@ -44,7 +44,7 @@ function useMakeCallback(t0) { const $ = _c(3); const { obj, setState } = t0; let t1; - if ($[0] !== obj.value || $[1] !== setState) { + if (!Object.is($[0], obj.value) || !Object.is($[1], setState)) { t1 = setState(obj.value)} shouldInvokeFns={true} />; $[0] = obj.value; $[1] = setState; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/return-function.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/return-function.expect.md index 31e317d07e9..e21bb4c4721 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/return-function.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/return-function.expect.md @@ -47,7 +47,7 @@ function useMakeCallback(t0) { const $ = _c(3); const { obj, setState } = t0; let t1; - if ($[0] !== obj.value || $[1] !== setState) { + if (!Object.is($[0], obj.value) || !Object.is($[1], setState)) { t1 = () => setState(obj.value); $[0] = obj.value; $[1] = setState; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/use-memo-returned.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/use-memo-returned.expect.md index 677e9acaeae..34097be1deb 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/use-memo-returned.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/assume-invoked/use-memo-returned.expect.md @@ -50,7 +50,7 @@ function useMakeCallback(t0) { const { obj, shouldSynchronizeState } = t0; const [, setState] = useState(0); let t1; - if ($[0] !== obj.value) { + if (!Object.is($[0], obj.value)) { t1 = () => { if (obj.value !== 0) { setState(obj.value); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/bug-invalid-array-map-manual.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/bug-invalid-array-map-manual.expect.md index 3e729afe529..be78d785773 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/bug-invalid-array-map-manual.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/bug-invalid-array-map-manual.expect.md @@ -31,7 +31,7 @@ function useFoo(t0) { const $ = _c(5); const { arr1, arr2 } = t0; let t1; - if ($[0] !== arr2[0].value) { + if (!Object.is($[0], arr2[0].value)) { t1 = (e) => arr2[0].value + e.value; $[0] = arr2[0].value; $[1] = t1; @@ -40,7 +40,7 @@ function useFoo(t0) { } const cb = t1; let y; - if ($[2] !== arr1 || $[3] !== cb) { + if (!Object.is($[2], arr1) || !Object.is($[3], cb)) { y = []; for (let i = 0; i < arr1.length; i++) { y.push(cb(arr1[i])); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/return-object-of-functions.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/return-object-of-functions.expect.md index 5ccf5b5edc9..c2263f3c2ed 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/return-object-of-functions.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-function/nullable-objects/return-object-of-functions.expect.md @@ -34,7 +34,7 @@ function useMakeCallback(t0) { const $ = _c(2); const { arr } = t0; let t1; - if ($[0] !== arr) { + if (!Object.is($[0], arr)) { t1 = { getElement0: () => arr[0].value, getElement1: () => arr[1].value }; $[0] = arr; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-memo-value-not-promoted-to-outer-scope-dynamic.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-memo-value-not-promoted-to-outer-scope-dynamic.expect.md index 211007ef561..bc06f3eb37b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-memo-value-not-promoted-to-outer-scope-dynamic.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inner-memo-value-not-promoted-to-outer-scope-dynamic.expect.md @@ -31,7 +31,7 @@ function Component(props) { let T1; let t0; let t1; - if ($[0] !== item) { + if (!Object.is($[0], item)) { const count = new MaybeMutable(item); T1 = View; T0 = View; @@ -54,7 +54,7 @@ function Component(props) { t1 = $[4]; } let t2; - if ($[6] !== t0) { + if (!Object.is($[6], t0)) { t2 = {t0}; $[6] = t0; $[7] = t2; @@ -62,7 +62,7 @@ function Component(props) { t2 = $[7]; } let t3; - if ($[8] !== T0 || $[9] !== t1 || $[10] !== t2) { + if (!Object.is($[8], T0) || !Object.is($[9], t1) || !Object.is($[10], t2)) { t3 = ( {t1} @@ -77,7 +77,7 @@ function Component(props) { t3 = $[11]; } let t4; - if ($[12] !== T1 || $[13] !== t3) { + if (!Object.is($[12], T1) || !Object.is($[13], t3)) { t4 = {t3}; $[12] = T1; $[13] = t3; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/interdependent-across-if.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/interdependent-across-if.expect.md index 2f4998efacc..6d6fb03316d 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/interdependent-across-if.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/interdependent-across-if.expect.md @@ -49,7 +49,11 @@ function Component(props) { const $ = _c(8); let a; let b; - if ($[0] !== props.a || $[1] !== props.b || $[2] !== props.c) { + if ( + !Object.is($[0], props.a) || + !Object.is($[1], props.b) || + !Object.is($[2], props.c) + ) { a = compute(props.a); b = compute(props.b); if (props.c) { @@ -65,7 +69,7 @@ function Component(props) { b = $[4]; } let t0; - if ($[5] !== a || $[6] !== b) { + if (!Object.is($[5], a) || !Object.is($[6], b)) { t0 = ; $[5] = a; $[6] = b; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/interdependent.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/interdependent.expect.md index 32e87ab33f2..16b1d5b0beb 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/interdependent.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/interdependent.expect.md @@ -40,7 +40,7 @@ function Component(props) { const $ = _c(7); let a; let b; - if ($[0] !== props.a || $[1] !== props.b) { + if (!Object.is($[0], props.a) || !Object.is($[1], props.b)) { a = compute(props.a); b = compute(props.b); foo(a, b); @@ -53,7 +53,7 @@ function Component(props) { b = $[3]; } let t0; - if ($[4] !== a || $[5] !== b) { + if (!Object.is($[4], a) || !Object.is($[5], b)) { t0 = ; $[4] = a; $[5] = b; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/invalid-set-state-in-effect-verbose-derived-event.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/invalid-set-state-in-effect-verbose-derived-event.expect.md index be0a4dc4319..30648083645 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/invalid-set-state-in-effect-verbose-derived-event.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/invalid-set-state-in-effect-verbose-derived-event.expect.md @@ -35,7 +35,7 @@ function VideoPlayer(t0) { const [wasPlaying, setWasPlaying] = useState(isPlaying); let t1; let t2; - if ($[0] !== isPlaying || $[1] !== wasPlaying) { + if (!Object.is($[0], isPlaying) || !Object.is($[1], wasPlaying)) { t1 = () => { if (isPlaying !== wasPlaying) { setWasPlaying(isPlaying); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/invalid-set-state-in-effect-verbose-non-local-derived.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/invalid-set-state-in-effect-verbose-non-local-derived.expect.md index 35cdeb212d5..be7ffddf272 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/invalid-set-state-in-effect-verbose-non-local-derived.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/invalid-set-state-in-effect-verbose-non-local-derived.expect.md @@ -32,7 +32,7 @@ function Child(t0) { const [fullName, setFullName] = useState(""); let t1; let t2; - if ($[0] !== firstName || $[1] !== lastName) { + if (!Object.is($[0], firstName) || !Object.is($[1], lastName)) { t1 = () => { setFullName(firstName + " " + lastName); }; @@ -47,7 +47,7 @@ function Child(t0) { } useEffect(t1, t2); let t3; - if ($[4] !== fullName) { + if (!Object.is($[4], fullName)) { t3 =
{fullName}
; $[4] = fullName; $[5] = t3; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inverted-if.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inverted-if.expect.md index d6202a504f8..d5ce698bbef 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inverted-if.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/inverted-if.expect.md @@ -29,7 +29,12 @@ import { c as _c } from "react/compiler-runtime"; function foo(a, b, c, d) { const $ = _c(5); let y; - if ($[0] !== a || $[1] !== b || $[2] !== c || $[3] !== d) { + if ( + !Object.is($[0], a) || + !Object.is($[1], b) || + !Object.is($[2], c) || + !Object.is($[3], d) + ) { y = []; bb0: if (a) { if (b) { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-attribute-with-jsx-element-value.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-attribute-with-jsx-element-value.expect.md index fecbc2c8485..60cb92f8f90 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-attribute-with-jsx-element-value.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-attribute-with-jsx-element-value.expect.md @@ -46,7 +46,7 @@ function Component(t0) { const $ = _c(2); const { items } = t0; let t1; - if ($[0] !== items) { + if (!Object.is($[0], items)) { t1 = items.length > 0 ? {items.map(_temp)}} /> : null; $[0] = items; @@ -69,7 +69,7 @@ function Bar(t0) { const $ = _c(2); const { children } = t0; let t1; - if ($[0] !== children) { + if (!Object.is($[0], children)) { t1 =
{children}
; $[0] = children; $[1] = t1; @@ -83,7 +83,7 @@ function Item(t0) { const $ = _c(2); const { item } = t0; let t1; - if ($[0] !== item.name) { + if (!Object.is($[0], item.name)) { t1 =
{item.name}
; $[0] = item.name; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-attribute-with-jsx-fragment-value.flow.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-attribute-with-jsx-fragment-value.flow.expect.md index 8bc421a14b2..92979c18c8c 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-attribute-with-jsx-fragment-value.flow.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-attribute-with-jsx-fragment-value.flow.expect.md @@ -42,7 +42,7 @@ function Component(t0) { const $ = _c(2); const { items } = t0; let t1; - if ($[0] !== items) { + if (!Object.is($[0], items)) { t1 = items.length > 0 ? {items.map(_temp)}} /> : null; $[0] = items; $[1] = t1; @@ -59,7 +59,7 @@ function Foo(t0) { const $ = _c(2); const { value } = t0; let t1; - if ($[0] !== value) { + if (!Object.is($[0], value)) { t1 =
{value}
; $[0] = value; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-empty-expression.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-empty-expression.expect.md index 03d661f4317..8e11f7af77c 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-empty-expression.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-empty-expression.expect.md @@ -25,7 +25,7 @@ import { c as _c } from "react/compiler-runtime"; export function Component(props) { const $ = _c(2); let t0; - if ($[0] !== props.a) { + if (!Object.is($[0], props.a)) { t0 =
{props.a}
; $[0] = props.a; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-fragment.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-fragment.expect.md index f92e820dc2b..6ed3d89a299 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-fragment.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-fragment.expect.md @@ -39,7 +39,7 @@ function Foo(props) { t0 = $[0]; } let t1; - if ($[1] !== props.greeting) { + if (!Object.is($[1], props.greeting)) { t1 = ( <> Hello {props.greeting} {t0} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-freeze.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-freeze.expect.md index f309cdbac9a..7f6aac7b86f 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-freeze.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-freeze.expect.md @@ -32,7 +32,7 @@ import { shallowCopy } from "shared-runtime"; function Component(props) { const $ = _c(2); let element; - if ($[0] !== props.width) { + if (!Object.is($[0], props.width)) { const childprops = { style: { width: props.width } }; element = _jsx("div", { childprops, children: '"hello world"' }); shallowCopy(childprops); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-lowercase-localvar-memberexpr-in-lambda.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-lowercase-localvar-memberexpr-in-lambda.expect.md index 31aa7c77a1e..d83c2eb9192 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-lowercase-localvar-memberexpr-in-lambda.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-lowercase-localvar-memberexpr-in-lambda.expect.md @@ -27,7 +27,7 @@ function useComponentFactory(t0) { const $ = _c(2); const { name } = t0; let t1; - if ($[0] !== name) { + if (!Object.is($[0], name)) { const cb = () => ( hello world {name} ); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-lowercase-localvar-memberexpr.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-lowercase-localvar-memberexpr.expect.md index 5778bf599f8..0d23e7cfa32 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-lowercase-localvar-memberexpr.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-lowercase-localvar-memberexpr.expect.md @@ -24,7 +24,7 @@ function Component(t0) { const $ = _c(2); const { name } = t0; let t1; - if ($[0] !== name) { + if (!Object.is($[0], name)) { t1 = hello world {name}; $[0] = name; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-lowercase-memberexpr.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-lowercase-memberexpr.expect.md index f5f7b3727e9..8542a0ddf69 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-lowercase-memberexpr.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-lowercase-memberexpr.expect.md @@ -23,7 +23,7 @@ function Component(t0) { const $ = _c(2); const { name } = t0; let t1; - if ($[0] !== name) { + if (!Object.is($[0], name)) { t1 = hello world {name}; $[0] = name; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-namespaced-name.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-namespaced-name.expect.md index d587ed1f5bc..321b2b4a310 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-namespaced-name.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-namespaced-name.expect.md @@ -21,7 +21,7 @@ import { c as _c } from "react/compiler-runtime"; function Component(props) { const $ = _c(2); let t0; - if ($[0] !== props.version) { + if (!Object.is($[0], props.version)) { t0 = ; $[0] = props.version; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-child-stored-in-id.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-child-stored-in-id.expect.md index 108c6725f7e..feef3065c49 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-child-stored-in-id.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-child-stored-in-id.expect.md @@ -54,7 +54,7 @@ function Component(t0) { const { arr } = t0; const x = useX(); let t1; - if ($[0] !== arr || $[1] !== x) { + if (!Object.is($[0], arr) || !Object.is($[1], x)) { t1 = arr.map((i) => { arr.map((i_0, id) => { const T0 = _temp; @@ -76,7 +76,7 @@ function _temp(t0) { const $ = _c(5); const { i: i, x: x } = t0; let t1; - if ($[0] !== i) { + if (!Object.is($[0], i)) { t1 = ; $[0] = i; $[1] = t1; @@ -84,7 +84,7 @@ function _temp(t0) { t1 = $[1]; } let t2; - if ($[2] !== t1 || $[3] !== x) { + if (!Object.is($[2], t1) || !Object.is($[3], x)) { t2 = {t1}; $[2] = t1; $[3] = x; @@ -99,7 +99,7 @@ function Bar(t0) { const $ = _c(3); const { x, children } = t0; let t1; - if ($[0] !== children || $[1] !== x) { + if (!Object.is($[0], children) || !Object.is($[1], x)) { t1 = ( <> {x} @@ -119,7 +119,7 @@ function Baz(t0) { const $ = _c(2); const { i } = t0; let t1; - if ($[0] !== i) { + if (!Object.is($[0], i)) { t1 = <>{i}; $[0] = i; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-dup-key-diff-value.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-dup-key-diff-value.expect.md index ded6e67020f..c9de47b2032 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-dup-key-diff-value.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-dup-key-diff-value.expect.md @@ -55,9 +55,9 @@ function Component(t0) { const { arr } = t0; const x = useX(); let t1; - if ($[0] !== arr || $[1] !== x) { + if (!Object.is($[0], arr) || !Object.is($[1], x)) { let t2; - if ($[3] !== x) { + if (!Object.is($[3], x)) { t2 = (i, id) => { const T0 = _temp; return ; @@ -75,7 +75,7 @@ function Component(t0) { t1 = $[2]; } let t2; - if ($[5] !== t1) { + if (!Object.is($[5], t1)) { t2 = <>{t1}; $[5] = t1; $[6] = t2; @@ -88,7 +88,7 @@ function _temp(t0) { const $ = _c(8); const { i: i, k: k, x: x } = t0; let t1; - if ($[0] !== i) { + if (!Object.is($[0], i)) { t1 = ; $[0] = i; $[1] = t1; @@ -96,7 +96,7 @@ function _temp(t0) { t1 = $[1]; } let t2; - if ($[2] !== k) { + if (!Object.is($[2], k)) { t2 = ; $[2] = k; $[3] = t2; @@ -104,7 +104,7 @@ function _temp(t0) { t2 = $[3]; } let t3; - if ($[4] !== t1 || $[5] !== t2 || $[6] !== x) { + if (!Object.is($[4], t1) || !Object.is($[5], t2) || !Object.is($[6], x)) { t3 = ( {t1} @@ -125,7 +125,7 @@ function Bar(t0) { const $ = _c(3); const { x, children } = t0; let t1; - if ($[0] !== children || $[1] !== x) { + if (!Object.is($[0], children) || !Object.is($[1], x)) { t1 = ( <> {x} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-dupe-attr-after-rename.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-dupe-attr-after-rename.expect.md index c95e23222ed..5a8a5eb8cff 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-dupe-attr-after-rename.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-dupe-attr-after-rename.expect.md @@ -56,9 +56,9 @@ function Component(t0) { const { arr } = t0; const x = useX(); let t1; - if ($[0] !== arr || $[1] !== x) { + if (!Object.is($[0], arr) || !Object.is($[1], x)) { let t2; - if ($[3] !== x) { + if (!Object.is($[3], x)) { t2 = (i, id) => { const T0 = _temp; return ; @@ -76,7 +76,7 @@ function Component(t0) { t1 = $[2]; } let t2; - if ($[5] !== t1) { + if (!Object.is($[5], t1)) { t2 = <>{t1}; $[5] = t1; $[6] = t2; @@ -89,7 +89,7 @@ function _temp(t0) { const $ = _c(11); const { k: k, k1: k1, k12: k12, x: x } = t0; let t1; - if ($[0] !== k) { + if (!Object.is($[0], k)) { t1 = ; $[0] = k; $[1] = t1; @@ -97,7 +97,7 @@ function _temp(t0) { t1 = $[1]; } let t2; - if ($[2] !== k1) { + if (!Object.is($[2], k1)) { t2 = ; $[2] = k1; $[3] = t2; @@ -105,7 +105,7 @@ function _temp(t0) { t2 = $[3]; } let t3; - if ($[4] !== k12) { + if (!Object.is($[4], k12)) { t3 = ; $[4] = k12; $[5] = t3; @@ -113,7 +113,12 @@ function _temp(t0) { t3 = $[5]; } let t4; - if ($[6] !== t1 || $[7] !== t2 || $[8] !== t3 || $[9] !== x) { + if ( + !Object.is($[6], t1) || + !Object.is($[7], t2) || + !Object.is($[8], t3) || + !Object.is($[9], x) + ) { t4 = ( {t1} @@ -136,7 +141,7 @@ function Bar(t0) { const $ = _c(3); const { x, children } = t0; let t1; - if ($[0] !== children || $[1] !== x) { + if (!Object.is($[0], children) || !Object.is($[1], x)) { t1 = ( <> {x} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-dupe-key-dupe-component.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-dupe-key-dupe-component.expect.md index a53d9d92aa6..e0585942732 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-dupe-key-dupe-component.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-dupe-key-dupe-component.expect.md @@ -51,9 +51,9 @@ function Component(t0) { const { arr } = t0; const x = useX(); let t1; - if ($[0] !== arr || $[1] !== x) { + if (!Object.is($[0], arr) || !Object.is($[1], x)) { let t2; - if ($[3] !== x) { + if (!Object.is($[3], x)) { t2 = (i, id) => { const T0 = _temp; return ; @@ -71,7 +71,7 @@ function Component(t0) { t1 = $[2]; } let t2; - if ($[5] !== t1) { + if (!Object.is($[5], t1)) { t2 = <>{t1}; $[5] = t1; $[6] = t2; @@ -84,7 +84,7 @@ function _temp(t0) { const $ = _c(8); const { k: k, k1: k1, x: x } = t0; let t1; - if ($[0] !== k) { + if (!Object.is($[0], k)) { t1 = ; $[0] = k; $[1] = t1; @@ -92,7 +92,7 @@ function _temp(t0) { t1 = $[1]; } let t2; - if ($[2] !== k1) { + if (!Object.is($[2], k1)) { t2 = ; $[2] = k1; $[3] = t2; @@ -100,7 +100,7 @@ function _temp(t0) { t2 = $[3]; } let t3; - if ($[4] !== t1 || $[5] !== t2 || $[6] !== x) { + if (!Object.is($[4], t1) || !Object.is($[5], t2) || !Object.is($[6], x)) { t3 = ( {t1} @@ -121,7 +121,7 @@ function Bar(t0) { const $ = _c(3); const { x, children } = t0; let t1; - if ($[0] !== children || $[1] !== x) { + if (!Object.is($[0], children) || !Object.is($[1], x)) { t1 = ( <> {x} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-duplicate-prop.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-duplicate-prop.expect.md index e6ba7dd7ee7..8962c0929e5 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-duplicate-prop.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-duplicate-prop.expect.md @@ -55,9 +55,9 @@ function Component(t0) { const { arr } = t0; const x = useX(); let t1; - if ($[0] !== arr || $[1] !== x) { + if (!Object.is($[0], arr) || !Object.is($[1], x)) { let t2; - if ($[3] !== x) { + if (!Object.is($[3], x)) { t2 = (i, id) => { const T0 = _temp; return ; @@ -75,7 +75,7 @@ function Component(t0) { t1 = $[2]; } let t2; - if ($[5] !== t1) { + if (!Object.is($[5], t1)) { t2 = <>{t1}; $[5] = t1; $[6] = t2; @@ -88,7 +88,7 @@ function _temp(t0) { const $ = _c(8); const { i: i, i1: i1, x: x } = t0; let t1; - if ($[0] !== i) { + if (!Object.is($[0], i)) { t1 = ; $[0] = i; $[1] = t1; @@ -96,7 +96,7 @@ function _temp(t0) { t1 = $[1]; } let t2; - if ($[2] !== i1) { + if (!Object.is($[2], i1)) { t2 = ; $[2] = i1; $[3] = t2; @@ -104,7 +104,7 @@ function _temp(t0) { t2 = $[3]; } let t3; - if ($[4] !== t1 || $[5] !== t2 || $[6] !== x) { + if (!Object.is($[4], t1) || !Object.is($[5], t2) || !Object.is($[6], x)) { t3 = ( {t1} @@ -125,7 +125,7 @@ function Bar(t0) { const $ = _c(3); const { x, children } = t0; let t1; - if ($[0] !== children || $[1] !== x) { + if (!Object.is($[0], children) || !Object.is($[1], x)) { t1 = ( <> {x} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-jsx-stored-in-id.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-jsx-stored-in-id.expect.md index 284491e6fb6..4cd96e166a9 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-jsx-stored-in-id.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-jsx-stored-in-id.expect.md @@ -52,9 +52,9 @@ function Component(t0) { const { arr } = t0; const x = useX(); let t1; - if ($[0] !== arr || $[1] !== x) { + if (!Object.is($[0], arr) || !Object.is($[1], x)) { let t2; - if ($[3] !== x) { + if (!Object.is($[3], x)) { t2 = (i, id) => { const T0 = _temp; const jsx = ; @@ -74,7 +74,7 @@ function Component(t0) { t1 = $[2]; } let t2; - if ($[5] !== t1) { + if (!Object.is($[5], t1)) { t2 = <>{t1}; $[5] = t1; $[6] = t2; @@ -87,7 +87,7 @@ function _temp(t0) { const $ = _c(5); const { i: i, x: x } = t0; let t1; - if ($[0] !== i) { + if (!Object.is($[0], i)) { t1 = ; $[0] = i; $[1] = t1; @@ -95,7 +95,7 @@ function _temp(t0) { t1 = $[1]; } let t2; - if ($[2] !== t1 || $[3] !== x) { + if (!Object.is($[2], t1) || !Object.is($[3], x)) { t2 = {t1}; $[2] = t1; $[3] = x; @@ -110,7 +110,7 @@ function Bar(t0) { const $ = _c(3); const { x, children } = t0; let t1; - if ($[0] !== children || $[1] !== x) { + if (!Object.is($[0], children) || !Object.is($[1], x)) { t1 = ( <> {x} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-separate-nested.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-separate-nested.expect.md index 9d2b254c063..168be5eb564 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-separate-nested.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-separate-nested.expect.md @@ -60,9 +60,9 @@ function Component(t0) { const { arr } = t0; const x = useX(); let t1; - if ($[0] !== arr || $[1] !== x) { + if (!Object.is($[0], arr) || !Object.is($[1], x)) { let t2; - if ($[3] !== x) { + if (!Object.is($[3], x)) { t2 = (i, id) => { const T0 = _temp; return ; @@ -80,7 +80,7 @@ function Component(t0) { t1 = $[2]; } let t2; - if ($[5] !== t1) { + if (!Object.is($[5], t1)) { t2 = <>{t1}; $[5] = t1; $[6] = t2; @@ -93,7 +93,7 @@ function _temp(t0) { const $ = _c(11); const { i: i, j: j, k: k, x: x } = t0; let t1; - if ($[0] !== i) { + if (!Object.is($[0], i)) { t1 = ; $[0] = i; $[1] = t1; @@ -101,7 +101,7 @@ function _temp(t0) { t1 = $[1]; } let t2; - if ($[2] !== j) { + if (!Object.is($[2], j)) { t2 = ; $[2] = j; $[3] = t2; @@ -109,7 +109,7 @@ function _temp(t0) { t2 = $[3]; } let t3; - if ($[4] !== k) { + if (!Object.is($[4], k)) { t3 = ; $[4] = k; $[5] = t3; @@ -117,7 +117,12 @@ function _temp(t0) { t3 = $[5]; } let t4; - if ($[6] !== t1 || $[7] !== t2 || $[8] !== t3 || $[9] !== x) { + if ( + !Object.is($[6], t1) || + !Object.is($[7], t2) || + !Object.is($[8], t3) || + !Object.is($[9], x) + ) { t4 = ( {t1} @@ -140,7 +145,7 @@ function Bar(t0) { const $ = _c(3); const { x, children } = t0; let t1; - if ($[0] !== children || $[1] !== x) { + if (!Object.is($[0], children) || !Object.is($[1], x)) { t1 = ( <> {x} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-simple.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-simple.expect.md index 09323f5ac65..ebe6bf53988 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-simple.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-simple.expect.md @@ -50,9 +50,9 @@ function Component(t0) { const { arr } = t0; const x = useX(); let t1; - if ($[0] !== arr || $[1] !== x) { + if (!Object.is($[0], arr) || !Object.is($[1], x)) { let t2; - if ($[3] !== x) { + if (!Object.is($[3], x)) { t2 = (i, id) => { const T0 = _temp; return ; @@ -70,7 +70,7 @@ function Component(t0) { t1 = $[2]; } let t2; - if ($[5] !== t1) { + if (!Object.is($[5], t1)) { t2 = <>{t1}; $[5] = t1; $[6] = t2; @@ -83,7 +83,7 @@ function _temp(t0) { const $ = _c(5); const { i: i, x: x } = t0; let t1; - if ($[0] !== i) { + if (!Object.is($[0], i)) { t1 = ; $[0] = i; $[1] = t1; @@ -91,7 +91,7 @@ function _temp(t0) { t1 = $[1]; } let t2; - if ($[2] !== t1 || $[3] !== x) { + if (!Object.is($[2], t1) || !Object.is($[3], x)) { t2 = {t1}; $[2] = t1; $[3] = x; @@ -106,7 +106,7 @@ function Bar(t0) { const $ = _c(3); const { x, children } = t0; let t1; - if ($[0] !== children || $[1] !== x) { + if (!Object.is($[0], children) || !Object.is($[1], x)) { t1 = ( <> {x} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-with-non-jsx-children.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-with-non-jsx-children.expect.md index 5408ea83a83..1cf491aaabe 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-with-non-jsx-children.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-outlining-with-non-jsx-children.expect.md @@ -61,9 +61,9 @@ function Component(t0) { const { arr } = t0; const x = useX(); let t1; - if ($[0] !== arr || $[1] !== x) { + if (!Object.is($[0], arr) || !Object.is($[1], x)) { let t2; - if ($[3] !== x) { + if (!Object.is($[3], x)) { t2 = (i, id) => { const t3 = "Test"; const T0 = _temp; @@ -82,7 +82,7 @@ function Component(t0) { t1 = $[2]; } let t2; - if ($[5] !== t1) { + if (!Object.is($[5], t1)) { t2 = <>{t1}; $[5] = t1; $[6] = t2; @@ -95,7 +95,7 @@ function _temp(t0) { const $ = _c(9); const { i: i, t: t, k: k, x: x } = t0; let t1; - if ($[0] !== i || $[1] !== t) { + if (!Object.is($[0], i) || !Object.is($[1], t)) { t1 = {t}; $[0] = i; $[1] = t; @@ -104,7 +104,7 @@ function _temp(t0) { t1 = $[2]; } let t2; - if ($[3] !== k) { + if (!Object.is($[3], k)) { t2 = ; $[3] = k; $[4] = t2; @@ -112,7 +112,7 @@ function _temp(t0) { t2 = $[4]; } let t3; - if ($[5] !== t1 || $[6] !== t2 || $[7] !== x) { + if (!Object.is($[5], t1) || !Object.is($[6], t2) || !Object.is($[7], x)) { t3 = ( {t1} @@ -133,7 +133,7 @@ function Bar(t0) { const $ = _c(3); const { x, children } = t0; let t1; - if ($[0] !== children || $[1] !== x) { + if (!Object.is($[0], children) || !Object.is($[1], x)) { t1 = ( <> {x} @@ -153,7 +153,7 @@ function Baz(t0) { const $ = _c(3); const { i, children } = t0; let t1; - if ($[0] !== children || $[1] !== i) { + if (!Object.is($[0], children) || !Object.is($[1], i)) { t1 = ( <> {i} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-reactive-local-variable-member-expr.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-reactive-local-variable-member-expr.expect.md index 83b4c3f1f0f..65ff2a70102 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-reactive-local-variable-member-expr.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-reactive-local-variable-member-expr.expect.md @@ -27,7 +27,7 @@ function Component(t0) { const { something } = t0; const Foo = something.StaticText1; let t1; - if ($[0] !== Foo) { + if (!Object.is($[0], Foo)) { t1 = () => ; $[0] = Foo; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-spread.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-spread.expect.md index ffa2855d914..5c489d299fa 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-spread.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-spread.expect.md @@ -19,7 +19,7 @@ function Component(props) { const t0 = props.cond ? props.foo : props.bar; let t1; - if ($[0] !== t0) { + if (!Object.is($[0], t0)) { t1 = { bar: t0 }; $[0] = t0; $[1] = t1; @@ -27,7 +27,7 @@ function Component(props) { t1 = $[1]; } let t2; - if ($[2] !== props || $[3] !== t1) { + if (!Object.is($[2], props) || !Object.is($[3], t1)) { t2 = ; $[2] = props; $[3] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-string-attribute-expression-container.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-string-attribute-expression-container.expect.md index 2bcf4825374..54481598d0e 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-string-attribute-expression-container.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-string-attribute-expression-container.expect.md @@ -57,7 +57,7 @@ function Text(t0) { const $ = _c(2); const { value } = t0; let t1; - if ($[0] !== value) { + if (!Object.is($[0], value)) { t1 = {value}; $[0] = value; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-string-attribute-non-ascii.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-string-attribute-non-ascii.expect.md index 7f05ade8760..ee29c0ee32c 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-string-attribute-non-ascii.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-string-attribute-non-ascii.expect.md @@ -54,7 +54,7 @@ function Post(t0) { const $ = _c(7); const { author, text } = t0; let t1; - if ($[0] !== author) { + if (!Object.is($[0], author)) { t1 =

{author}

; $[0] = author; $[1] = t1; @@ -62,7 +62,7 @@ function Post(t0) { t1 = $[1]; } let t2; - if ($[2] !== text) { + if (!Object.is($[2], text)) { t2 = {text}; $[2] = text; $[3] = t2; @@ -70,7 +70,7 @@ function Post(t0) { t2 = $[3]; } let t3; - if ($[4] !== t1 || $[5] !== t2) { + if (!Object.is($[4], t1) || !Object.is($[5], t2)) { t3 = (
{t1} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-tag-evaluation-order-non-global.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-tag-evaluation-order-non-global.expect.md index afebfba378d..53e81de4143 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-tag-evaluation-order-non-global.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-tag-evaluation-order-non-global.expect.md @@ -56,7 +56,10 @@ function Component(props) { let T0; let Tag; let t0; - if ($[0] !== props.alternateComponent || $[1] !== props.component) { + if ( + !Object.is($[0], props.alternateComponent) || + !Object.is($[1], props.component) + ) { const maybeMutable = new MaybeMutable(); Tag = props.component; T0 = Tag; @@ -72,7 +75,7 @@ function Component(props) { t0 = $[4]; } let t1; - if ($[5] !== Tag) { + if (!Object.is($[5], Tag)) { t1 = ; $[5] = Tag; $[6] = t1; @@ -80,7 +83,7 @@ function Component(props) { t1 = $[6]; } let t2; - if ($[7] !== T0 || $[8] !== t0 || $[9] !== t1) { + if (!Object.is($[7], T0) || !Object.is($[8], t0) || !Object.is($[9], t1)) { t2 = ( {t0} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-tag-evaluation-order.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-tag-evaluation-order.expect.md index b59db512231..15df2dddd6c 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-tag-evaluation-order.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-tag-evaluation-order.expect.md @@ -40,7 +40,7 @@ function Component(props) { t1 = $[0]; } let t2; - if ($[1] !== t0) { + if (!Object.is($[1], t0)) { t2 = ( {t0} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-ternary-local-variable.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-ternary-local-variable.expect.md index 7a841aa7cab..556acd754c2 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-ternary-local-variable.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-ternary-local-variable.expect.md @@ -27,7 +27,7 @@ function Component(props) { const $ = _c(2); const Foo = props.showText1 ? StaticText1 : StaticText2; let t0; - if ($[0] !== Foo) { + if (!Object.is($[0], Foo)) { t0 = ]} />; $[0] = Foo; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/labeled-break-within-label-loop.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/labeled-break-within-label-loop.expect.md index ea2e12e723d..0974840f021 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/labeled-break-within-label-loop.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/labeled-break-within-label-loop.expect.md @@ -31,7 +31,7 @@ import { c as _c } from "react/compiler-runtime"; function useHook(end) { const $ = _c(2); let log; - if ($[0] !== end) { + if (!Object.is($[0], end)) { log = []; for (let i = 0; i < end + 1; i++) { log.push(`${i} @A`); diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/labeled-break-within-label-switch.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/labeled-break-within-label-switch.expect.md index 441b6ae3147..37db62fb24d 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/labeled-break-within-label-switch.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/labeled-break-within-label-switch.expect.md @@ -36,7 +36,7 @@ import { CONST_STRING0 } from "shared-runtime"; function useHook(cond) { const $ = _c(2); let log; - if ($[0] !== cond) { + if (!Object.is($[0], cond)) { log = []; switch (CONST_STRING0) { case CONST_STRING0: { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/lambda-capture-returned-alias.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/lambda-capture-returned-alias.expect.md index ea9e981ba29..1d6518d0fd1 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/lambda-capture-returned-alias.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/lambda-capture-returned-alias.expect.md @@ -35,7 +35,7 @@ import { c as _c } from "react/compiler-runtime"; // Here, element should not be function CaptureNotMutate(props) { const $ = _c(5); let t0; - if ($[0] !== props.x) { + if (!Object.is($[0], props.x)) { t0 = foo(props.x); $[0] = props.x; $[1] = t0; @@ -44,7 +44,7 @@ function CaptureNotMutate(props) { } const idx = t0; let aliasedElement; - if ($[2] !== idx || $[3] !== props.el) { + if (!Object.is($[2], idx) || !Object.is($[3], props.el)) { const element = bar(props.el); const fn = function () { const arr = { element }; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/lambda-mutated-non-reactive-to-reactive.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/lambda-mutated-non-reactive-to-reactive.expect.md index ed0ddda55b3..56fb736d294 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/lambda-mutated-non-reactive-to-reactive.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/lambda-mutated-non-reactive-to-reactive.expect.md @@ -25,7 +25,7 @@ import { c as _c } from "react/compiler-runtime"; function f(a) { const $ = _c(4); let x; - if ($[0] !== a) { + if (!Object.is($[0], a)) { x = { a }; $[0] = a; $[1] = x; @@ -33,7 +33,7 @@ function f(a) { x = $[1]; } let t0; - if ($[2] !== x) { + if (!Object.is($[2], x)) { t0 =
; $[2] = x; $[3] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/log-pruned-memoization.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/log-pruned-memoization.expect.md index b6583dbc9e1..54133b4ef7f 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/log-pruned-memoization.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/log-pruned-memoization.expect.md @@ -88,7 +88,12 @@ function Component() { z = $[0]; } let t0; - if ($[1] !== w || $[2] !== x || $[3] !== x2 || $[4] !== y) { + if ( + !Object.is($[1], w) || + !Object.is($[2], x) || + !Object.is($[3], x2) || + !Object.is($[4], y) + ) { t0 = ; $[1] = w; $[2] = x; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/logical-expression-object.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/logical-expression-object.expect.md index ccd03bd7a46..1250ae74f1a 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/logical-expression-object.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/logical-expression-object.expect.md @@ -31,7 +31,7 @@ function component(props) { const a = props.a || (props.b && props.c && props.d); const b = (props.a && props.b && props.c) || props.d; let t0; - if ($[0] !== a || $[1] !== b) { + if (!Object.is($[0], a) || !Object.is($[1], b)) { t0 = { a, b }; $[0] = a; $[1] = b; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/maybe-mutate-object-in-callback.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/maybe-mutate-object-in-callback.expect.md index a8069809b66..19e3def8c83 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/maybe-mutate-object-in-callback.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/maybe-mutate-object-in-callback.expect.md @@ -45,7 +45,7 @@ function Component(props) { } const onClick = t0; let t1; - if ($[1] !== props.children) { + if (!Object.is($[1], props.children)) { t1 = {props.children}; $[1] = props.children; $[2] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/mege-consecutive-scopes-dont-merge-with-different-deps.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/mege-consecutive-scopes-dont-merge-with-different-deps.expect.md index 2b6ae620f5c..fd426e81c25 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/mege-consecutive-scopes-dont-merge-with-different-deps.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/mege-consecutive-scopes-dont-merge-with-different-deps.expect.md @@ -33,7 +33,7 @@ function Component(props) { t0 = $[0]; } let t1; - if ($[1] !== props.id) { + if (!Object.is($[1], props.id)) { t1 = identity(props.id); $[1] = props.id; $[2] = t1; @@ -48,7 +48,7 @@ function Component(props) { t2 = $[3]; } let t3; - if ($[4] !== t1) { + if (!Object.is($[4], t1)) { t3 = { a: t0, b: t1, c: t2 }; $[4] = t1; $[5] = t3; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/memoize-primitive-function-calls.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/memoize-primitive-function-calls.expect.md index 70e70a26b46..3580f5a3633 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/memoize-primitive-function-calls.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/memoize-primitive-function-calls.expect.md @@ -45,7 +45,7 @@ import { makeObject_Primitives, ValidateMemoization } from "shared-runtime"; function Component(props) { const $ = _c(7); let t0; - if ($[0] !== props.value) { + if (!Object.is($[0], props.value)) { t0 = makeObject(props.value); $[0] = props.value; $[1] = t0; @@ -54,7 +54,7 @@ function Component(props) { } const result = t0.value + 1; let t1; - if ($[2] !== props.value) { + if (!Object.is($[2], props.value)) { t1 = [props.value]; $[2] = props.value; $[3] = t1; @@ -62,7 +62,7 @@ function Component(props) { t1 = $[3]; } let t2; - if ($[4] !== result || $[5] !== t1) { + if (!Object.is($[4], result) || !Object.is($[5], t1)) { t2 = ; $[4] = result; $[5] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/merge-consecutive-scopes-deps-subset-of-decls.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/merge-consecutive-scopes-deps-subset-of-decls.expect.md index 87175b3ec63..b72e553b839 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/merge-consecutive-scopes-deps-subset-of-decls.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/merge-consecutive-scopes-deps-subset-of-decls.expect.md @@ -36,7 +36,7 @@ function Component() { const $ = _c(2); const [count, setCount] = useState(0); let t0; - if ($[0] !== count) { + if (!Object.is($[0], count)) { t0 = (
diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/merge-consecutive-scopes-objects.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/merge-consecutive-scopes-objects.expect.md index d31d366b1e0..a6fcdf15fe0 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/merge-consecutive-scopes-objects.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/merge-consecutive-scopes-objects.expect.md @@ -54,7 +54,7 @@ function Component(props) { t0 = $[0]; } let t1; - if ($[1] !== state) { + if (!Object.is($[1], state)) { t1 = { component: "span", props: { children: [state] } }; $[1] = state; $[2] = t1; @@ -62,7 +62,7 @@ function Component(props) { t1 = $[2]; } let t2; - if ($[3] !== state) { + if (!Object.is($[3], state)) { t2 = () => setState(state + 1); $[3] = state; $[4] = t2; @@ -77,7 +77,7 @@ function Component(props) { t3 = $[5]; } let t4; - if ($[6] !== t2) { + if (!Object.is($[6], t2)) { t4 = { component: "button", props: { "data-testid": "button", onClick: t2, children: t3 }, @@ -88,7 +88,7 @@ function Component(props) { t4 = $[7]; } let t5; - if ($[8] !== t1 || $[9] !== t4) { + if (!Object.is($[8], t1) || !Object.is($[9], t4)) { t5 = [t0, t1, t4]; $[8] = t1; $[9] = t4; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/merge-consecutive-scopes.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/merge-consecutive-scopes.expect.md index 2e246c0e1c0..8f4432b4209 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/merge-consecutive-scopes.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/merge-consecutive-scopes.expect.md @@ -43,7 +43,7 @@ function Component() { t0 = $[0]; } let t1; - if ($[1] !== state) { + if (!Object.is($[1], state)) { t1 = {state}; $[1] = state; $[2] = t1; @@ -51,7 +51,7 @@ function Component() { t1 = $[2]; } let t2; - if ($[3] !== state) { + if (!Object.is($[3], state)) { t2 = ( ; $[1] = deeplinkItemId; $[2] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-independently-memoized-property-load-for-method-call.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-independently-memoized-property-load-for-method-call.expect.md index ea711a5baf4..19bc1bc3042 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-independently-memoized-property-load-for-method-call.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-independently-memoized-property-load-for-method-call.expect.md @@ -59,7 +59,11 @@ function Component(t0) { const serverTime = useServerTime(); let t1; let timestampLabel; - if ($[0] !== highlightedItem || $[1] !== label || $[2] !== serverTime) { + if ( + !Object.is($[0], highlightedItem) || + !Object.is($[1], label) || + !Object.is($[2], serverTime) + ) { const highlight = new Highlight(highlightedItem); const time = serverTime.get(); timestampLabel = time / 1000 || label; @@ -74,7 +78,7 @@ function Component(t0) { timestampLabel = $[4]; } let t2; - if ($[5] !== t1 || $[6] !== timestampLabel) { + if (!Object.is($[5], t1) || !Object.is($[6], timestampLabel)) { t2 = ( <> {t1} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-instruction-part-of-already-closed-scope.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-instruction-part-of-already-closed-scope.expect.md index f141eaa64f4..578bc0addd0 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-instruction-part-of-already-closed-scope.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-instruction-part-of-already-closed-scope.expect.md @@ -42,12 +42,12 @@ function Component(t0) { let t1; let t2; let t3; - if ($[0] !== data || $[1] !== index) { + if (!Object.is($[0], data) || !Object.is($[1], index)) { const a = identity(data, index); const b = identity(data, index); const c = identity(data, index); const t4 = identity(b); - if ($[6] !== t4) { + if (!Object.is($[6], t4)) { t2 = ; $[6] = t4; $[7] = t2; @@ -55,7 +55,7 @@ function Component(t0) { t2 = $[7]; } const t5 = identity(a); - if ($[8] !== t5) { + if (!Object.is($[8], t5)) { t3 = ; $[8] = t5; $[9] = t3; @@ -77,7 +77,7 @@ function Component(t0) { t3 = $[5]; } let t4; - if ($[10] !== T0 || $[11] !== t1) { + if (!Object.is($[10], T0) || !Object.is($[11], t1)) { t4 = ; $[10] = T0; $[11] = t1; @@ -86,7 +86,7 @@ function Component(t0) { t4 = $[12]; } let t5; - if ($[13] !== t2 || $[14] !== t3 || $[15] !== t4) { + if (!Object.is($[13], t2) || !Object.is($[14], t3) || !Object.is($[15], t4)) { t5 = (
{t2} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-invalid-destructuring-reassignment-undefined-variable.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-invalid-destructuring-reassignment-undefined-variable.expect.md index 544366b1de6..6985f6ee2f5 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-invalid-destructuring-reassignment-undefined-variable.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-invalid-destructuring-reassignment-undefined-variable.expect.md @@ -78,10 +78,10 @@ function Calendar(t0) { let daysToDisplay; let firstDay; if ( - $[0] !== currentDate || - $[1] !== defaultFirstDay || - $[2] !== user || - $[3] !== view + !Object.is($[0], currentDate) || + !Object.is($[1], defaultFirstDay) || + !Object.is($[2], user) || + !Object.is($[3], view) ) { const weekendDays = getWeekendDays(user); firstDay = defaultFirstDay; @@ -94,7 +94,7 @@ function Calendar(t0) { } else { if (view === "day") { let t1; - if ($[6] !== currentDate) { + if (!Object.is($[6], currentDate)) { t1 = currentDate.getDayOfWeek(); $[6] = currentDate; $[7] = t1; @@ -116,7 +116,11 @@ function Calendar(t0) { firstDay = $[5]; } let t1; - if ($[8] !== currentDate || $[9] !== daysToDisplay || $[10] !== firstDay) { + if ( + !Object.is($[8], currentDate) || + !Object.is($[9], daysToDisplay) || + !Object.is($[10], firstDay) + ) { t1 = [currentDate, firstDay, daysToDisplay]; $[8] = currentDate; $[9] = daysToDisplay; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-invalid-pruned-scope-leaks-value-via-alias.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-invalid-pruned-scope-leaks-value-via-alias.expect.md index d0381a74c8a..d3dd7ec4702 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-invalid-pruned-scope-leaks-value-via-alias.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-invalid-pruned-scope-leaks-value-via-alias.expect.md @@ -66,7 +66,7 @@ function MyApp(t0) { const z = makeObject_Primitives(); const x = useIdentity(2); let t1; - if ($[0] !== count || $[1] !== x) { + if (!Object.is($[0], count) || !Object.is($[1], x)) { t1 = sum(x, count); $[0] = count; $[1] = x; @@ -78,7 +78,7 @@ function MyApp(t0) { mutate(z); const z2 = z; let t2; - if ($[3] !== y || $[4] !== z2) { + if (!Object.is($[3], y) || !Object.is($[4], z2)) { t2 = [y, z2]; $[3] = y; $[4] = z2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-invalid-pruned-scope-leaks-value.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-invalid-pruned-scope-leaks-value.expect.md index 91e024af282..fbe7436b9f2 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-invalid-pruned-scope-leaks-value.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-invalid-pruned-scope-leaks-value.expect.md @@ -65,7 +65,7 @@ function MyApp(t0) { const z = makeObject_Primitives(); const x = useIdentity(2); let t1; - if ($[0] !== count || $[1] !== x) { + if (!Object.is($[0], count) || !Object.is($[1], x)) { t1 = sum(x, count); $[0] = count; $[1] = x; @@ -76,7 +76,7 @@ function MyApp(t0) { const y = t1; mutate(z); let t2; - if ($[3] !== y || $[4] !== z) { + if (!Object.is($[3], y) || !Object.is($[4], z)) { t2 = [y, z]; $[3] = y; $[4] = z; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-invalid-reactivity-value-block.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-invalid-reactivity-value-block.expect.md index a34dd7fe0a9..9b4b8f49b42 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-invalid-reactivity-value-block.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-invalid-reactivity-value-block.expect.md @@ -71,7 +71,7 @@ function Foo() { const shouldCaptureObj = obj != null && CONST_TRUE; const t0 = shouldCaptureObj ? identity(obj) : null; let t1; - if ($[0] !== obj || $[1] !== t0) { + if (!Object.is($[0], obj) || !Object.is($[1], t0)) { t1 = [t0, obj]; $[0] = obj; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-local-mutation-of-new-object-from-destructured-prop.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-local-mutation-of-new-object-from-destructured-prop.expect.md index b1a0f6cbb34..f66d78f8e91 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-local-mutation-of-new-object-from-destructured-prop.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-local-mutation-of-new-object-from-destructured-prop.expect.md @@ -29,7 +29,7 @@ function Component(props) { const $ = _c(5); const { a } = props; let rest; - if ($[0] !== a || $[1] !== props.value) { + if (!Object.is($[0], a) || !Object.is($[1], props.value)) { const { b, ...t0 } = a; rest = t0; @@ -41,7 +41,7 @@ function Component(props) { rest = $[2]; } let t0; - if ($[3] !== rest) { + if (!Object.is($[3], rest)) { t0 = ; $[3] = rest; $[4] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-memoize-array-with-immutable-map-after-hook.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-memoize-array-with-immutable-map-after-hook.expect.md index 95570bdcd4a..85468c98402 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-memoize-array-with-immutable-map-after-hook.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-memoize-array-with-immutable-map-after-hook.expect.md @@ -36,7 +36,7 @@ import { useEffect, useState } from "react"; function Component(props) { const $ = _c(10); let t0; - if ($[0] !== props.value) { + if (!Object.is($[0], props.value)) { t0 = [props.value]; $[0] = props.value; $[1] = t0; @@ -53,7 +53,7 @@ function Component(props) { } useEffect(_temp, t1); let t2; - if ($[3] !== x.length) { + if (!Object.is($[3], x.length)) { t2 = () => { console.log(x.length); }; @@ -64,7 +64,7 @@ function Component(props) { } const onClick = t2; let t3; - if ($[5] !== x) { + if (!Object.is($[5], x)) { t3 = x.map(_temp2); $[5] = x; $[6] = t3; @@ -72,7 +72,7 @@ function Component(props) { t3 = $[6]; } let t4; - if ($[7] !== onClick || $[8] !== t3) { + if (!Object.is($[7], onClick) || !Object.is($[8], t3)) { t4 =
{t3}
; $[7] = onClick; $[8] = t3; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-memoize-for-of-collection-when-loop-body-returns.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-memoize-for-of-collection-when-loop-body-returns.expect.md index bc124ff96af..d10c4fc2c9b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-memoize-for-of-collection-when-loop-body-returns.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-memoize-for-of-collection-when-loop-body-returns.expect.md @@ -25,7 +25,7 @@ function useHook(nodeID, condition) { const graph = useContext(GraphContext); const node = nodeID != null ? graph[nodeID] : null; let t0; - if ($[0] !== node?.fields) { + if (!Object.is($[0], node?.fields)) { t0 = Object.keys(node?.fields ?? {}); $[0] = node?.fields; $[1] = t0; @@ -33,7 +33,11 @@ function useHook(nodeID, condition) { t0 = $[1]; } let t1; - if ($[2] !== condition || $[3] !== node || $[4] !== t0) { + if ( + !Object.is($[2], condition) || + !Object.is($[3], node) || + !Object.is($[4], t0) + ) { t1 = Symbol.for("react.early_return_sentinel"); bb0: for (const key of t0) { if (condition) { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-missing-dependency-if-within-while.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-missing-dependency-if-within-while.expect.md index b45977b6953..4f88ffa71f5 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-missing-dependency-if-within-while.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-missing-dependency-if-within-while.expect.md @@ -42,7 +42,7 @@ export default function Component(props) { const $ = _c(2); const { b } = props; let t0; - if ($[0] !== b) { + if (!Object.is($[0], b)) { const items = []; let i = 0; while (i < 10) { diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-missing-memoization-lack-of-phi-types.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-missing-memoization-lack-of-phi-types.expect.md index 4728226c64c..b25601f8d7e 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-missing-memoization-lack-of-phi-types.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-missing-memoization-lack-of-phi-types.expect.md @@ -35,7 +35,7 @@ function Component() { const $ = _c(7); const data = useFragment(); let t0; - if ($[0] !== data.nodes) { + if (!Object.is($[0], data.nodes)) { const nodes = data.nodes ?? []; const flatMap = nodes.flatMap(_temp); t0 = flatMap.filter(_temp2); @@ -46,7 +46,7 @@ function Component() { } const filtered = t0; let t1; - if ($[2] !== filtered) { + if (!Object.is($[2], filtered)) { t1 = filtered.map(); $[2] = filtered; $[3] = t1; @@ -56,7 +56,7 @@ function Component() { const map = t1; const index = filtered.findIndex(_temp3); let t2; - if ($[4] !== index || $[5] !== map) { + if (!Object.is($[4], index) || !Object.is($[5], map)) { t2 = (
{map} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-mutate-ref-in-function-passed-to-hook.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-mutate-ref-in-function-passed-to-hook.expect.md index 83aa4107748..205507956ac 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-mutate-ref-in-function-passed-to-hook.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-mutate-ref-in-function-passed-to-hook.expect.md @@ -98,7 +98,7 @@ function Example() { } useLayoutEffect(t2, t3); let t4; - if ($[4] !== resizeRef) { + if (!Object.is($[4], resizeRef)) { t4 =
; $[4] = resizeRef; $[5] = t4; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-mutate-result-of-function-call-with-frozen-argument-in-function-expression.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-mutate-result-of-function-call-with-frozen-argument-in-function-expression.expect.md index 20eab399ba0..1ef7ff78c5b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-mutate-result-of-function-call-with-frozen-argument-in-function-expression.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-mutate-result-of-function-call-with-frozen-argument-in-function-expression.expect.md @@ -33,7 +33,7 @@ function Example(props) { const $ = _c(5); const object = props.object; let t0; - if ($[0] !== object || $[1] !== props.value) { + if (!Object.is($[0], object) || !Object.is($[1], props.value)) { const f = () => { const obj = identity(object); obj.property = props.value; @@ -48,7 +48,7 @@ function Example(props) { } const obj_0 = t0; let t1; - if ($[3] !== obj_0) { + if (!Object.is($[3], obj_0)) { t1 = ; $[3] = obj_0; $[4] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-mutate-result-of-method-call-on-frozen-value-in-function-expression.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-mutate-result-of-method-call-on-frozen-value-in-function-expression.expect.md index e5456ed8582..3f90289be2c 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-mutate-result-of-method-call-on-frozen-value-in-function-expression.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-mutate-result-of-method-call-on-frozen-value-in-function-expression.expect.md @@ -33,7 +33,7 @@ function Example(props) { const $ = _c(5); const object = props.object; let t0; - if ($[0] !== object || $[1] !== props.value) { + if (!Object.is($[0], object) || !Object.is($[1], props.value)) { const f = () => { const obj = object.makeObject(); obj.property = props.value; @@ -48,7 +48,7 @@ function Example(props) { } const obj_0 = t0; let t1; - if ($[3] !== obj_0) { + if (!Object.is($[3], obj_0)) { t1 = ; $[3] = obj_0; $[4] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-mutate-result-of-method-call-on-frozen-value-is-allowed.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-mutate-result-of-method-call-on-frozen-value-is-allowed.expect.md index 0c91a935ed7..e295212c01e 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-mutate-result-of-method-call-on-frozen-value-is-allowed.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-mutate-result-of-method-call-on-frozen-value-is-allowed.expect.md @@ -26,7 +26,7 @@ import { makeObject_Primitives, Stringify } from "shared-runtime"; function Example(props) { const $ = _c(5); let obj; - if ($[0] !== props.object || $[1] !== props.value) { + if (!Object.is($[0], props.object) || !Object.is($[1], props.value)) { obj = props.object.makeObject(); obj.property = props.value; $[0] = props.object; @@ -36,7 +36,7 @@ function Example(props) { obj = $[2]; } let t0; - if ($[3] !== obj) { + if (!Object.is($[3], obj)) { t0 = ; $[3] = obj; $[4] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-nested-try-catch-in-usememo.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-nested-try-catch-in-usememo.expect.md index bb3d068db6d..2b9bec3d1b0 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-nested-try-catch-in-usememo.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-nested-try-catch-in-usememo.expect.md @@ -56,7 +56,7 @@ function useFoo(text) { let formattedText; try { let t2; - if ($[0] !== text) { + if (!Object.is($[0], text)) { t2 = format(text); $[0] = text; $[1] = t2; @@ -84,7 +84,7 @@ function Foo(t0) { const { text } = t0; const result = useFoo(text); let t1; - if ($[0] !== result) { + if (!Object.is($[0], result)) { t1 = {result}; $[0] = result; $[1] = t1; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-no-declarations-in-reactive-scope-with-early-return.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-no-declarations-in-reactive-scope-with-early-return.expect.md index 3a711300943..34fdc14a15f 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-no-declarations-in-reactive-scope-with-early-return.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-no-declarations-in-reactive-scope-with-early-return.expect.md @@ -43,7 +43,7 @@ function Component() { const items = useItems(); let t0; let t1; - if ($[0] !== items) { + if (!Object.is($[0], items)) { t1 = Symbol.for("react.early_return_sentinel"); bb0: { const filteredItems = items.filter(_temp); @@ -75,7 +75,7 @@ function Component() { return t1; } let t2; - if ($[4] !== t0) { + if (!Object.is($[4], t0)) { t2 = <>{t0}; $[4] = t0; $[5] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-no-value-for-temporary.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-no-value-for-temporary.expect.md index 9bc14d55080..270bedc3d03 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-no-value-for-temporary.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-no-value-for-temporary.expect.md @@ -21,7 +21,7 @@ function Component(listItem, thread) { let t0; let t1; let t2; - if ($[0] !== listItem || $[1] !== thread.threadType) { + if (!Object.is($[0], listItem) || !Object.is($[1], thread.threadType)) { const isFoo = isFooThread(thread.threadType); t1 = useBar; t2 = listItem; @@ -37,7 +37,7 @@ function Component(listItem, thread) { t2 = $[4]; } let t3; - if ($[5] !== t0) { + if (!Object.is($[5], t0)) { t3 = [t0]; $[5] = t0; $[6] = t3; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-object-expression-computed-key-modified-during-after-construction-hoisted-sequence-expr.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-object-expression-computed-key-modified-during-after-construction-hoisted-sequence-expr.expect.md index 407a9744250..dd5d4cd6459 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-object-expression-computed-key-modified-during-after-construction-hoisted-sequence-expr.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-object-expression-computed-key-modified-during-after-construction-hoisted-sequence-expr.expect.md @@ -63,7 +63,7 @@ import { identity, mutate } from "shared-runtime"; function Component(props) { const $ = _c(2); let t0; - if ($[0] !== props.value) { + if (!Object.is($[0], props.value)) { const key = {}; const tmp = (mutate(key), key); const context = { [tmp]: identity([props.value]) }; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-object-fromEntries-entries.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-object-fromEntries-entries.expect.md index b7ebcbc1cf6..97f8f267482 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-object-fromEntries-entries.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-object-fromEntries-entries.expect.md @@ -53,7 +53,7 @@ function Component(t0) { const $ = _c(4); const { items } = t0; let t1; - if ($[0] !== items) { + if (!Object.is($[0], items)) { t1 = Object.fromEntries(items.map(_temp)); $[0] = items; $[1] = t1; @@ -62,7 +62,7 @@ function Component(t0) { } const record = t1; let t2; - if ($[2] !== record) { + if (!Object.is($[2], record)) { t2 =
{Object.entries(record).map(_temp2)}
; $[2] = record; $[3] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-object-pattern.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-object-pattern.expect.md index ee19fc2e4c7..52473390925 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-object-pattern.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-object-pattern.expect.md @@ -23,7 +23,7 @@ function component(t) { const $ = _c(2); const { a } = t; let t0; - if ($[0] !== a) { + if (!Object.is($[0], a)) { t0 = { a }; $[0] = a; $[1] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-preserve-memoization-inner-destructured-value-mistaken-as-dependency.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-preserve-memoization-inner-destructured-value-mistaken-as-dependency.expect.md index abb45f88317..38b98886cfc 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-preserve-memoization-inner-destructured-value-mistaken-as-dependency.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-preserve-memoization-inner-destructured-value-mistaken-as-dependency.expect.md @@ -57,7 +57,7 @@ import { identity, Stringify } from "shared-runtime"; function useInputValue(input) { const $ = _c(4); let t0; - if ($[0] !== input) { + if (!Object.is($[0], input)) { t0 = identity(input); $[0] = input; $[1] = t0; @@ -66,7 +66,7 @@ function useInputValue(input) { } const { value } = t0; let t1; - if ($[2] !== value) { + if (!Object.is($[2], value)) { t1 = { value }; $[2] = value; $[3] = t1; @@ -89,7 +89,7 @@ function Component() { } const t1 = useInputValue(t0); let t2; - if ($[1] !== t1.value) { + if (!Object.is($[1], t1.value)) { t2 = ; $[1] = t1.value; $[2] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-propagate-type-of-ternary-jsx.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-propagate-type-of-ternary-jsx.expect.md index 32cbbb2b918..acf9ae20ba8 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-propagate-type-of-ternary-jsx.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-propagate-type-of-ternary-jsx.expect.md @@ -28,7 +28,7 @@ function V0(t0) { const { v1, v2 } = t0; const v5 = v1.v6?.v7; let t1; - if ($[0] !== v1 || $[1] !== v2 || $[2] !== v5) { + if (!Object.is($[0], v1) || !Object.is($[1], v2) || !Object.is($[2], v5)) { t1 = ( {v5 != null ? ( diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-propagate-type-of-ternary-nested.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-propagate-type-of-ternary-nested.expect.md index d02aaa38fa6..b10fe944b93 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-propagate-type-of-ternary-nested.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-propagate-type-of-ternary-nested.expect.md @@ -37,7 +37,7 @@ function V0(t0) { const { v1 } = t0; v5(V6.v7({ v8: V9.va })); let t1; - if ($[0] !== v1) { + if (!Object.is($[0], v1)) { t1 = ( gmhubcw diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-reassign-props.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-reassign-props.expect.md index 19c85c943e7..f9e23db3abd 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-reassign-props.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-reassign-props.expect.md @@ -25,7 +25,7 @@ import { Stringify, useIdentity } from "shared-runtime"; function Component(t0, ref) { const $ = _c(7); let props; - if ($[0] !== t0) { + if (!Object.is($[0], t0)) { let { other, ...t1 } = t0; props = t1; $[0] = t0; @@ -34,7 +34,7 @@ function Component(t0, ref) { props = $[1]; } let t1; - if ($[2] !== props || $[3] !== ref) { + if (!Object.is($[2], props) || !Object.is($[3], ref)) { t1 = [props, ref]; $[2] = props; $[3] = ref; @@ -44,7 +44,7 @@ function Component(t0, ref) { } [props, ref] = useIdentity(t1); let t2; - if ($[5] !== props) { + if (!Object.is($[5], props)) { t2 = ; $[5] = props; $[6] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-reassign-to-variable-without-mutable-range.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-reassign-to-variable-without-mutable-range.expect.md index 719ef502af1..88f3a511492 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-reassign-to-variable-without-mutable-range.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-reassign-to-variable-without-mutable-range.expect.md @@ -38,12 +38,12 @@ function Component(a, b) { t1 = $[1]; } let y = t1; - if ($[2] !== a || $[3] !== b) { + if (!Object.is($[2], a) || !Object.is($[3], b)) { const z = foo(a); if (FLAG) { x = bar(z); let t2; - if ($[6] !== b) { + if (!Object.is($[6], b)) { t2 = baz(b); $[6] = b; $[7] = t2; @@ -61,7 +61,7 @@ function Component(a, b) { y = $[5]; } let t2; - if ($[8] !== x || $[9] !== y) { + if (!Object.is($[8], x) || !Object.is($[9], y)) { t2 = [x, y]; $[8] = x; $[9] = y; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-ref-mutable-range.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-ref-mutable-range.expect.md index 533897ffc16..687ef97f33e 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-ref-mutable-range.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-ref-mutable-range.expect.md @@ -34,7 +34,7 @@ function Foo(props, ref) { const $ = _c(7); let t0; let value; - if ($[0] !== ref) { + if (!Object.is($[0], ref)) { t0 = Symbol.for("react.early_return_sentinel"); bb0: { value = {}; @@ -58,7 +58,7 @@ function Foo(props, ref) { } if (CONST_TRUE) { let t1; - if ($[3] !== ref) { + if (!Object.is($[3], ref)) { t1 = identity(ref); $[3] = ref; $[4] = t1; @@ -66,7 +66,7 @@ function Foo(props, ref) { t1 = $[4]; } let t2; - if ($[5] !== t1) { + if (!Object.is($[5], t1)) { t2 = ; $[5] = t1; $[6] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-renaming-conflicting-decls.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-renaming-conflicting-decls.expect.md index 8a56a464747..ec0ee28a6e8 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-renaming-conflicting-decls.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-renaming-conflicting-decls.expect.md @@ -49,7 +49,7 @@ function Component(props) { const $ = _c(10); let t0; let t1; - if ($[0] !== props) { + if (!Object.is($[0], props)) { t1 = Symbol.for("react.early_return_sentinel"); bb0: { const propsString = toJSON(props); @@ -70,7 +70,7 @@ function Component(props) { return t1; } let t2; - if ($[3] !== t0) { + if (!Object.is($[3], t0)) { const linkProps = { url: t0 }; const x = {}; let t3; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-returned-inner-fn-mutates-context.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-returned-inner-fn-mutates-context.expect.md index 5ba1dbd7804..18f61611de2 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-returned-inner-fn-mutates-context.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-returned-inner-fn-mutates-context.expect.md @@ -57,7 +57,7 @@ function Foo(t0) { const $ = _c(3); const { a, b } = t0; let t1; - if ($[0] !== a || $[1] !== b) { + if (!Object.is($[0], a) || !Object.is($[1], b)) { const obj = {}; const updaterFactory = () => (newValue) => { obj.value = newValue; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-returned-inner-fn-reassigns-context.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-returned-inner-fn-reassigns-context.expect.md index 690c21f0efc..fff261a98f5 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-returned-inner-fn-reassigns-context.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-returned-inner-fn-reassigns-context.expect.md @@ -68,7 +68,7 @@ function Foo(t0) { const arr = makeArray(b); fn(arr); let t1; - if ($[0] !== arr || $[1] !== myVar) { + if (!Object.is($[0], arr) || !Object.is($[1], myVar)) { t1 = ; $[0] = arr; $[1] = myVar; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-scope-missing-mutable-range.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-scope-missing-mutable-range.expect.md index b7c425ba5c0..34003c5c60a 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-scope-missing-mutable-range.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-scope-missing-mutable-range.expect.md @@ -23,7 +23,7 @@ function HomeDiscoStoreItemTileRating(props) { const $ = _c(4); const item = useFragment(); let count; - if ($[0] !== item?.aggregates) { + if (!Object.is($[0], item?.aggregates)) { count = 0; const aggregates = item?.aggregates || []; aggregates.forEach((aggregate) => { @@ -36,7 +36,7 @@ function HomeDiscoStoreItemTileRating(props) { count = $[1]; } let t0; - if ($[2] !== count) { + if (!Object.is($[2], count)) { t0 = {count}; $[2] = count; $[3] = t0; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-separate-scopes-for-divs.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-separate-scopes-for-divs.expect.md index 3dac481e08d..6e42590afc2 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-separate-scopes-for-divs.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-separate-scopes-for-divs.expect.md @@ -48,7 +48,7 @@ function Component(t0) { const { cond: t1, id } = t0; const cond = t1 === undefined ? false : t1; let t2; - if ($[0] !== id) { + if (!Object.is($[0], id)) { t2 = identity(styles.a, id !== null ? styles.b : {}); $[0] = id; $[1] = t2; @@ -56,7 +56,7 @@ function Component(t0) { t2 = $[1]; } let t3; - if ($[2] !== t2) { + if (!Object.is($[2], t2)) { t3 =
; $[2] = t2; $[3] = t3; @@ -64,7 +64,7 @@ function Component(t0) { t3 = $[3]; } let t4; - if ($[4] !== cond) { + if (!Object.is($[4], cond)) { t4 = cond === false && (
); @@ -74,7 +74,7 @@ function Component(t0) { t4 = $[5]; } let t5; - if ($[6] !== t3 || $[7] !== t4) { + if (!Object.is($[6], t3) || !Object.is($[7], t4)) { t5 = ( <> {t3} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-slow-validate-preserve-memo.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-slow-validate-preserve-memo.expect.md index 3238f43c073..4f4f38b9c20 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-slow-validate-preserve-memo.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-slow-validate-preserve-memo.expect.md @@ -36,7 +36,7 @@ function useTest(t0) { const $ = _c(3); const { isNull, data } = t0; let t1; - if ($[0] !== data || $[1] !== isNull) { + if (!Object.is($[0], data) || !Object.is($[1], isNull)) { t1 = Builder.makeBuilder(isNull, "hello world") ?.push("1", 2) ?.push(3, { a: 4, b: 5, c: data }) diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-stale-closure-forward-reference.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-stale-closure-forward-reference.expect.md index 01d1fe688ff..71769a318c9 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-stale-closure-forward-reference.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-stale-closure-forward-reference.expect.md @@ -60,7 +60,7 @@ function Test1() { const $ = _c(5); const [expire] = useState(5); let onClick; - if ($[0] !== expire) { + if (!Object.is($[0], expire)) { onClick = () => { console.log("isExpired", isExpired); }; @@ -72,7 +72,7 @@ function Test1() { onClick = $[1]; } let t0; - if ($[2] !== expire || $[3] !== onClick) { + if (!Object.is($[2], expire) || !Object.is($[3], onClick)) { t0 =
{expire}
; $[2] = expire; $[3] = onClick; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-undefined-expression-of-jsxexpressioncontainer.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-undefined-expression-of-jsxexpressioncontainer.expect.md index 5a67449fff4..bff25e2ff7a 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-undefined-expression-of-jsxexpressioncontainer.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-undefined-expression-of-jsxexpressioncontainer.expect.md @@ -51,7 +51,7 @@ function Component(props) { const $ = _c(2); const { buttons } = props; let t0; - if ($[0] !== buttons) { + if (!Object.is($[0], buttons)) { const [, ...nonPrimaryButtons] = buttons; const renderedNonPrimaryButtons = nonPrimaryButtons.map(_temp); t0 = {renderedNonPrimaryButtons}; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-unmerged-fbt-call-merge-overlapping-reactive-scopes.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-unmerged-fbt-call-merge-overlapping-reactive-scopes.expect.md index ee2c82048a9..29ada3c7c1a 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-unmerged-fbt-call-merge-overlapping-reactive-scopes.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-unmerged-fbt-call-merge-overlapping-reactive-scopes.expect.md @@ -38,7 +38,7 @@ import { Stringify } from "shared-runtime"; function Component(props) { const $ = _c(3); let t0; - if ($[0] !== props.cond || $[1] !== props.value.length) { + if (!Object.is($[0], props.cond) || !Object.is($[1], props.value.length)) { const label = fbt._( { "*": "{number} bars", _1: "1 bar" }, [fbt._plural(props.value.length, "number")], diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-unreachable-code-early-return-in-useMemo.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-unreachable-code-early-return-in-useMemo.expect.md index a1af1285ec8..6b0c7f7933b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-unreachable-code-early-return-in-useMemo.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-unreachable-code-early-return-in-useMemo.expect.md @@ -56,7 +56,7 @@ function Component(t0) { try { let t3; - if ($[0] !== value) { + if (!Object.is($[0], value)) { t3 = { value }; $[0] = value; $[1] = t3; @@ -70,7 +70,7 @@ function Component(t0) { } const result = t1; let t2; - if ($[2] !== value) { + if (!Object.is($[2], value)) { t2 = [value]; $[2] = value; $[3] = t2; @@ -78,7 +78,7 @@ function Component(t0) { t2 = $[3]; } let t3; - if ($[4] !== result || $[5] !== t2) { + if (!Object.is($[4], result) || !Object.is($[5], t2)) { t3 = ; $[4] = result; $[5] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-useMemo-if-else-both-early-return.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-useMemo-if-else-both-early-return.expect.md index acb3b72e3a4..fe7acde3b69 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-useMemo-if-else-both-early-return.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-useMemo-if-else-both-early-return.expect.md @@ -56,7 +56,7 @@ function Component(t0) { const $ = _c(7); const { cond } = t0; let t1; - if ($[0] !== cond) { + if (!Object.is($[0], cond)) { const value = makeObject_Primitives(); if (cond) { t1 = value; @@ -71,7 +71,7 @@ function Component(t0) { } const memoized = t1; let t2; - if ($[2] !== cond) { + if (!Object.is($[2], cond)) { t2 = [cond]; $[2] = cond; $[3] = t2; @@ -79,7 +79,7 @@ function Component(t0) { t2 = $[3]; } let t3; - if ($[4] !== memoized || $[5] !== t2) { + if (!Object.is($[4], memoized) || !Object.is($[5], t2)) { t3 = ; $[4] = memoized; $[5] = t2; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro.expect.md index 19102267cc1..be11bc31d00 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro.expect.md @@ -29,7 +29,7 @@ function Component(props) { const item = props.item; let baseVideos; let thumbnails; - if ($[0] !== item) { + if (!Object.is($[0], item)) { thumbnails = []; baseVideos = getBaseVideos(item); @@ -47,7 +47,7 @@ function Component(props) { thumbnails = $[2]; } let t0; - if ($[3] !== baseVideos || $[4] !== thumbnails) { + if (!Object.is($[3], baseVideos) || !Object.is($[4], thumbnails)) { t0 = ; $[3] = baseVideos; $[4] = thumbnails; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/resolve-react-hooks-based-on-import-name.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/resolve-react-hooks-based-on-import-name.expect.md index 496d61df9d7..3b5c54408e9 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/resolve-react-hooks-based-on-import-name.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/resolve-react-hooks-based-on-import-name.expect.md @@ -53,7 +53,7 @@ function Component() { t1 = $[1]; } let t2; - if ($[2] !== state) { + if (!Object.is($[2], state)) { t2 = ( <> Count {state} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/rest-param-with-array-pattern.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/rest-param-with-array-pattern.expect.md index aece9665c92..aa71d8f9364 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/rest-param-with-array-pattern.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/rest-param-with-array-pattern.expect.md @@ -21,7 +21,7 @@ function Component(foo, ...t0) { const $ = _c(3); const [bar] = t0; let t1; - if ($[0] !== bar || $[1] !== foo) { + if (!Object.is($[0], bar) || !Object.is($[1], foo)) { t1 = [foo, bar]; $[0] = bar; $[1] = foo; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/rest-param-with-identifier.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/rest-param-with-identifier.expect.md index 3681e9c4699..a0396512b8d 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/rest-param-with-identifier.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/rest-param-with-identifier.expect.md @@ -21,7 +21,7 @@ function Component(foo, ...t0) { const $ = _c(3); const bar = t0; let t1; - if ($[0] !== bar || $[1] !== foo) { + if (!Object.is($[0], bar) || !Object.is($[1], foo)) { t1 = [foo, bar]; $[0] = bar; $[1] = foo; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/rest-param-with-object-spread-pattern.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/rest-param-with-object-spread-pattern.expect.md index 3e66b200411..1b0f8cc0e1e 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/rest-param-with-object-spread-pattern.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/rest-param-with-object-spread-pattern.expect.md @@ -21,7 +21,7 @@ function Component(foo, ...t0) { const $ = _c(3); const { bar } = t0; let t1; - if ($[0] !== bar || $[1] !== foo) { + if (!Object.is($[0], bar) || !Object.is($[1], foo)) { t1 = [foo, bar]; $[0] = bar; $[1] = foo; diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/rules-of-hooks/allow-props-named-like-hooks.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/rules-of-hooks/allow-props-named-like-hooks.expect.md index 746e048b432..76f2966d7ab 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/rules-of-hooks/allow-props-named-like-hooks.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/rules-of-hooks/allow-props-named-like-hooks.expect.md @@ -40,7 +40,7 @@ function Component(t0) { if (useFeature) { const t1 = useFeature + useFeature; let t2; - if ($[0] !== t1 || $[1] !== useFeature) { + if (!Object.is($[0], t1) || !Object.is($[1], useFeature)) { t2 = [t1].push(-useFeature); $[0] = t1; $[1] = useFeature; @@ -54,7 +54,12 @@ function Component(t0) { const y = useFeature; const z = useFeature.useProperty; let t1; - if ($[3] !== useFeature || $[4] !== x || $[5] !== y || $[6] !== z) { + if ( + !Object.is($[3], useFeature) || + !Object.is($[4], x) || + !Object.is($[5], y) || + !Object.is($[6], z) + ) { t1 = ( {x} diff --git a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/rules-of-hooks/rules-of-hooks-9a47e97b5d13.expect.md b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/rules-of-hooks/rules-of-hooks-9a47e97b5d13.expect.md index 24b58ceff6f..99a18791d0b 100644 --- a/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/rules-of-hooks/rules-of-hooks-9a47e97b5d13.expect.md +++ b/compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/rules-of-hooks/rules-of-hooks-9a47e97b5d13.expect.md @@ -20,7 +20,7 @@ const FancyButton = React.forwardRef(function (props, ref) { const $ = _c(3); useHook(); let t0; - if ($[0] !== props || $[1] !== ref) { + if (!Object.is($[0], props) || !Object.is($[1], ref)) { t0 =