From 1a87a3dfcc2caaaa74b05b4318035ba2c697c559 Mon Sep 17 00:00:00 2001 From: Zing Date: Mon, 28 Jun 2021 17:26:50 +0800 Subject: [PATCH] [TypeDeclaration] Prevent checking class like has external fully qualifieds when class like is null (#319) --- .../Fixture/some_function.php.inc | 19 +++++++++++++++++++ .../TypeInferer/SilentVoidResolver.php | 2 +- 2 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 rules-tests/TypeDeclaration/Rector/ClassMethod/AddVoidReturnTypeWhereNoReturnRector/Fixture/some_function.php.inc diff --git a/rules-tests/TypeDeclaration/Rector/ClassMethod/AddVoidReturnTypeWhereNoReturnRector/Fixture/some_function.php.inc b/rules-tests/TypeDeclaration/Rector/ClassMethod/AddVoidReturnTypeWhereNoReturnRector/Fixture/some_function.php.inc new file mode 100644 index 00000000000..ed413fe5b16 --- /dev/null +++ b/rules-tests/TypeDeclaration/Rector/ClassMethod/AddVoidReturnTypeWhereNoReturnRector/Fixture/some_function.php.inc @@ -0,0 +1,19 @@ + +----- + diff --git a/rules/TypeDeclaration/TypeInferer/SilentVoidResolver.php b/rules/TypeDeclaration/TypeInferer/SilentVoidResolver.php index cd93e20cf26..508148b1348 100644 --- a/rules/TypeDeclaration/TypeInferer/SilentVoidResolver.php +++ b/rules/TypeDeclaration/TypeInferer/SilentVoidResolver.php @@ -48,7 +48,7 @@ public function hasExclusiveVoid(ClassMethod | Closure | Function_ $functionLike return false; } - if ($this->externalFullyQualifiedAnalyzer->hasExternalFullyQualifieds($classLike)) { + if ($classLike instanceof Stmt\Class_ && $this->externalFullyQualifiedAnalyzer->hasExternalFullyQualifieds($classLike)) { return false; }