From 6b28a29a420a9ace44bca6f708f2bd40e48ad88c Mon Sep 17 00:00:00 2001 From: Abdul Malik Ikhsan Date: Thu, 28 Aug 2025 23:07:37 +0700 Subject: [PATCH] [DeadCode] Skip non-public __clone() method on RemoveEmptyClassMethodRector --- .../Fixture/skip_private_clone.php.inc | 10 ++++++++++ .../ClassMethod/RemoveEmptyClassMethodRector.php | 4 ++++ 2 files changed, 14 insertions(+) create mode 100644 rules-tests/DeadCode/Rector/ClassMethod/RemoveEmptyClassMethodRector/Fixture/skip_private_clone.php.inc diff --git a/rules-tests/DeadCode/Rector/ClassMethod/RemoveEmptyClassMethodRector/Fixture/skip_private_clone.php.inc b/rules-tests/DeadCode/Rector/ClassMethod/RemoveEmptyClassMethodRector/Fixture/skip_private_clone.php.inc new file mode 100644 index 00000000000..0acf4250f95 --- /dev/null +++ b/rules-tests/DeadCode/Rector/ClassMethod/RemoveEmptyClassMethodRector/Fixture/skip_private_clone.php.inc @@ -0,0 +1,10 @@ +extends instanceof FullyQualified; } + if ($this->isName($classMethod, MethodName::CLONE)) { + return ! $classMethod->isPublic(); + } + return $this->isName($classMethod, MethodName::INVOKE); }