diff --git a/src/lint/linter/__tests__/xhpast/array-formatting.lint-test b/src/lint/linter/__tests__/xhpast/array-formatting.lint-test index 3dda317d..7ae23f5d 100644 --- a/src/lint/linter/__tests__/xhpast/array-formatting.lint-test +++ b/src/lint/linter/__tests__/xhpast/array-formatting.lint-test @@ -2,6 +2,7 @@ array ( 1, 2, 3 ); list ( $x, $y ) = array(); +[ 1, 2 , 3 ]; ~~~~~~~~~~ warning:3:6 warning:3:8 @@ -9,8 +10,11 @@ warning:3:16 warning:4:5 warning:4:7 warning:4:14 +warning:5:2 +warning:5:11 ~~~~~~~~~~ getTypeName()) { case 'n_ARRAY_LITERAL': + if (head($node->getTokens())->getTypeName() == '[') { + // Short array syntax. + continue 2; + } + $params = $node->getChildOfType(0, 'n_ARRAY_VALUE_LIST'); break; @@ -44,6 +49,7 @@ final class ArcanistCallParenthesesXHPASTLinterRule $tokens = $params->getTokens(); $first = head($tokens); + $leading = $first->getNonsemanticTokensBefore(); $leading_text = implode('', mpull($leading, 'getValue')); if (preg_match('/^\s+$/', $leading_text)) { diff --git a/src/lint/linter/xhpast/rules/ArcanistParenthesesSpacingXHPASTLinterRule.php b/src/lint/linter/xhpast/rules/ArcanistParenthesesSpacingXHPASTLinterRule.php index 7ad16a44..7d7f8c4d 100644 --- a/src/lint/linter/xhpast/rules/ArcanistParenthesesSpacingXHPASTLinterRule.php +++ b/src/lint/linter/xhpast/rules/ArcanistParenthesesSpacingXHPASTLinterRule.php @@ -29,12 +29,6 @@ final class ArcanistParenthesesSpacingXHPASTLinterRule $token_o = array_shift($tokens); $token_c = array_pop($tokens); - if ($token_o->getTypeName() !== '(') { - throw new Exception(pht('Expected open parentheses.')); - } - if ($token_c->getTypeName() !== ')') { - throw new Exception(pht('Expected close parentheses.')); - } $nonsem_o = $token_o->getNonsemanticTokensAfter(); $nonsem_c = $token_c->getNonsemanticTokensBefore();