From 377e74be7d1d2189daa87469426112b2b1c262c4 Mon Sep 17 00:00:00 2001 From: Abdul Malik Ikhsan Date: Fri, 3 Oct 2025 12:18:51 +0700 Subject: [PATCH 1/4] [CodeQuality] Skip mix equal and identical on RepeatedOrEqualToInArrayRector --- .../Fixture/skip_mix_equal_and_identical.php.inc | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 rules-tests/CodeQuality/Rector/BooleanOr/RepeatedOrEqualToInArrayRector/Fixture/skip_mix_equal_and_identical.php.inc diff --git a/rules-tests/CodeQuality/Rector/BooleanOr/RepeatedOrEqualToInArrayRector/Fixture/skip_mix_equal_and_identical.php.inc b/rules-tests/CodeQuality/Rector/BooleanOr/RepeatedOrEqualToInArrayRector/Fixture/skip_mix_equal_and_identical.php.inc new file mode 100644 index 00000000000..63461f730a6 --- /dev/null +++ b/rules-tests/CodeQuality/Rector/BooleanOr/RepeatedOrEqualToInArrayRector/Fixture/skip_mix_equal_and_identical.php.inc @@ -0,0 +1,12 @@ + Date: Fri, 3 Oct 2025 12:21:54 +0700 Subject: [PATCH 2/4] Fix --- .../Rector/BooleanOr/RepeatedOrEqualToInArrayRector.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/rules/CodeQuality/Rector/BooleanOr/RepeatedOrEqualToInArrayRector.php b/rules/CodeQuality/Rector/BooleanOr/RepeatedOrEqualToInArrayRector.php index 4d0361a4476..583b2bba412 100644 --- a/rules/CodeQuality/Rector/BooleanOr/RepeatedOrEqualToInArrayRector.php +++ b/rules/CodeQuality/Rector/BooleanOr/RepeatedOrEqualToInArrayRector.php @@ -106,7 +106,13 @@ public function refactor(Node $node): ?FuncCall $identicals = $this->betterNodeFinder->findInstanceOf($node, Identical::class); $equals = $this->betterNodeFinder->findInstanceOf($node, Equal::class); - if ($identicals !== [] && $equals === []) { + if ($identicals !== []) { + if ($equals !== []) { + // mixed identical and equals, skip as is + // @see https://3v4l.org/24cFl + return null; + } + $args[] = new Arg(new ConstFetch(new Name('true'))); } From 98903c1ce3a05d72e5d8ff9eb463364d635cac86 Mon Sep 17 00:00:00 2001 From: Abdul Malik Ikhsan Date: Fri, 3 Oct 2025 12:22:05 +0700 Subject: [PATCH 3/4] Fix --- .../Rector/BooleanOr/RepeatedOrEqualToInArrayRector.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rules/CodeQuality/Rector/BooleanOr/RepeatedOrEqualToInArrayRector.php b/rules/CodeQuality/Rector/BooleanOr/RepeatedOrEqualToInArrayRector.php index 583b2bba412..8417a041564 100644 --- a/rules/CodeQuality/Rector/BooleanOr/RepeatedOrEqualToInArrayRector.php +++ b/rules/CodeQuality/Rector/BooleanOr/RepeatedOrEqualToInArrayRector.php @@ -108,7 +108,7 @@ public function refactor(Node $node): ?FuncCall if ($identicals !== []) { if ($equals !== []) { - // mixed identical and equals, skip as is + // mix identical and equals, skip as is // @see https://3v4l.org/24cFl return null; } From c9a601818288f794b6e33e06acb5fab7a1636cf1 Mon Sep 17 00:00:00 2001 From: Abdul Malik Ikhsan Date: Fri, 3 Oct 2025 12:22:16 +0700 Subject: [PATCH 4/4] Fix --- .../Rector/BooleanOr/RepeatedOrEqualToInArrayRector.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rules/CodeQuality/Rector/BooleanOr/RepeatedOrEqualToInArrayRector.php b/rules/CodeQuality/Rector/BooleanOr/RepeatedOrEqualToInArrayRector.php index 8417a041564..84d04e4ce9c 100644 --- a/rules/CodeQuality/Rector/BooleanOr/RepeatedOrEqualToInArrayRector.php +++ b/rules/CodeQuality/Rector/BooleanOr/RepeatedOrEqualToInArrayRector.php @@ -108,7 +108,7 @@ public function refactor(Node $node): ?FuncCall if ($identicals !== []) { if ($equals !== []) { - // mix identical and equals, skip as is + // mix identical and equals, keep as is // @see https://3v4l.org/24cFl return null; }