diff --git a/src/Standards/Squiz/Sniffs/Functions/FunctionDeclarationArgumentSpacingSniff.php b/src/Standards/Squiz/Sniffs/Functions/FunctionDeclarationArgumentSpacingSniff.php index 67eb63588b..41f2ffd2a6 100644 --- a/src/Standards/Squiz/Sniffs/Functions/FunctionDeclarationArgumentSpacingSniff.php +++ b/src/Standards/Squiz/Sniffs/Functions/FunctionDeclarationArgumentSpacingSniff.php @@ -11,6 +11,7 @@ use PHP_CodeSniffer\Sniffs\Sniff; use PHP_CodeSniffer\Files\File; +use PHP_CodeSniffer\Util\Tokens; class FunctionDeclarationArgumentSpacingSniff implements Sniff { @@ -203,7 +204,7 @@ public function processBracket($phpcsFile, $openBracket) // Before we throw an error, make sure there is no type hint. $comma = $phpcsFile->findPrevious(T_COMMA, ($nextParam - 1)); - $nextToken = $phpcsFile->findNext(T_WHITESPACE, ($comma + 1), null, true); + $nextToken = $phpcsFile->findNext(Tokens::$emptyTokens, ($comma + 1), null, true); if ($phpcsFile->isReference($nextToken) === true) { $nextToken++; } @@ -292,7 +293,7 @@ public function processBracket($phpcsFile, $openBracket) // Before we throw an error, make sure there is no type hint. $bracket = $phpcsFile->findPrevious(T_OPEN_PARENTHESIS, ($nextParam - 1)); - $nextToken = $phpcsFile->findNext(T_WHITESPACE, ($bracket + 1), null, true); + $nextToken = $phpcsFile->findNext(Tokens::$emptyTokens, ($bracket + 1), null, true); if ($phpcsFile->isReference($nextToken) === true) { $nextToken++; } diff --git a/src/Standards/Squiz/Tests/Functions/FunctionDeclarationArgumentSpacingUnitTest.inc b/src/Standards/Squiz/Tests/Functions/FunctionDeclarationArgumentSpacingUnitTest.inc index aa361153d8..1978a631f1 100644 --- a/src/Standards/Squiz/Tests/Functions/FunctionDeclarationArgumentSpacingUnitTest.inc +++ b/src/Standards/Squiz/Tests/Functions/FunctionDeclarationArgumentSpacingUnitTest.inc @@ -75,3 +75,12 @@ function MissingParamTypeInDocBlock(array$a = null, callable$c, \ArrayObject$o, function myFunc(...$args) {} function myFunc( ...$args) {} function myFunc(... $args) {} + +function foo( // comment + $bar, + \NS\ClassName $nsTypeHint, + /* not a type hint */ $baz, + string $withTypeHint +) { // comment + // ... +} diff --git a/src/Standards/Squiz/Tests/Functions/FunctionDeclarationArgumentSpacingUnitTest.inc.fixed b/src/Standards/Squiz/Tests/Functions/FunctionDeclarationArgumentSpacingUnitTest.inc.fixed index e8c26c6562..85aa332192 100644 --- a/src/Standards/Squiz/Tests/Functions/FunctionDeclarationArgumentSpacingUnitTest.inc.fixed +++ b/src/Standards/Squiz/Tests/Functions/FunctionDeclarationArgumentSpacingUnitTest.inc.fixed @@ -75,3 +75,12 @@ function MissingParamTypeInDocBlock(array $a=null, callable $c, \ArrayObject $o, function myFunc(...$args) {} function myFunc(...$args) {} function myFunc(... $args) {} + +function foo( // comment + $bar, + \NS\ClassName $nsTypeHint, + /* not a type hint */ $baz, + string $withTypeHint +) { // comment + // ... +} diff --git a/src/Standards/Squiz/Tests/Functions/FunctionDeclarationArgumentSpacingUnitTest.php b/src/Standards/Squiz/Tests/Functions/FunctionDeclarationArgumentSpacingUnitTest.php index dd1619ccd1..566489c4e4 100644 --- a/src/Standards/Squiz/Tests/Functions/FunctionDeclarationArgumentSpacingUnitTest.php +++ b/src/Standards/Squiz/Tests/Functions/FunctionDeclarationArgumentSpacingUnitTest.php @@ -49,6 +49,7 @@ public function getErrorList() 58 => 1, 73 => 7, 76 => 1, + 81 => 1, ]; }//end getErrorList()