supportsAbove('7.0') === false) { return; } $tokens = $phpcsFile->getTokens(); if (isset($tokens[$stackPtr]['scope_closer']) === false) { return; } $defaultToken = $stackPtr; $defaultCount = 0; $targetLevel = $tokens[$stackPtr]['level'] + 1; while ($defaultCount < 2 && ($defaultToken = $phpcsFile->findNext(array(\T_DEFAULT), $defaultToken + 1, $tokens[$stackPtr]['scope_closer'])) !== false) { // Same level or one below (= two default cases after each other). if ($tokens[$defaultToken]['level'] === $targetLevel || $tokens[$defaultToken]['level'] === ($targetLevel + 1)) { $defaultCount++; } } if ($defaultCount > 1) { $phpcsFile->addError( 'Switch statements can not have multiple default blocks since PHP 7.0', $stackPtr, 'Found' ); } } }