Merge branch 'PHP-5.6'

* PHP-5.6:
  Fix bug #67392: token_name() does not return name for T_POW and T_POW_EQUAL token
This commit is contained in:
Ferenc Kovacs 2014-06-07 15:29:29 +02:00
commit caf34bf189
2 changed files with 19 additions and 0 deletions

View file

@ -0,0 +1,15 @@
--TEST--
Bug 67395: token_name() does not return name for T_POW and T_POW_EQUAL token
--FILE--
<?php
$powToken = token_get_all('<?php **')[1][0];
var_dump(token_name($powToken));
$powEqualToken = token_get_all('<?php **=')[1][0];
var_dump(token_name($powEqualToken));
?>
--EXPECT--
string(5) "T_POW"
string(11) "T_POW_EQUAL"

View file

@ -160,6 +160,8 @@ void tokenizer_register_constants(INIT_FUNC_ARGS) {
REGISTER_LONG_CONSTANT("T_NS_SEPARATOR", T_NS_SEPARATOR, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("T_NS_SEPARATOR", T_NS_SEPARATOR, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("T_ELLIPSIS", T_ELLIPSIS, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("T_ELLIPSIS", T_ELLIPSIS, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("T_DOUBLE_COLON", T_PAAMAYIM_NEKUDOTAYIM, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("T_DOUBLE_COLON", T_PAAMAYIM_NEKUDOTAYIM, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("T_POW", T_POW, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("T_POW_EQUAL", T_POW_EQUAL, CONST_CS | CONST_PERSISTENT);
} }
char *get_token_type_name(int token_type) char *get_token_type_name(int token_type)
@ -296,6 +298,8 @@ char *get_token_type_name(int token_type)
case T_DIR: return "T_DIR"; case T_DIR: return "T_DIR";
case T_NS_SEPARATOR: return "T_NS_SEPARATOR"; case T_NS_SEPARATOR: return "T_NS_SEPARATOR";
case T_ELLIPSIS: return "T_ELLIPSIS"; case T_ELLIPSIS: return "T_ELLIPSIS";
case T_POW: return "T_POW";
case T_POW_EQUAL: return "T_POW_EQUAL";
} }
return "UNKNOWN"; return "UNKNOWN";