diff --git a/src/Proxy/ProxyGenerator.php b/src/Proxy/ProxyGenerator.php index 416886926..10819f61a 100644 --- a/src/Proxy/ProxyGenerator.php +++ b/src/Proxy/ProxyGenerator.php @@ -1224,6 +1224,10 @@ private function formatType( if ($type instanceof ReflectionUnionType) { return implode('|', array_map( function (ReflectionType $unionedType) use ($method, $parameter) { + if ($unionedType instanceof ReflectionIntersectionType) { + return '(' . $this->formatType($unionedType, $method, $parameter) . ')'; + } + return $this->formatType($unionedType, $method, $parameter); }, $type->getTypes()