resolveIntegerOrFloatToken($tokens[$i + 1][1]); array_splice($tokens, $i, 2, [ [$tokenKind, '0' . $tokens[$i + 1][1], $tokens[$i][2]], ]); } } return $tokens; } private function resolveIntegerOrFloatToken(string $str): int { $str = substr($str, 1); $str = str_replace('_', '', $str); $num = octdec($str); return is_float($num) ? \T_DNUMBER : \T_LNUMBER; } public function reverseEmulate(string $code, array $tokens): array { // Explicit octals were not legal code previously, don't bother. return $tokens; } }