@@ -2541,24 +2541,20 @@ public function enterAnonymousFunction(
25412541 {
25422542 $ variableTypes = [];
25432543 foreach ($ closure ->params as $ i => $ parameter ) {
2544- if ($ parameter ->type === null ) {
2545- if ($ callableParameters === null ) {
2546- $ parameterType = new MixedType ();
2547- } elseif (isset ($ callableParameters [$ i ])) {
2548- $ parameterType = $ callableParameters [$ i ]->getType ();
2549- } elseif (count ($ callableParameters ) > 0 ) {
2550- $ lastParameter = $ callableParameters [count ($ callableParameters ) - 1 ];
2551- if ($ lastParameter ->isVariadic ()) {
2552- $ parameterType = $ lastParameter ->getType ();
2553- } else {
2554- $ parameterType = new MixedType ();
2555- }
2544+ if ($ callableParameters === null || $ parameter ->type !== null ) {
2545+ $ isNullable = $ this ->isParameterValueNullable ($ parameter );
2546+ $ parameterType = $ this ->getFunctionType ($ parameter ->type , $ isNullable , $ parameter ->variadic );
2547+ } elseif (isset ($ callableParameters [$ i ])) {
2548+ $ parameterType = $ callableParameters [$ i ]->getType ();
2549+ } elseif (count ($ callableParameters ) > 0 ) {
2550+ $ lastParameter = $ callableParameters [count ($ callableParameters ) - 1 ];
2551+ if ($ lastParameter ->isVariadic ()) {
2552+ $ parameterType = $ lastParameter ->getType ();
25562553 } else {
25572554 $ parameterType = new MixedType ();
25582555 }
25592556 } else {
2560- $ isNullable = $ this ->isParameterValueNullable ($ parameter );
2561- $ parameterType = $ this ->getFunctionType ($ parameter ->type , $ isNullable , $ parameter ->variadic );
2557+ $ parameterType = new MixedType ();
25622558 }
25632559
25642560 if (!$ parameter ->var instanceof Variable || !is_string ($ parameter ->var ->name )) {
0 commit comments