@@ -438,6 +438,29 @@ protected function checkForAssignment(File $phpcsFile, $stackPtr, $varName, $cur
438
438
return true ;
439
439
}
440
440
441
+ protected function checkForListShorthandAssignment (File $ phpcsFile , $ stackPtr , $ varName , $ currScope ) {
442
+ $ tokens = $ phpcsFile ->getTokens ();
443
+ $ token = $ tokens [$ stackPtr ];
444
+
445
+ // OK, are we within a [ ... ] construct?
446
+ $ openPtr = Helpers::findContainingOpeningSquareBracket ($ phpcsFile , $ stackPtr );
447
+ if ($ openPtr === false ) {
448
+ return false ;
449
+ }
450
+
451
+ // OK, we're a [ ... ] construct... are we being assigned to?
452
+ $ closePtr = Helpers::findContainingClosingSquareBracket ($ phpcsFile , $ stackPtr );
453
+ $ assignPtr = Helpers::isNextThingAnAssign ($ phpcsFile , $ closePtr );
454
+ if ($ assignPtr === false ) {
455
+ return false ;
456
+ }
457
+
458
+ // Yes, we're being assigned.
459
+ $ writtenPtr = Helpers::findWhereAssignExecuted ($ phpcsFile , $ assignPtr );
460
+ $ this ->markVariableAssignment ($ varName , $ writtenPtr , $ currScope );
461
+ return true ;
462
+ }
463
+
441
464
protected function checkForListAssignment (File $ phpcsFile , $ stackPtr , $ varName , $ currScope ) {
442
465
$ tokens = $ phpcsFile ->getTokens ();
443
466
$ token = $ tokens [$ stackPtr ];
@@ -737,6 +760,11 @@ protected function processVariable(File $phpcsFile, $stackPtr) {
737
760
return ;
738
761
}
739
762
763
+ // OK, are we within a [...] = construct?
764
+ if ($ this ->checkForListShorthandAssignment ($ phpcsFile , $ stackPtr , $ varName , $ currScope )) {
765
+ return ;
766
+ }
767
+
740
768
// Are we a global declaration?
741
769
if ($ this ->checkForGlobalDeclaration ($ phpcsFile , $ stackPtr , $ varName , $ currScope )) {
742
770
return ;
0 commit comments