Skip to content

Commit c4b9106

Browse files
committed
QueryBuilderExecuteMethodExtension - fix scenario where QueryBuilder::execute() return type is overriden by a stub
1 parent ebaa9eb commit c4b9106

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

src/Type/Doctrine/DBAL/QueryBuilder/QueryBuilderExecuteMethodExtension.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
use PHPStan\Type\DynamicMethodReturnTypeExtension;
1313
use PHPStan\Type\ObjectType;
1414
use PHPStan\Type\Type;
15+
use PHPStan\Type\TypeCombinator;
1516

1617
class QueryBuilderExecuteMethodExtension implements DynamicMethodReturnTypeExtension
1718
{
@@ -45,7 +46,7 @@ public function getTypeFromMethodCall(MethodReflection $methodReflection, Method
4546

4647
$name = $nameObject->toString();
4748
if ($name === 'select' || $name === 'addSelect') {
48-
return new ObjectType(ResultStatement::class);
49+
return TypeCombinator::intersect($defaultReturnType, new ObjectType(ResultStatement::class));
4950
}
5051

5152
$var = $var->var;

0 commit comments

Comments
 (0)