HEX
Server: Apache
System: Linux msm5694.mjhst.com 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User: camjab_ssh (1000)
PHP: 5.3.29
Disabled: NONE
Upload Files
File: //usr/src/php-7.2.34/Zend/zend_language_parser.output
Terminals unused in grammar

   "comment (T_COMMENT)"
   "doc comment (T_DOC_COMMENT)"
   "open tag (T_OPEN_TAG)"
   "open tag with echo (T_OPEN_TAG_WITH_ECHO)"
   "close tag (T_CLOSE_TAG)"
   "whitespace (T_WHITESPACE)"
   T_ERROR


Grammar

    0 $accept: start "end of file"

    1 start: top_statement_list

    2 reserved_non_modifiers: "include (T_INCLUDE)"
    3                       | "include_once (T_INCLUDE_ONCE)"
    4                       | "eval (T_EVAL)"
    5                       | "require (T_REQUIRE)"
    6                       | "require_once (T_REQUIRE_ONCE)"
    7                       | "or (T_LOGICAL_OR)"
    8                       | "xor (T_LOGICAL_XOR)"
    9                       | "and (T_LOGICAL_AND)"
   10                       | "instanceof (T_INSTANCEOF)"
   11                       | "new (T_NEW)"
   12                       | "clone (T_CLONE)"
   13                       | "exit (T_EXIT)"
   14                       | "if (T_IF)"
   15                       | "elseif (T_ELSEIF)"
   16                       | "else (T_ELSE)"
   17                       | "endif (T_ENDIF)"
   18                       | "echo (T_ECHO)"
   19                       | "do (T_DO)"
   20                       | "while (T_WHILE)"
   21                       | "endwhile (T_ENDWHILE)"
   22                       | "for (T_FOR)"
   23                       | "endfor (T_ENDFOR)"
   24                       | "foreach (T_FOREACH)"
   25                       | "endforeach (T_ENDFOREACH)"
   26                       | "declare (T_DECLARE)"
   27                       | "enddeclare (T_ENDDECLARE)"
   28                       | "as (T_AS)"
   29                       | "try (T_TRY)"
   30                       | "catch (T_CATCH)"
   31                       | "finally (T_FINALLY)"
   32                       | "throw (T_THROW)"
   33                       | "use (T_USE)"
   34                       | "insteadof (T_INSTEADOF)"
   35                       | "global (T_GLOBAL)"
   36                       | "var (T_VAR)"
   37                       | "unset (T_UNSET)"
   38                       | "isset (T_ISSET)"
   39                       | "empty (T_EMPTY)"
   40                       | "continue (T_CONTINUE)"
   41                       | "goto (T_GOTO)"
   42                       | "function (T_FUNCTION)"
   43                       | "const (T_CONST)"
   44                       | "return (T_RETURN)"
   45                       | "print (T_PRINT)"
   46                       | "yield (T_YIELD)"
   47                       | "list (T_LIST)"
   48                       | "switch (T_SWITCH)"
   49                       | "endswitch (T_ENDSWITCH)"
   50                       | "case (T_CASE)"
   51                       | "default (T_DEFAULT)"
   52                       | "break (T_BREAK)"
   53                       | "array (T_ARRAY)"
   54                       | "callable (T_CALLABLE)"
   55                       | "extends (T_EXTENDS)"
   56                       | "implements (T_IMPLEMENTS)"
   57                       | "namespace (T_NAMESPACE)"
   58                       | "trait (T_TRAIT)"
   59                       | "interface (T_INTERFACE)"
   60                       | "class (T_CLASS)"
   61                       | "__CLASS__ (T_CLASS_C)"
   62                       | "__TRAIT__ (T_TRAIT_C)"
   63                       | "__FUNCTION__ (T_FUNC_C)"
   64                       | "__METHOD__ (T_METHOD_C)"
   65                       | "__LINE__ (T_LINE)"
   66                       | "__FILE__ (T_FILE)"
   67                       | "__DIR__ (T_DIR)"
   68                       | "__NAMESPACE__ (T_NS_C)"

   69 semi_reserved: reserved_non_modifiers
   70              | "static (T_STATIC)"
   71              | "abstract (T_ABSTRACT)"
   72              | "final (T_FINAL)"
   73              | "private (T_PRIVATE)"
   74              | "protected (T_PROTECTED)"
   75              | "public (T_PUBLIC)"

   76 identifier: "identifier (T_STRING)"
   77           | semi_reserved

   78 top_statement_list: top_statement_list top_statement
   79                   | %empty

   80 namespace_name: "identifier (T_STRING)"
   81               | namespace_name "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"

   82 name: namespace_name
   83     | "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" namespace_name
   84     | "\\ (T_NS_SEPARATOR)" namespace_name

   85 top_statement: statement
   86              | function_declaration_statement
   87              | class_declaration_statement
   88              | trait_declaration_statement
   89              | interface_declaration_statement
   90              | "__halt_compiler (T_HALT_COMPILER)" '(' ')' ';'
   91              | "namespace (T_NAMESPACE)" namespace_name ';'

   92 $@1: %empty

   93 top_statement: "namespace (T_NAMESPACE)" namespace_name $@1 '{' top_statement_list '}'

   94 $@2: %empty

   95 top_statement: "namespace (T_NAMESPACE)" $@2 '{' top_statement_list '}'
   96              | "use (T_USE)" mixed_group_use_declaration ';'
   97              | "use (T_USE)" use_type group_use_declaration ';'
   98              | "use (T_USE)" use_declarations ';'
   99              | "use (T_USE)" use_type use_declarations ';'
  100              | "const (T_CONST)" const_list ';'

  101 use_type: "function (T_FUNCTION)"
  102         | "const (T_CONST)"

  103 group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}'
  104                      | "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}'

  105 mixed_group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}'
  106                            | "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}'

  107 possible_comma: %empty
  108               | ','

  109 inline_use_declarations: inline_use_declarations ',' inline_use_declaration
  110                        | inline_use_declaration

  111 unprefixed_use_declarations: unprefixed_use_declarations ',' unprefixed_use_declaration
  112                            | unprefixed_use_declaration

  113 use_declarations: use_declarations ',' use_declaration
  114                 | use_declaration

  115 inline_use_declaration: unprefixed_use_declaration
  116                       | use_type unprefixed_use_declaration

  117 unprefixed_use_declaration: namespace_name
  118                           | namespace_name "as (T_AS)" "identifier (T_STRING)"

  119 use_declaration: unprefixed_use_declaration
  120                | "\\ (T_NS_SEPARATOR)" unprefixed_use_declaration

  121 const_list: const_list ',' const_decl
  122           | const_decl

  123 inner_statement_list: inner_statement_list inner_statement
  124                     | %empty

  125 inner_statement: statement
  126                | function_declaration_statement
  127                | class_declaration_statement
  128                | trait_declaration_statement
  129                | interface_declaration_statement
  130                | "__halt_compiler (T_HALT_COMPILER)" '(' ')' ';'

  131 statement: '{' inner_statement_list '}'
  132          | if_stmt
  133          | alt_if_stmt
  134          | "while (T_WHILE)" '(' expr ')' while_statement
  135          | "do (T_DO)" statement "while (T_WHILE)" '(' expr ')' ';'
  136          | "for (T_FOR)" '(' for_exprs ';' for_exprs ';' for_exprs ')' for_statement
  137          | "switch (T_SWITCH)" '(' expr ')' switch_case_list
  138          | "break (T_BREAK)" optional_expr ';'
  139          | "continue (T_CONTINUE)" optional_expr ';'
  140          | "return (T_RETURN)" optional_expr ';'
  141          | "global (T_GLOBAL)" global_var_list ';'
  142          | "static (T_STATIC)" static_var_list ';'
  143          | "echo (T_ECHO)" echo_expr_list ';'
  144          | T_INLINE_HTML
  145          | expr ';'
  146          | "unset (T_UNSET)" '(' unset_variables ')' ';'
  147          | "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable ')' foreach_statement
  148          | "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable ')' foreach_statement

  149 $@3: %empty

  150 statement: "declare (T_DECLARE)" '(' const_list ')' $@3 declare_statement
  151          | ';'
  152          | "try (T_TRY)" '{' inner_statement_list '}' catch_list finally_statement
  153          | "throw (T_THROW)" expr ';'
  154          | "goto (T_GOTO)" "identifier (T_STRING)" ';'
  155          | "identifier (T_STRING)" ':'

  156 catch_list: %empty
  157           | catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list '}'

  158 catch_name_list: name
  159                | catch_name_list '|' name

  160 finally_statement: %empty
  161                  | "finally (T_FINALLY)" '{' inner_statement_list '}'

  162 unset_variables: unset_variable
  163                | unset_variables ',' unset_variable

  164 unset_variable: variable

  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

  166 is_reference: %empty
  167             | '&'

  168 is_variadic: %empty
  169            | "... (T_ELLIPSIS)"

  170 @4: %empty

  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}'

  172 @5: %empty

  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}'

  174 class_modifiers: class_modifier
  175                | class_modifiers class_modifier

  176 class_modifier: "abstract (T_ABSTRACT)"
  177               | "final (T_FINAL)"

  178 @6: %empty

  179 trait_declaration_statement: "trait (T_TRAIT)" @6 "identifier (T_STRING)" backup_doc_comment '{' class_statement_list '}'

  180 @7: %empty

  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 "identifier (T_STRING)" interface_extends_list backup_doc_comment '{' class_statement_list '}'

  182 extends_from: %empty
  183             | "extends (T_EXTENDS)" name

  184 interface_extends_list: %empty
  185                       | "extends (T_EXTENDS)" name_list

  186 implements_list: %empty
  187                | "implements (T_IMPLEMENTS)" name_list

  188 foreach_variable: variable
  189                 | '&' variable
  190                 | "list (T_LIST)" '(' array_pair_list ')'
  191                 | '[' array_pair_list ']'

  192 for_statement: statement
  193              | ':' inner_statement_list "endfor (T_ENDFOR)" ';'

  194 foreach_statement: statement
  195                  | ':' inner_statement_list "endforeach (T_ENDFOREACH)" ';'

  196 declare_statement: statement
  197                  | ':' inner_statement_list "enddeclare (T_ENDDECLARE)" ';'

  198 switch_case_list: '{' case_list '}'
  199                 | '{' ';' case_list '}'
  200                 | ':' case_list "endswitch (T_ENDSWITCH)" ';'
  201                 | ':' ';' case_list "endswitch (T_ENDSWITCH)" ';'

  202 case_list: %empty
  203          | case_list "case (T_CASE)" expr case_separator inner_statement_list
  204          | case_list "default (T_DEFAULT)" case_separator inner_statement_list

  205 case_separator: ':'
  206               | ';'

  207 while_statement: statement
  208                | ':' inner_statement_list "endwhile (T_ENDWHILE)" ';'

  209 if_stmt_without_else: "if (T_IF)" '(' expr ')' statement
  210                     | if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' statement

  211 if_stmt: if_stmt_without_else
  212        | if_stmt_without_else "else (T_ELSE)" statement

  213 alt_if_stmt_without_else: "if (T_IF)" '(' expr ')' ':' inner_statement_list
  214                         | alt_if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' ':' inner_statement_list

  215 alt_if_stmt: alt_if_stmt_without_else "endif (T_ENDIF)" ';'
  216            | alt_if_stmt_without_else "else (T_ELSE)" ':' inner_statement_list "endif (T_ENDIF)" ';'

  217 parameter_list: non_empty_parameter_list
  218               | %empty

  219 non_empty_parameter_list: parameter
  220                         | non_empty_parameter_list ',' parameter

  221 parameter: optional_type is_reference is_variadic "variable (T_VARIABLE)"
  222          | optional_type is_reference is_variadic "variable (T_VARIABLE)" '=' expr

  223 optional_type: %empty
  224              | type_expr

  225 type_expr: type
  226          | '?' type

  227 type: "array (T_ARRAY)"
  228     | "callable (T_CALLABLE)"
  229     | name

  230 return_type: %empty
  231            | ':' type_expr

  232 argument_list: '(' ')'
  233              | '(' non_empty_argument_list ')'

  234 non_empty_argument_list: argument
  235                        | non_empty_argument_list ',' argument

  236 argument: expr
  237         | "... (T_ELLIPSIS)" expr

  238 global_var_list: global_var_list ',' global_var
  239                | global_var

  240 global_var: simple_variable

  241 static_var_list: static_var_list ',' static_var
  242                | static_var

  243 static_var: "variable (T_VARIABLE)"
  244           | "variable (T_VARIABLE)" '=' expr

  245 class_statement_list: class_statement_list class_statement
  246                     | %empty

  247 class_statement: variable_modifiers property_list ';'
  248                | method_modifiers "const (T_CONST)" class_const_list ';'
  249                | "use (T_USE)" name_list trait_adaptations
  250                | method_modifiers function returns_ref identifier backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags

  251 name_list: name
  252          | name_list ',' name

  253 trait_adaptations: ';'
  254                  | '{' '}'
  255                  | '{' trait_adaptation_list '}'

  256 trait_adaptation_list: trait_adaptation
  257                      | trait_adaptation_list trait_adaptation

  258 trait_adaptation: trait_precedence ';'
  259                 | trait_alias ';'

  260 trait_precedence: absolute_trait_method_reference "insteadof (T_INSTEADOF)" name_list

  261 trait_alias: trait_method_reference "as (T_AS)" "identifier (T_STRING)"
  262            | trait_method_reference "as (T_AS)" reserved_non_modifiers
  263            | trait_method_reference "as (T_AS)" member_modifier identifier
  264            | trait_method_reference "as (T_AS)" member_modifier

  265 trait_method_reference: identifier
  266                       | absolute_trait_method_reference

  267 absolute_trait_method_reference: name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier

  268 method_body: ';'
  269            | '{' inner_statement_list '}'

  270 variable_modifiers: non_empty_member_modifiers
  271                   | "var (T_VAR)"

  272 method_modifiers: %empty
  273                 | non_empty_member_modifiers

  274 non_empty_member_modifiers: member_modifier
  275                           | non_empty_member_modifiers member_modifier

  276 member_modifier: "public (T_PUBLIC)"
  277                | "protected (T_PROTECTED)"
  278                | "private (T_PRIVATE)"
  279                | "static (T_STATIC)"
  280                | "abstract (T_ABSTRACT)"
  281                | "final (T_FINAL)"

  282 property_list: property_list ',' property
  283              | property

  284 property: "variable (T_VARIABLE)" backup_doc_comment
  285         | "variable (T_VARIABLE)" '=' expr backup_doc_comment

  286 class_const_list: class_const_list ',' class_const_decl
  287                 | class_const_decl

  288 class_const_decl: identifier '=' expr backup_doc_comment

  289 const_decl: "identifier (T_STRING)" '=' expr backup_doc_comment

  290 echo_expr_list: echo_expr_list ',' echo_expr
  291               | echo_expr

  292 echo_expr: expr

  293 for_exprs: %empty
  294          | non_empty_for_exprs

  295 non_empty_for_exprs: non_empty_for_exprs ',' expr
  296                    | expr

  297 @8: %empty

  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments extends_from implements_list backup_doc_comment '{' class_statement_list '}'

  299 new_expr: "new (T_NEW)" class_name_reference ctor_arguments
  300         | "new (T_NEW)" anonymous_class

  301 expr_without_variable: "list (T_LIST)" '(' array_pair_list ')' '=' expr
  302                      | '[' array_pair_list ']' '=' expr
  303                      | variable '=' expr
  304                      | variable '=' '&' variable
  305                      | "clone (T_CLONE)" expr
  306                      | variable "+= (T_PLUS_EQUAL)" expr
  307                      | variable "-= (T_MINUS_EQUAL)" expr
  308                      | variable "*= (T_MUL_EQUAL)" expr
  309                      | variable "**= (T_POW_EQUAL)" expr
  310                      | variable "/= (T_DIV_EQUAL)" expr
  311                      | variable ".= (T_CONCAT_EQUAL)" expr
  312                      | variable "%= (T_MOD_EQUAL)" expr
  313                      | variable "&= (T_AND_EQUAL)" expr
  314                      | variable "|= (T_OR_EQUAL)" expr
  315                      | variable "^= (T_XOR_EQUAL)" expr
  316                      | variable "<<= (T_SL_EQUAL)" expr
  317                      | variable ">>= (T_SR_EQUAL)" expr
  318                      | variable "++ (T_INC)"
  319                      | "++ (T_INC)" variable
  320                      | variable "-- (T_DEC)"
  321                      | "-- (T_DEC)" variable
  322                      | expr "|| (T_BOOLEAN_OR)" expr
  323                      | expr "&& (T_BOOLEAN_AND)" expr
  324                      | expr "or (T_LOGICAL_OR)" expr
  325                      | expr "and (T_LOGICAL_AND)" expr
  326                      | expr "xor (T_LOGICAL_XOR)" expr
  327                      | expr '|' expr
  328                      | expr '&' expr
  329                      | expr '^' expr
  330                      | expr '.' expr
  331                      | expr '+' expr
  332                      | expr '-' expr
  333                      | expr '*' expr
  334                      | expr "** (T_POW)" expr
  335                      | expr '/' expr
  336                      | expr '%' expr
  337                      | expr "<< (T_SL)" expr
  338                      | expr ">> (T_SR)" expr
  339                      | '+' expr
  340                      | '-' expr
  341                      | '!' expr
  342                      | '~' expr
  343                      | expr "=== (T_IS_IDENTICAL)" expr
  344                      | expr "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr "== (T_IS_EQUAL)" expr
  346                      | expr "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr '<' expr
  348                      | expr "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr '>' expr
  350                      | expr ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr "<=> (T_SPACESHIP)" expr
  352                      | expr "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | '(' expr ')'
  354                      | new_expr
  355                      | expr '?' expr ':' expr
  356                      | expr '?' ':' expr
  357                      | expr "?? (T_COALESCE)" expr
  358                      | internal_functions_in_yacc
  359                      | "(int) (T_INT_CAST)" expr
  360                      | "(double) (T_DOUBLE_CAST)" expr
  361                      | "(string) (T_STRING_CAST)" expr
  362                      | "(array) (T_ARRAY_CAST)" expr
  363                      | "(object) (T_OBJECT_CAST)" expr
  364                      | "(bool) (T_BOOL_CAST)" expr
  365                      | "(unset) (T_UNSET_CAST)" expr
  366                      | "exit (T_EXIT)" exit_expr
  367                      | '@' expr
  368                      | scalar
  369                      | '`' backticks_expr '`'
  370                      | "print (T_PRINT)" expr
  371                      | "yield (T_YIELD)"
  372                      | "yield (T_YIELD)" expr
  373                      | "yield (T_YIELD)" expr "=> (T_DOUBLE_ARROW)" expr
  374                      | "yield from (T_YIELD_FROM)" expr
  375                      | function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
  376                      | "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

  377 function: "function (T_FUNCTION)"

  378 backup_doc_comment: %empty

  379 backup_fn_flags: %empty

  380 returns_ref: %empty
  381            | '&'

  382 lexical_vars: %empty
  383             | "use (T_USE)" '(' lexical_var_list ')'

  384 lexical_var_list: lexical_var_list ',' lexical_var
  385                 | lexical_var

  386 lexical_var: "variable (T_VARIABLE)"
  387            | '&' "variable (T_VARIABLE)"

  388 function_call: name argument_list
  389              | class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list
  390              | variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list
  391              | callable_expr argument_list

  392 class_name: "static (T_STATIC)"
  393           | name

  394 class_name_reference: class_name
  395                     | new_variable

  396 exit_expr: %empty
  397          | '(' optional_expr ')'

  398 backticks_expr: %empty
  399               | "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"
  400               | encaps_list

  401 ctor_arguments: %empty
  402               | argument_list

  403 dereferencable_scalar: "array (T_ARRAY)" '(' array_pair_list ')'
  404                      | '[' array_pair_list ']'
  405                      | "quoted-string (T_CONSTANT_ENCAPSED_STRING)"

  406 scalar: "integer number (T_LNUMBER)"
  407       | "floating-point number (T_DNUMBER)"
  408       | "__LINE__ (T_LINE)"
  409       | "__FILE__ (T_FILE)"
  410       | "__DIR__ (T_DIR)"
  411       | "__TRAIT__ (T_TRAIT_C)"
  412       | "__METHOD__ (T_METHOD_C)"
  413       | "__FUNCTION__ (T_FUNC_C)"
  414       | "__NAMESPACE__ (T_NS_C)"
  415       | "__CLASS__ (T_CLASS_C)"
  416       | "heredoc start (T_START_HEREDOC)" "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" "heredoc end (T_END_HEREDOC)"
  417       | "heredoc start (T_START_HEREDOC)" "heredoc end (T_END_HEREDOC)"
  418       | '"' encaps_list '"'
  419       | "heredoc start (T_START_HEREDOC)" encaps_list "heredoc end (T_END_HEREDOC)"
  420       | dereferencable_scalar
  421       | constant

  422 constant: name
  423         | class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier
  424         | variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier

  425 expr: variable
  426     | expr_without_variable

  427 optional_expr: %empty
  428              | expr

  429 variable_class_name: dereferencable

  430 dereferencable: variable
  431               | '(' expr ')'
  432               | dereferencable_scalar

  433 callable_expr: callable_variable
  434              | '(' expr ')'
  435              | dereferencable_scalar

  436 callable_variable: simple_variable
  437                  | dereferencable '[' optional_expr ']'
  438                  | constant '[' optional_expr ']'
  439                  | dereferencable '{' expr '}'
  440                  | dereferencable "-> (T_OBJECT_OPERATOR)" property_name argument_list
  441                  | function_call

  442 variable: callable_variable
  443         | static_member
  444         | dereferencable "-> (T_OBJECT_OPERATOR)" property_name

  445 simple_variable: "variable (T_VARIABLE)"
  446                | '$' '{' expr '}'
  447                | '$' simple_variable

  448 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable
  449              | variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable

  450 new_variable: simple_variable
  451             | new_variable '[' optional_expr ']'
  452             | new_variable '{' expr '}'
  453             | new_variable "-> (T_OBJECT_OPERATOR)" property_name
  454             | class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable
  455             | new_variable ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable

  456 member_name: identifier
  457            | '{' expr '}'
  458            | simple_variable

  459 property_name: "identifier (T_STRING)"
  460              | '{' expr '}'
  461              | simple_variable

  462 array_pair_list: non_empty_array_pair_list

  463 possible_array_pair: %empty
  464                    | array_pair

  465 non_empty_array_pair_list: non_empty_array_pair_list ',' possible_array_pair
  466                          | possible_array_pair

  467 array_pair: expr "=> (T_DOUBLE_ARROW)" expr
  468           | expr
  469           | expr "=> (T_DOUBLE_ARROW)" '&' variable
  470           | '&' variable
  471           | expr "=> (T_DOUBLE_ARROW)" "list (T_LIST)" '(' array_pair_list ')'
  472           | "list (T_LIST)" '(' array_pair_list ')'

  473 encaps_list: encaps_list encaps_var
  474            | encaps_list "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"
  475            | encaps_var
  476            | "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" encaps_var

  477 encaps_var: "variable (T_VARIABLE)"
  478           | "variable (T_VARIABLE)" '[' encaps_var_offset ']'
  479           | "variable (T_VARIABLE)" "-> (T_OBJECT_OPERATOR)" "identifier (T_STRING)"
  480           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" expr '}'
  481           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '}'
  482           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' expr ']' '}'
  483           | "{$ (T_CURLY_OPEN)" variable '}'

  484 encaps_var_offset: "identifier (T_STRING)"
  485                  | "number (T_NUM_STRING)"
  486                  | '-' "number (T_NUM_STRING)"
  487                  | "variable (T_VARIABLE)"

  488 internal_functions_in_yacc: "isset (T_ISSET)" '(' isset_variables ')'
  489                           | "empty (T_EMPTY)" '(' expr ')'
  490                           | "include (T_INCLUDE)" expr
  491                           | "include_once (T_INCLUDE_ONCE)" expr
  492                           | "eval (T_EVAL)" '(' expr ')'
  493                           | "require (T_REQUIRE)" expr
  494                           | "require_once (T_REQUIRE_ONCE)" expr

  495 isset_variables: isset_variable
  496                | isset_variables ',' isset_variable

  497 isset_variable: expr


Terminals, with rules where they appear

"end of file" (0) 0
'!' (33) 341
'"' (34) 418
'$' (36) 446 447
'%' (37) 336
'&' (38) 167 189 304 328 381 387 469 470
'(' (40) 90 130 134 135 136 137 146 147 148 150 157 165 190 209 210
    213 214 232 233 250 301 353 375 376 383 397 403 431 434 471 472
    488 489 492
')' (41) 90 130 134 135 136 137 146 147 148 150 157 165 190 209 210
    213 214 232 233 250 301 353 375 376 383 397 403 431 434 471 472
    488 489 492
'*' (42) 333
'+' (43) 331 339
',' (44) 108 109 111 113 121 163 220 235 238 241 252 282 286 290 295
    384 465 496
'-' (45) 332 340 486
'.' (46) 330
'/' (47) 335
':' (58) 155 193 195 197 200 201 205 208 213 214 216 231 355 356
';' (59) 90 91 96 97 98 99 100 130 135 136 138 139 140 141 142 143
    145 146 151 153 154 193 195 197 199 200 201 206 208 215 216 247
    248 253 258 259 268
'<' (60) 347
'=' (61) 222 244 285 288 289 301 302 303 304
'>' (62) 349
'?' (63) 226 355 356
'@' (64) 367
'[' (91) 191 302 404 437 438 451 478 482
']' (93) 191 302 404 437 438 451 478 482
'^' (94) 329
'`' (96) 369
'{' (123) 93 95 103 104 105 106 131 152 157 161 165 171 173 179 181
    198 199 254 255 269 298 375 376 439 446 452 457 460
'|' (124) 159 327
'}' (125) 93 95 103 104 105 106 131 152 157 161 165 171 173 179 181
    198 199 254 255 269 298 375 376 439 446 452 457 460 480 481 482
    483
'~' (126) 342
error (256)
"include (T_INCLUDE)" (258) 2 490
"include_once (T_INCLUDE_ONCE)" (259) 3 491
"eval (T_EVAL)" (260) 4 492
"require (T_REQUIRE)" (261) 5 493
"require_once (T_REQUIRE_ONCE)" (262) 6 494
"or (T_LOGICAL_OR)" (263) 7 324
"xor (T_LOGICAL_XOR)" (264) 8 326
"and (T_LOGICAL_AND)" (265) 9 325
"print (T_PRINT)" (266) 45 370
"yield (T_YIELD)" (267) 46 371 372 373
"=> (T_DOUBLE_ARROW)" (268) 148 373 467 469 471
"yield from (T_YIELD_FROM)" (269) 374
"+= (T_PLUS_EQUAL)" (270) 306
"-= (T_MINUS_EQUAL)" (271) 307
"*= (T_MUL_EQUAL)" (272) 308
"/= (T_DIV_EQUAL)" (273) 310
".= (T_CONCAT_EQUAL)" (274) 311
"%= (T_MOD_EQUAL)" (275) 312
"&= (T_AND_EQUAL)" (276) 313
"|= (T_OR_EQUAL)" (277) 314
"^= (T_XOR_EQUAL)" (278) 315
"<<= (T_SL_EQUAL)" (279) 316
">>= (T_SR_EQUAL)" (280) 317
"**= (T_POW_EQUAL)" (281) 309
"?? (T_COALESCE)" (282) 357
"|| (T_BOOLEAN_OR)" (283) 322
"&& (T_BOOLEAN_AND)" (284) 323
"== (T_IS_EQUAL)" (285) 345
"!= (T_IS_NOT_EQUAL)" (286) 346
"=== (T_IS_IDENTICAL)" (287) 343
"!== (T_IS_NOT_IDENTICAL)" (288) 344
"<=> (T_SPACESHIP)" (289) 351
"<= (T_IS_SMALLER_OR_EQUAL)" (290) 348
">= (T_IS_GREATER_OR_EQUAL)" (291) 350
"<< (T_SL)" (292) 337
">> (T_SR)" (293) 338
"instanceof (T_INSTANCEOF)" (294) 10 352
"++ (T_INC)" (295) 318 319
"-- (T_DEC)" (296) 320 321
"(int) (T_INT_CAST)" (297) 359
"(double) (T_DOUBLE_CAST)" (298) 360
"(string) (T_STRING_CAST)" (299) 361
"(array) (T_ARRAY_CAST)" (300) 362
"(object) (T_OBJECT_CAST)" (301) 363
"(bool) (T_BOOL_CAST)" (302) 364
"(unset) (T_UNSET_CAST)" (303) 365
"** (T_POW)" (304) 334
"new (T_NEW)" (305) 11 299 300
"clone (T_CLONE)" (306) 12 305
T_NOELSE (307)
"elseif (T_ELSEIF)" (308) 15 210 214
"else (T_ELSE)" (309) 16 212 216
"endif (T_ENDIF)" (310) 17 215 216
"static (T_STATIC)" (311) 70 142 279 376 392
"abstract (T_ABSTRACT)" (312) 71 176 280
"final (T_FINAL)" (313) 72 177 281
"private (T_PRIVATE)" (314) 73 278
"protected (T_PROTECTED)" (315) 74 277
"public (T_PUBLIC)" (316) 75 276
"integer number (T_LNUMBER)" (317) 406
"floating-point number (T_DNUMBER)" (318) 407
"identifier (T_STRING)" (319) 76 80 81 118 154 155 165 171 173 179
    181 261 289 459 479 484
"variable (T_VARIABLE)" (320) 157 221 222 243 244 284 285 386 387 445
    477 478 479 487
T_INLINE_HTML (321) 144
"quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" (322) 399
    416 474 476
"quoted-string (T_CONSTANT_ENCAPSED_STRING)" (323) 405
"variable name (T_STRING_VARNAME)" (324) 481 482
"number (T_NUM_STRING)" (325) 485 486
"exit (T_EXIT)" (326) 13 366
"if (T_IF)" (327) 14 209 213
"echo (T_ECHO)" (328) 18 143
"do (T_DO)" (329) 19 135
"while (T_WHILE)" (330) 20 134 135
"endwhile (T_ENDWHILE)" (331) 21 208
"for (T_FOR)" (332) 22 136
"endfor (T_ENDFOR)" (333) 23 193
"foreach (T_FOREACH)" (334) 24 147 148
"endforeach (T_ENDFOREACH)" (335) 25 195
"declare (T_DECLARE)" (336) 26 150
"enddeclare (T_ENDDECLARE)" (337) 27 197
"as (T_AS)" (338) 28 118 147 148 261 262 263 264
"switch (T_SWITCH)" (339) 48 137
"endswitch (T_ENDSWITCH)" (340) 49 200 201
"case (T_CASE)" (341) 50 203
"default (T_DEFAULT)" (342) 51 204
"break (T_BREAK)" (343) 52 138
"continue (T_CONTINUE)" (344) 40 139
"goto (T_GOTO)" (345) 41 154
"function (T_FUNCTION)" (346) 42 101 377
"const (T_CONST)" (347) 43 100 102 248
"return (T_RETURN)" (348) 44 140
"try (T_TRY)" (349) 29 152
"catch (T_CATCH)" (350) 30 157
"finally (T_FINALLY)" (351) 31 161
"throw (T_THROW)" (352) 32 153
"use (T_USE)" (353) 33 96 97 98 99 249 383
"insteadof (T_INSTEADOF)" (354) 34 260
"global (T_GLOBAL)" (355) 35 141
"var (T_VAR)" (356) 36 271
"unset (T_UNSET)" (357) 37 146
"isset (T_ISSET)" (358) 38 488
"empty (T_EMPTY)" (359) 39 489
"__halt_compiler (T_HALT_COMPILER)" (360) 90 130
"class (T_CLASS)" (361) 60 171 173 298
"trait (T_TRAIT)" (362) 58 179
"interface (T_INTERFACE)" (363) 59 181
"extends (T_EXTENDS)" (364) 55 183 185
"implements (T_IMPLEMENTS)" (365) 56 187
"-> (T_OBJECT_OPERATOR)" (366) 440 444 453 479
"list (T_LIST)" (367) 47 190 301 471 472
"array (T_ARRAY)" (368) 53 227 403
"callable (T_CALLABLE)" (369) 54 228
"__LINE__ (T_LINE)" (370) 65 408
"__FILE__ (T_FILE)" (371) 66 409
"__DIR__ (T_DIR)" (372) 67 410
"__CLASS__ (T_CLASS_C)" (373) 61 415
"__TRAIT__ (T_TRAIT_C)" (374) 62 411
"__METHOD__ (T_METHOD_C)" (375) 64 412
"__FUNCTION__ (T_FUNC_C)" (376) 63 413
"comment (T_COMMENT)" (377)
"doc comment (T_DOC_COMMENT)" (378)
"open tag (T_OPEN_TAG)" (379)
"open tag with echo (T_OPEN_TAG_WITH_ECHO)" (380)
"close tag (T_CLOSE_TAG)" (381)
"whitespace (T_WHITESPACE)" (382)
"heredoc start (T_START_HEREDOC)" (383) 416 417 419
"heredoc end (T_END_HEREDOC)" (384) 416 417 419
"${ (T_DOLLAR_OPEN_CURLY_BRACES)" (385) 480 481 482
"{$ (T_CURLY_OPEN)" (386) 483
":: (T_PAAMAYIM_NEKUDOTAYIM)" (387) 267 389 390 423 424 448 449 454
    455
"namespace (T_NAMESPACE)" (388) 57 83 91 93 95
"__NAMESPACE__ (T_NS_C)" (389) 68 414
"\\ (T_NS_SEPARATOR)" (390) 81 83 84 103 104 105 106 120
"... (T_ELLIPSIS)" (391) 169 237
T_ERROR (392)


Nonterminals, with rules where they appear

$accept (166)
    on left: 0
start (167)
    on left: 1, on right: 0
reserved_non_modifiers (168)
    on left: 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
    23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
    44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
    65 66 67 68, on right: 69 262
semi_reserved (169)
    on left: 69 70 71 72 73 74 75, on right: 77
identifier (170)
    on left: 76 77, on right: 250 263 265 267 288 423 424 456
top_statement_list (171)
    on left: 78 79, on right: 1 78 93 95
namespace_name (172)
    on left: 80 81, on right: 81 82 83 84 91 93 103 104 105 106 117
    118
name (173)
    on left: 82 83 84, on right: 158 159 183 229 251 252 267 388 393
    422
top_statement (174)
    on left: 85 86 87 88 89 90 91 93 95 96 97 98 99 100, on right:
    78
$@1 (175)
    on left: 92, on right: 93
$@2 (176)
    on left: 94, on right: 95
use_type (177)
    on left: 101 102, on right: 97 99 116
group_use_declaration (178)
    on left: 103 104, on right: 97
mixed_group_use_declaration (179)
    on left: 105 106, on right: 96
possible_comma (180)
    on left: 107 108, on right: 103 104 105 106
inline_use_declarations (181)
    on left: 109 110, on right: 105 106 109
unprefixed_use_declarations (182)
    on left: 111 112, on right: 103 104 111
use_declarations (183)
    on left: 113 114, on right: 98 99 113
inline_use_declaration (184)
    on left: 115 116, on right: 109 110
unprefixed_use_declaration (185)
    on left: 117 118, on right: 111 112 115 116 119 120
use_declaration (186)
    on left: 119 120, on right: 113 114
const_list (187)
    on left: 121 122, on right: 100 121 150
inner_statement_list (188)
    on left: 123 124, on right: 123 131 152 157 161 165 193 195 197
    203 204 208 213 214 216 269 375 376
inner_statement (189)
    on left: 125 126 127 128 129 130, on right: 123
statement (190)
    on left: 131 132 133 134 135 136 137 138 139 140 141 142 143 144
    145 146 147 148 150 151 152 153 154 155, on right: 85 125 135 192
    194 196 207 209 210 212
$@3 (191)
    on left: 149, on right: 150
catch_list (192)
    on left: 156 157, on right: 152 157
catch_name_list (193)
    on left: 158 159, on right: 157 159
finally_statement (194)
    on left: 160 161, on right: 152
unset_variables (195)
    on left: 162 163, on right: 146 163
unset_variable (196)
    on left: 164, on right: 162 163
function_declaration_statement (197)
    on left: 165, on right: 86 126
is_reference (198)
    on left: 166 167, on right: 221 222
is_variadic (199)
    on left: 168 169, on right: 221 222
class_declaration_statement (200)
    on left: 171 173, on right: 87 127
@4 (201)
    on left: 170, on right: 171
@5 (202)
    on left: 172, on right: 173
class_modifiers (203)
    on left: 174 175, on right: 171 175
class_modifier (204)
    on left: 176 177, on right: 174 175
trait_declaration_statement (205)
    on left: 179, on right: 88 128
@6 (206)
    on left: 178, on right: 179
interface_declaration_statement (207)
    on left: 181, on right: 89 129
@7 (208)
    on left: 180, on right: 181
extends_from (209)
    on left: 182 183, on right: 171 173 298
interface_extends_list (210)
    on left: 184 185, on right: 181
implements_list (211)
    on left: 186 187, on right: 171 173 298
foreach_variable (212)
    on left: 188 189 190 191, on right: 147 148
for_statement (213)
    on left: 192 193, on right: 136
foreach_statement (214)
    on left: 194 195, on right: 147 148
declare_statement (215)
    on left: 196 197, on right: 150
switch_case_list (216)
    on left: 198 199 200 201, on right: 137
case_list (217)
    on left: 202 203 204, on right: 198 199 200 201 203 204
case_separator (218)
    on left: 205 206, on right: 203 204
while_statement (219)
    on left: 207 208, on right: 134
if_stmt_without_else (220)
    on left: 209 210, on right: 210 211 212
if_stmt (221)
    on left: 211 212, on right: 132
alt_if_stmt_without_else (222)
    on left: 213 214, on right: 214 215 216
alt_if_stmt (223)
    on left: 215 216, on right: 133
parameter_list (224)
    on left: 217 218, on right: 165 250 375 376
non_empty_parameter_list (225)
    on left: 219 220, on right: 217 220
parameter (226)
    on left: 221 222, on right: 219 220
optional_type (227)
    on left: 223 224, on right: 221 222
type_expr (228)
    on left: 225 226, on right: 224 231
type (229)
    on left: 227 228 229, on right: 225 226
return_type (230)
    on left: 230 231, on right: 165 250 375 376
argument_list (231)
    on left: 232 233, on right: 388 389 390 391 402 440
non_empty_argument_list (232)
    on left: 234 235, on right: 233 235
argument (233)
    on left: 236 237, on right: 234 235
global_var_list (234)
    on left: 238 239, on right: 141 238
global_var (235)
    on left: 240, on right: 238 239
static_var_list (236)
    on left: 241 242, on right: 142 241
static_var (237)
    on left: 243 244, on right: 241 242
class_statement_list (238)
    on left: 245 246, on right: 171 173 179 181 245 298
class_statement (239)
    on left: 247 248 249 250, on right: 245
name_list (240)
    on left: 251 252, on right: 185 187 249 252 260
trait_adaptations (241)
    on left: 253 254 255, on right: 249
trait_adaptation_list (242)
    on left: 256 257, on right: 255 257
trait_adaptation (243)
    on left: 258 259, on right: 256 257
trait_precedence (244)
    on left: 260, on right: 258
trait_alias (245)
    on left: 261 262 263 264, on right: 259
trait_method_reference (246)
    on left: 265 266, on right: 261 262 263 264
absolute_trait_method_reference (247)
    on left: 267, on right: 260 266
method_body (248)
    on left: 268 269, on right: 250
variable_modifiers (249)
    on left: 270 271, on right: 247
method_modifiers (250)
    on left: 272 273, on right: 248 250
non_empty_member_modifiers (251)
    on left: 274 275, on right: 270 273 275
member_modifier (252)
    on left: 276 277 278 279 280 281, on right: 263 264 274 275
property_list (253)
    on left: 282 283, on right: 247 282
property (254)
    on left: 284 285, on right: 282 283
class_const_list (255)
    on left: 286 287, on right: 248 286
class_const_decl (256)
    on left: 288, on right: 286 287
const_decl (257)
    on left: 289, on right: 121 122
echo_expr_list (258)
    on left: 290 291, on right: 143 290
echo_expr (259)
    on left: 292, on right: 290 291
for_exprs (260)
    on left: 293 294, on right: 136
non_empty_for_exprs (261)
    on left: 295 296, on right: 294 295
anonymous_class (262)
    on left: 298, on right: 300
@8 (263)
    on left: 297, on right: 298
new_expr (264)
    on left: 299 300, on right: 354
expr_without_variable (265)
    on left: 301 302 303 304 305 306 307 308 309 310 311 312 313 314
    315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330
    331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346
    347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362
    363 364 365 366 367 368 369 370 371 372 373 374 375 376, on right:
    426
function (266)
    on left: 377, on right: 165 250 375 376
backup_doc_comment (267)
    on left: 378, on right: 165 171 173 179 181 250 284 285 288 289
    298 375 376
backup_fn_flags (268)
    on left: 379, on right: 165 250 375 376
returns_ref (269)
    on left: 380 381, on right: 165 250 375 376
lexical_vars (270)
    on left: 382 383, on right: 375 376
lexical_var_list (271)
    on left: 384 385, on right: 383 384
lexical_var (272)
    on left: 386 387, on right: 384 385
function_call (273)
    on left: 388 389 390 391, on right: 441
class_name (274)
    on left: 392 393, on right: 389 394 423 448 454
class_name_reference (275)
    on left: 394 395, on right: 299 352
exit_expr (276)
    on left: 396 397, on right: 366
backticks_expr (277)
    on left: 398 399 400, on right: 369
ctor_arguments (278)
    on left: 401 402, on right: 298 299
dereferencable_scalar (279)
    on left: 403 404 405, on right: 420 432 435
scalar (280)
    on left: 406 407 408 409 410 411 412 413 414 415 416 417 418 419
    420 421, on right: 368
constant (281)
    on left: 422 423 424, on right: 421 438
expr (282)
    on left: 425 426, on right: 134 135 137 145 147 148 153 203 209
    210 213 214 222 236 237 244 285 288 289 292 295 296 301 302 303
    305 306 307 308 309 310 311 312 313 314 315 316 317 322 323 324
    325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340
    341 342 343 344 345 346 347 348 349 350 351 352 353 355 356 357
    359 360 361 362 363 364 365 367 370 372 373 374 428 431 434 439
    446 452 457 460 467 468 469 471 480 482 489 490 491 492 493 494
    497
optional_expr (283)
    on left: 427 428, on right: 138 139 140 397 437 438 451
variable_class_name (284)
    on left: 429, on right: 390 424 449
dereferencable (285)
    on left: 430 431 432, on right: 429 437 439 440 444
callable_expr (286)
    on left: 433 434 435, on right: 391
callable_variable (287)
    on left: 436 437 438 439 440 441, on right: 433 442
variable (288)
    on left: 442 443 444, on right: 164 188 189 303 304 306 307 308
    309 310 311 312 313 314 315 316 317 318 319 320 321 425 430 469
    470 483
simple_variable (289)
    on left: 445 446 447, on right: 240 436 447 448 449 450 454 455
    458 461
static_member (290)
    on left: 448 449, on right: 443
new_variable (291)
    on left: 450 451 452 453 454 455, on right: 395 451 452 453 455
member_name (292)
    on left: 456 457 458, on right: 389 390
property_name (293)
    on left: 459 460 461, on right: 440 444 453
array_pair_list (294)
    on left: 462, on right: 190 191 301 302 403 404 471 472
possible_array_pair (295)
    on left: 463 464, on right: 465 466
non_empty_array_pair_list (296)
    on left: 465 466, on right: 462 465
array_pair (297)
    on left: 467 468 469 470 471 472, on right: 464
encaps_list (298)
    on left: 473 474 475 476, on right: 400 418 419 473 474
encaps_var (299)
    on left: 477 478 479 480 481 482 483, on right: 473 475 476
encaps_var_offset (300)
    on left: 484 485 486 487, on right: 478
internal_functions_in_yacc (301)
    on left: 488 489 490 491 492 493 494, on right: 358
isset_variables (302)
    on left: 495 496, on right: 488 496
isset_variable (303)
    on left: 497, on right: 495 496


State 0

    0 $accept: . start "end of file"

    $default  reduce using rule 79 (top_statement_list)

    start               go to state 1
    top_statement_list  go to state 2


State 1

    0 $accept: start . "end of file"

    "end of file"  shift, and go to state 3


State 2

    1 start: top_statement_list .
   78 top_statement_list: top_statement_list . top_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "const (T_CONST)"                             shift, and go to state 51
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "use (T_USE)"                                 shift, and go to state 55
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 60
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 74
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 1 (start)

    namespace_name                   go to state 83
    name                             go to state 84
    top_statement                    go to state 85
    statement                        go to state 86
    function_declaration_statement   go to state 87
    class_declaration_statement      go to state 88
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 91
    interface_declaration_statement  go to state 92
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr_without_variable            go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    expr                             go to state 105
    variable_class_name              go to state 106
    dereferencable                   go to state 107
    callable_expr                    go to state 108
    callable_variable                go to state 109
    variable                         go to state 110
    simple_variable                  go to state 111
    static_member                    go to state 112
    internal_functions_in_yacc       go to state 113


State 3

    0 $accept: start "end of file" .

    $default  accept


State 4

  490 internal_functions_in_yacc: "include (T_INCLUDE)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 118
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 5

  491 internal_functions_in_yacc: "include_once (T_INCLUDE_ONCE)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 119
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 6

  492 internal_functions_in_yacc: "eval (T_EVAL)" . '(' expr ')'

    '('  shift, and go to state 120


State 7

  493 internal_functions_in_yacc: "require (T_REQUIRE)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 121
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 8

  494 internal_functions_in_yacc: "require_once (T_REQUIRE_ONCE)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 122
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 9

  370 expr_without_variable: "print (T_PRINT)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 123
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 10

  371 expr_without_variable: "yield (T_YIELD)" .
  372                      | "yield (T_YIELD)" . expr
  373                      | "yield (T_YIELD)" . expr "=> (T_DOUBLE_ARROW)" expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 371 (expr_without_variable)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 124
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 11

  374 expr_without_variable: "yield from (T_YIELD_FROM)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 125
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 12

  339 expr_without_variable: '+' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 126
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 13

  340 expr_without_variable: '-' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 127
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 14

  341 expr_without_variable: '!' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 128
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 15

  342 expr_without_variable: '~' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 129
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 16

  319 expr_without_variable: "++ (T_INC)" . variable

    '['                                           shift, and go to state 130
    "static (T_STATIC)"                           shift, and go to state 131
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 132
    '$'                                           shift, and go to state 82

    namespace_name         go to state 83
    name                   go to state 84
    function_call          go to state 100
    class_name             go to state 101
    dereferencable_scalar  go to state 133
    constant               go to state 134
    variable_class_name    go to state 106
    dereferencable         go to state 107
    callable_expr          go to state 108
    callable_variable      go to state 109
    variable               go to state 135
    simple_variable        go to state 111
    static_member          go to state 112


State 17

  321 expr_without_variable: "-- (T_DEC)" . variable

    '['                                           shift, and go to state 130
    "static (T_STATIC)"                           shift, and go to state 131
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 132
    '$'                                           shift, and go to state 82

    namespace_name         go to state 83
    name                   go to state 84
    function_call          go to state 100
    class_name             go to state 101
    dereferencable_scalar  go to state 133
    constant               go to state 134
    variable_class_name    go to state 106
    dereferencable         go to state 107
    callable_expr          go to state 108
    callable_variable      go to state 109
    variable               go to state 136
    simple_variable        go to state 111
    static_member          go to state 112


State 18

  359 expr_without_variable: "(int) (T_INT_CAST)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 137
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 19

  360 expr_without_variable: "(double) (T_DOUBLE_CAST)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 138
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 20

  361 expr_without_variable: "(string) (T_STRING_CAST)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 139
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 21

  362 expr_without_variable: "(array) (T_ARRAY_CAST)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 140
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 22

  363 expr_without_variable: "(object) (T_OBJECT_CAST)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 141
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 23

  364 expr_without_variable: "(bool) (T_BOOL_CAST)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 142
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 24

  365 expr_without_variable: "(unset) (T_UNSET_CAST)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 143
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 25

  367 expr_without_variable: '@' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 144
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 26

  302 expr_without_variable: '[' . array_pair_list ']' '=' expr
  404 dereferencable_scalar: '[' . array_pair_list ']'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '&'                                           shift, and go to state 145
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 146
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 463 (possible_array_pair)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 147
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    array_pair_list             go to state 148
    possible_array_pair         go to state 149
    non_empty_array_pair_list   go to state 150
    array_pair                  go to state 151
    internal_functions_in_yacc  go to state 113


State 27

  299 new_expr: "new (T_NEW)" . class_name_reference ctor_arguments
  300         | "new (T_NEW)" . anonymous_class

    "static (T_STATIC)"        shift, and go to state 131
    "identifier (T_STRING)"    shift, and go to state 115
    "variable (T_VARIABLE)"    shift, and go to state 35
    "class (T_CLASS)"          shift, and go to state 152
    "namespace (T_NAMESPACE)"  shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
    '$'                        shift, and go to state 82

    namespace_name        go to state 83
    name                  go to state 153
    anonymous_class       go to state 154
    class_name            go to state 155
    class_name_reference  go to state 156
    simple_variable       go to state 157
    new_variable          go to state 158


State 28

  305 expr_without_variable: "clone (T_CLONE)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 159
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 29

  142 statement: "static (T_STATIC)" . static_var_list ';'
  376 expr_without_variable: "static (T_STATIC)" . function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
  392 class_name: "static (T_STATIC)" .

    "variable (T_VARIABLE)"  shift, and go to state 160
    "function (T_FUNCTION)"  shift, and go to state 50

    $default  reduce using rule 392 (class_name)

    static_var_list  go to state 161
    static_var       go to state 162
    function         go to state 163


State 30

  176 class_modifier: "abstract (T_ABSTRACT)" .

    $default  reduce using rule 176 (class_modifier)


State 31

  177 class_modifier: "final (T_FINAL)" .

    $default  reduce using rule 177 (class_modifier)


State 32

  406 scalar: "integer number (T_LNUMBER)" .

    $default  reduce using rule 406 (scalar)


State 33

  407 scalar: "floating-point number (T_DNUMBER)" .

    $default  reduce using rule 407 (scalar)


State 34

   80 namespace_name: "identifier (T_STRING)" .
  155 statement: "identifier (T_STRING)" . ':'

    ':'  shift, and go to state 164

    $default  reduce using rule 80 (namespace_name)


State 35

  445 simple_variable: "variable (T_VARIABLE)" .

    $default  reduce using rule 445 (simple_variable)


State 36

  144 statement: T_INLINE_HTML .

    $default  reduce using rule 144 (statement)


State 37

  405 dereferencable_scalar: "quoted-string (T_CONSTANT_ENCAPSED_STRING)" .

    $default  reduce using rule 405 (dereferencable_scalar)


State 38

  366 expr_without_variable: "exit (T_EXIT)" . exit_expr

    '('  shift, and go to state 165

    $default  reduce using rule 396 (exit_expr)

    exit_expr  go to state 166


State 39

  209 if_stmt_without_else: "if (T_IF)" . '(' expr ')' statement
  213 alt_if_stmt_without_else: "if (T_IF)" . '(' expr ')' ':' inner_statement_list

    '('  shift, and go to state 167


State 40

  143 statement: "echo (T_ECHO)" . echo_expr_list ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    echo_expr_list              go to state 168
    echo_expr                   go to state 169
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 170
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 41

  135 statement: "do (T_DO)" . statement "while (T_WHILE)" '(' expr ')' ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    statement                   go to state 171
    if_stmt_without_else        go to state 93
    if_stmt                     go to state 94
    alt_if_stmt_without_else    go to state 95
    alt_if_stmt                 go to state 96
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 105
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 42

  134 statement: "while (T_WHILE)" . '(' expr ')' while_statement

    '('  shift, and go to state 172


State 43

  136 statement: "for (T_FOR)" . '(' for_exprs ';' for_exprs ';' for_exprs ')' for_statement

    '('  shift, and go to state 173


State 44

  147 statement: "foreach (T_FOREACH)" . '(' expr "as (T_AS)" foreach_variable ')' foreach_statement
  148          | "foreach (T_FOREACH)" . '(' expr "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable ')' foreach_statement

    '('  shift, and go to state 174


State 45

  150 statement: "declare (T_DECLARE)" . '(' const_list ')' $@3 declare_statement

    '('  shift, and go to state 175


State 46

  137 statement: "switch (T_SWITCH)" . '(' expr ')' switch_case_list

    '('  shift, and go to state 176


State 47

  138 statement: "break (T_BREAK)" . optional_expr ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 427 (optional_expr)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 177
    optional_expr               go to state 178
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 48

  139 statement: "continue (T_CONTINUE)" . optional_expr ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 427 (optional_expr)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 177
    optional_expr               go to state 179
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 49

  154 statement: "goto (T_GOTO)" . "identifier (T_STRING)" ';'

    "identifier (T_STRING)"  shift, and go to state 180


State 50

  377 function: "function (T_FUNCTION)" .

    $default  reduce using rule 377 (function)


State 51

  100 top_statement: "const (T_CONST)" . const_list ';'

    "identifier (T_STRING)"  shift, and go to state 181

    const_list  go to state 182
    const_decl  go to state 183


State 52

  140 statement: "return (T_RETURN)" . optional_expr ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 427 (optional_expr)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 177
    optional_expr               go to state 184
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 53

  152 statement: "try (T_TRY)" . '{' inner_statement_list '}' catch_list finally_statement

    '{'  shift, and go to state 185


State 54

  153 statement: "throw (T_THROW)" . expr ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 186
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 55

   96 top_statement: "use (T_USE)" . mixed_group_use_declaration ';'
   97              | "use (T_USE)" . use_type group_use_declaration ';'
   98              | "use (T_USE)" . use_declarations ';'
   99              | "use (T_USE)" . use_type use_declarations ';'

    "identifier (T_STRING)"  shift, and go to state 115
    "function (T_FUNCTION)"  shift, and go to state 187
    "const (T_CONST)"        shift, and go to state 188
    "\\ (T_NS_SEPARATOR)"    shift, and go to state 189

    namespace_name               go to state 190
    use_type                     go to state 191
    mixed_group_use_declaration  go to state 192
    use_declarations             go to state 193
    unprefixed_use_declaration   go to state 194
    use_declaration              go to state 195


State 56

  141 statement: "global (T_GLOBAL)" . global_var_list ';'

    "variable (T_VARIABLE)"  shift, and go to state 35
    '$'                      shift, and go to state 82

    global_var_list  go to state 196
    global_var       go to state 197
    simple_variable  go to state 198


State 57

  146 statement: "unset (T_UNSET)" . '(' unset_variables ')' ';'

    '('  shift, and go to state 199


State 58

  488 internal_functions_in_yacc: "isset (T_ISSET)" . '(' isset_variables ')'

    '('  shift, and go to state 200


State 59

  489 internal_functions_in_yacc: "empty (T_EMPTY)" . '(' expr ')'

    '('  shift, and go to state 201


State 60

   90 top_statement: "__halt_compiler (T_HALT_COMPILER)" . '(' ')' ';'

    '('  shift, and go to state 202


State 61

  173 class_declaration_statement: "class (T_CLASS)" . @5 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}'

    $default  reduce using rule 172 (@5)

    @5  go to state 203


State 62

  179 trait_declaration_statement: "trait (T_TRAIT)" . @6 "identifier (T_STRING)" backup_doc_comment '{' class_statement_list '}'

    $default  reduce using rule 178 (@6)

    @6  go to state 204


State 63

  181 interface_declaration_statement: "interface (T_INTERFACE)" . @7 "identifier (T_STRING)" interface_extends_list backup_doc_comment '{' class_statement_list '}'

    $default  reduce using rule 180 (@7)

    @7  go to state 205


State 64

  301 expr_without_variable: "list (T_LIST)" . '(' array_pair_list ')' '=' expr

    '('  shift, and go to state 206


State 65

  403 dereferencable_scalar: "array (T_ARRAY)" . '(' array_pair_list ')'

    '('  shift, and go to state 207


State 66

  408 scalar: "__LINE__ (T_LINE)" .

    $default  reduce using rule 408 (scalar)


State 67

  409 scalar: "__FILE__ (T_FILE)" .

    $default  reduce using rule 409 (scalar)


State 68

  410 scalar: "__DIR__ (T_DIR)" .

    $default  reduce using rule 410 (scalar)


State 69

  415 scalar: "__CLASS__ (T_CLASS_C)" .

    $default  reduce using rule 415 (scalar)


State 70

  411 scalar: "__TRAIT__ (T_TRAIT_C)" .

    $default  reduce using rule 411 (scalar)


State 71

  412 scalar: "__METHOD__ (T_METHOD_C)" .

    $default  reduce using rule 412 (scalar)


State 72

  413 scalar: "__FUNCTION__ (T_FUNC_C)" .

    $default  reduce using rule 413 (scalar)


State 73

  416 scalar: "heredoc start (T_START_HEREDOC)" . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" "heredoc end (T_END_HEREDOC)"
  417       | "heredoc start (T_START_HEREDOC)" . "heredoc end (T_END_HEREDOC)"
  419       | "heredoc start (T_START_HEREDOC)" . encaps_list "heredoc end (T_END_HEREDOC)"

    "variable (T_VARIABLE)"                                     shift, and go to state 208
    "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"  shift, and go to state 209
    "heredoc end (T_END_HEREDOC)"                               shift, and go to state 210
    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"                           shift, and go to state 211
    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 212

    encaps_list  go to state 213
    encaps_var   go to state 214


State 74

   83 name: "namespace (T_NAMESPACE)" . "\\ (T_NS_SEPARATOR)" namespace_name
   91 top_statement: "namespace (T_NAMESPACE)" . namespace_name ';'
   93              | "namespace (T_NAMESPACE)" . namespace_name $@1 '{' top_statement_list '}'
   95              | "namespace (T_NAMESPACE)" . $@2 '{' top_statement_list '}'

    "identifier (T_STRING)"  shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"    shift, and go to state 215

    $default  reduce using rule 94 ($@2)

    namespace_name  go to state 216
    $@2             go to state 217


State 75

  414 scalar: "__NAMESPACE__ (T_NS_C)" .

    $default  reduce using rule 414 (scalar)


State 76

   84 name: "\\ (T_NS_SEPARATOR)" . namespace_name

    "identifier (T_STRING)"  shift, and go to state 115

    namespace_name  go to state 218


State 77

  353 expr_without_variable: '(' . expr ')'
  431 dereferencable: '(' . expr ')'
  434 callable_expr: '(' . expr ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 219
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 78

  151 statement: ';' .

    $default  reduce using rule 151 (statement)


State 79

  131 statement: '{' . inner_statement_list '}'

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 220


State 80

  369 expr_without_variable: '`' . backticks_expr '`'

    "variable (T_VARIABLE)"                                     shift, and go to state 208
    "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"  shift, and go to state 221
    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"                           shift, and go to state 211
    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 212

    $default  reduce using rule 398 (backticks_expr)

    backticks_expr  go to state 222
    encaps_list     go to state 223
    encaps_var      go to state 214


State 81

  418 scalar: '"' . encaps_list '"'

    "variable (T_VARIABLE)"                                     shift, and go to state 208
    "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"  shift, and go to state 224
    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"                           shift, and go to state 211
    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 212

    encaps_list  go to state 225
    encaps_var   go to state 214


State 82

  446 simple_variable: '$' . '{' expr '}'
  447                | '$' . simple_variable

    "variable (T_VARIABLE)"  shift, and go to state 35
    '{'                      shift, and go to state 226
    '$'                      shift, and go to state 82

    simple_variable  go to state 227


State 83

   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
   82 name: namespace_name .

    "\\ (T_NS_SEPARATOR)"  shift, and go to state 228

    $default  reduce using rule 82 (name)


State 84

  388 function_call: name . argument_list
  393 class_name: name .
  422 constant: name .

    '('  shift, and go to state 229

    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 393 (class_name)
    $default                       reduce using rule 422 (constant)

    argument_list  go to state 230


State 85

   78 top_statement_list: top_statement_list top_statement .

    $default  reduce using rule 78 (top_statement_list)


State 86

   85 top_statement: statement .

    $default  reduce using rule 85 (top_statement)


State 87

   86 top_statement: function_declaration_statement .

    $default  reduce using rule 86 (top_statement)


State 88

   87 top_statement: class_declaration_statement .

    $default  reduce using rule 87 (top_statement)


State 89

  171 class_declaration_statement: class_modifiers . "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}'
  175 class_modifiers: class_modifiers . class_modifier

    "abstract (T_ABSTRACT)"  shift, and go to state 30
    "final (T_FINAL)"        shift, and go to state 31
    "class (T_CLASS)"        shift, and go to state 231

    class_modifier  go to state 232


State 90

  174 class_modifiers: class_modifier .

    $default  reduce using rule 174 (class_modifiers)


State 91

   88 top_statement: trait_declaration_statement .

    $default  reduce using rule 88 (top_statement)


State 92

   89 top_statement: interface_declaration_statement .

    $default  reduce using rule 89 (top_statement)


State 93

  210 if_stmt_without_else: if_stmt_without_else . "elseif (T_ELSEIF)" '(' expr ')' statement
  211 if_stmt: if_stmt_without_else .
  212        | if_stmt_without_else . "else (T_ELSE)" statement

    "elseif (T_ELSEIF)"  shift, and go to state 233
    "else (T_ELSE)"      shift, and go to state 234

    $default  reduce using rule 211 (if_stmt)


State 94

  132 statement: if_stmt .

    $default  reduce using rule 132 (statement)


State 95

  214 alt_if_stmt_without_else: alt_if_stmt_without_else . "elseif (T_ELSEIF)" '(' expr ')' ':' inner_statement_list
  215 alt_if_stmt: alt_if_stmt_without_else . "endif (T_ENDIF)" ';'
  216            | alt_if_stmt_without_else . "else (T_ELSE)" ':' inner_statement_list "endif (T_ENDIF)" ';'

    "elseif (T_ELSEIF)"  shift, and go to state 235
    "else (T_ELSE)"      shift, and go to state 236
    "endif (T_ENDIF)"    shift, and go to state 237


State 96

  133 statement: alt_if_stmt .

    $default  reduce using rule 133 (statement)


State 97

  354 expr_without_variable: new_expr .

    $default  reduce using rule 354 (expr_without_variable)


State 98

  426 expr: expr_without_variable .

    $default  reduce using rule 426 (expr)


State 99

  165 function_declaration_statement: function . returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
  375 expr_without_variable: function . returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    '&'  shift, and go to state 238

    $default  reduce using rule 380 (returns_ref)

    returns_ref  go to state 239


State 100

  441 callable_variable: function_call .

    $default  reduce using rule 441 (callable_variable)


State 101

  389 function_call: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list
  423 constant: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier
  448 static_member: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable

    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  shift, and go to state 240


State 102

  420 scalar: dereferencable_scalar .
  432 dereferencable: dereferencable_scalar .
  435 callable_expr: dereferencable_scalar .

    '['                            reduce using rule 432 (dereferencable)
    "-> (T_OBJECT_OPERATOR)"       reduce using rule 432 (dereferencable)
    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 432 (dereferencable)
    '('                            reduce using rule 435 (callable_expr)
    '{'                            reduce using rule 432 (dereferencable)
    $default                       reduce using rule 420 (scalar)


State 103

  368 expr_without_variable: scalar .

    $default  reduce using rule 368 (expr_without_variable)


State 104

  421 scalar: constant .
  438 callable_variable: constant . '[' optional_expr ']'

    '['  shift, and go to state 241

    $default  reduce using rule 421 (scalar)


State 105

  145 statement: expr . ';'
  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270
    ';'                           shift, and go to state 271


State 106

  390 function_call: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list
  424 constant: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier
  449 static_member: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable

    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  shift, and go to state 272


State 107

  429 variable_class_name: dereferencable .
  437 callable_variable: dereferencable . '[' optional_expr ']'
  439                  | dereferencable . '{' expr '}'
  440                  | dereferencable . "-> (T_OBJECT_OPERATOR)" property_name argument_list
  444 variable: dereferencable . "-> (T_OBJECT_OPERATOR)" property_name

    '['                       shift, and go to state 273
    "-> (T_OBJECT_OPERATOR)"  shift, and go to state 274
    '{'                       shift, and go to state 275

    $default  reduce using rule 429 (variable_class_name)


State 108

  391 function_call: callable_expr . argument_list

    '('  shift, and go to state 229

    argument_list  go to state 276


State 109

  433 callable_expr: callable_variable .
  442 variable: callable_variable .

    '('       reduce using rule 433 (callable_expr)
    $default  reduce using rule 442 (variable)


State 110

  303 expr_without_variable: variable . '=' expr
  304                      | variable . '=' '&' variable
  306                      | variable . "+= (T_PLUS_EQUAL)" expr
  307                      | variable . "-= (T_MINUS_EQUAL)" expr
  308                      | variable . "*= (T_MUL_EQUAL)" expr
  309                      | variable . "**= (T_POW_EQUAL)" expr
  310                      | variable . "/= (T_DIV_EQUAL)" expr
  311                      | variable . ".= (T_CONCAT_EQUAL)" expr
  312                      | variable . "%= (T_MOD_EQUAL)" expr
  313                      | variable . "&= (T_AND_EQUAL)" expr
  314                      | variable . "|= (T_OR_EQUAL)" expr
  315                      | variable . "^= (T_XOR_EQUAL)" expr
  316                      | variable . "<<= (T_SL_EQUAL)" expr
  317                      | variable . ">>= (T_SR_EQUAL)" expr
  318                      | variable . "++ (T_INC)"
  320                      | variable . "-- (T_DEC)"
  425 expr: variable .
  430 dereferencable: variable .

    '='                    shift, and go to state 277
    "+= (T_PLUS_EQUAL)"    shift, and go to state 278
    "-= (T_MINUS_EQUAL)"   shift, and go to state 279
    "*= (T_MUL_EQUAL)"     shift, and go to state 280
    "/= (T_DIV_EQUAL)"     shift, and go to state 281
    ".= (T_CONCAT_EQUAL)"  shift, and go to state 282
    "%= (T_MOD_EQUAL)"     shift, and go to state 283
    "&= (T_AND_EQUAL)"     shift, and go to state 284
    "|= (T_OR_EQUAL)"      shift, and go to state 285
    "^= (T_XOR_EQUAL)"     shift, and go to state 286
    "<<= (T_SL_EQUAL)"     shift, and go to state 287
    ">>= (T_SR_EQUAL)"     shift, and go to state 288
    "**= (T_POW_EQUAL)"    shift, and go to state 289
    "++ (T_INC)"           shift, and go to state 290
    "-- (T_DEC)"           shift, and go to state 291

    '['                            reduce using rule 430 (dereferencable)
    "-> (T_OBJECT_OPERATOR)"       reduce using rule 430 (dereferencable)
    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 430 (dereferencable)
    '{'                            reduce using rule 430 (dereferencable)
    $default                       reduce using rule 425 (expr)


State 111

  436 callable_variable: simple_variable .

    $default  reduce using rule 436 (callable_variable)


State 112

  443 variable: static_member .

    $default  reduce using rule 443 (variable)


State 113

  358 expr_without_variable: internal_functions_in_yacc .

    $default  reduce using rule 358 (expr_without_variable)


State 114

  376 expr_without_variable: "static (T_STATIC)" . function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
  392 class_name: "static (T_STATIC)" .

    "function (T_FUNCTION)"  shift, and go to state 50

    $default  reduce using rule 392 (class_name)

    function  go to state 163


State 115

   80 namespace_name: "identifier (T_STRING)" .

    $default  reduce using rule 80 (namespace_name)


State 116

   83 name: "namespace (T_NAMESPACE)" . "\\ (T_NS_SEPARATOR)" namespace_name

    "\\ (T_NS_SEPARATOR)"  shift, and go to state 215


State 117

  375 expr_without_variable: function . returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    '&'  shift, and go to state 238

    $default  reduce using rule 380 (returns_ref)

    returns_ref  go to state 292


State 118

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  490 internal_functions_in_yacc: "include (T_INCLUDE)" expr .

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 490 (internal_functions_in_yacc)


State 119

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  491 internal_functions_in_yacc: "include_once (T_INCLUDE_ONCE)" expr .

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 491 (internal_functions_in_yacc)


State 120

  492 internal_functions_in_yacc: "eval (T_EVAL)" '(' . expr ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 293
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 121

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  493 internal_functions_in_yacc: "require (T_REQUIRE)" expr .

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 493 (internal_functions_in_yacc)


State 122

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  494 internal_functions_in_yacc: "require_once (T_REQUIRE_ONCE)" expr .

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 494 (internal_functions_in_yacc)


State 123

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  370                      | "print (T_PRINT)" expr .

    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 370 (expr_without_variable)


State 124

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  372                      | "yield (T_YIELD)" expr .
  373                      | "yield (T_YIELD)" expr . "=> (T_DOUBLE_ARROW)" expr

    "=> (T_DOUBLE_ARROW)"         shift, and go to state 294
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 372 (expr_without_variable)


State 125

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  374                      | "yield from (T_YIELD_FROM)" expr .

    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 374 (expr_without_variable)


State 126

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  339                      | '+' expr .
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "** (T_POW)"  shift, and go to state 270

    $default  reduce using rule 339 (expr_without_variable)


State 127

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  340                      | '-' expr .
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "** (T_POW)"  shift, and go to state 270

    $default  reduce using rule 340 (expr_without_variable)


State 128

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  341                      | '!' expr .
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "instanceof (T_INSTANCEOF)"  shift, and go to state 269
    "** (T_POW)"                 shift, and go to state 270

    $default  reduce using rule 341 (expr_without_variable)


State 129

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  342                      | '~' expr .
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "** (T_POW)"  shift, and go to state 270

    $default  reduce using rule 342 (expr_without_variable)


State 130

  404 dereferencable_scalar: '[' . array_pair_list ']'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '&'                                           shift, and go to state 145
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 146
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 463 (possible_array_pair)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 147
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    array_pair_list             go to state 295
    possible_array_pair         go to state 149
    non_empty_array_pair_list   go to state 150
    array_pair                  go to state 151
    internal_functions_in_yacc  go to state 113


State 131

  392 class_name: "static (T_STATIC)" .

    $default  reduce using rule 392 (class_name)


State 132

  431 dereferencable: '(' . expr ')'
  434 callable_expr: '(' . expr ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 296
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 133

  432 dereferencable: dereferencable_scalar .
  435 callable_expr: dereferencable_scalar .

    '('       reduce using rule 435 (callable_expr)
    $default  reduce using rule 432 (dereferencable)


State 134

  438 callable_variable: constant . '[' optional_expr ']'

    '['  shift, and go to state 241


State 135

  319 expr_without_variable: "++ (T_INC)" variable .
  430 dereferencable: variable .

    '['                            reduce using rule 430 (dereferencable)
    "-> (T_OBJECT_OPERATOR)"       reduce using rule 430 (dereferencable)
    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 430 (dereferencable)
    '{'                            reduce using rule 430 (dereferencable)
    $default                       reduce using rule 319 (expr_without_variable)


State 136

  321 expr_without_variable: "-- (T_DEC)" variable .
  430 dereferencable: variable .

    '['                            reduce using rule 430 (dereferencable)
    "-> (T_OBJECT_OPERATOR)"       reduce using rule 430 (dereferencable)
    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 430 (dereferencable)
    '{'                            reduce using rule 430 (dereferencable)
    $default                       reduce using rule 321 (expr_without_variable)


State 137

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  359                      | "(int) (T_INT_CAST)" expr .

    "** (T_POW)"  shift, and go to state 270

    $default  reduce using rule 359 (expr_without_variable)


State 138

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  360                      | "(double) (T_DOUBLE_CAST)" expr .

    "** (T_POW)"  shift, and go to state 270

    $default  reduce using rule 360 (expr_without_variable)


State 139

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  361                      | "(string) (T_STRING_CAST)" expr .

    "** (T_POW)"  shift, and go to state 270

    $default  reduce using rule 361 (expr_without_variable)


State 140

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  362                      | "(array) (T_ARRAY_CAST)" expr .

    "** (T_POW)"  shift, and go to state 270

    $default  reduce using rule 362 (expr_without_variable)


State 141

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  363                      | "(object) (T_OBJECT_CAST)" expr .

    "** (T_POW)"  shift, and go to state 270

    $default  reduce using rule 363 (expr_without_variable)


State 142

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  364                      | "(bool) (T_BOOL_CAST)" expr .

    "** (T_POW)"  shift, and go to state 270

    $default  reduce using rule 364 (expr_without_variable)


State 143

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  365                      | "(unset) (T_UNSET_CAST)" expr .

    "** (T_POW)"  shift, and go to state 270

    $default  reduce using rule 365 (expr_without_variable)


State 144

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  367                      | '@' expr .

    "** (T_POW)"  shift, and go to state 270

    $default  reduce using rule 367 (expr_without_variable)


State 145

  470 array_pair: '&' . variable

    '['                                           shift, and go to state 130
    "static (T_STATIC)"                           shift, and go to state 131
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 132
    '$'                                           shift, and go to state 82

    namespace_name         go to state 83
    name                   go to state 84
    function_call          go to state 100
    class_name             go to state 101
    dereferencable_scalar  go to state 133
    constant               go to state 134
    variable_class_name    go to state 106
    dereferencable         go to state 107
    callable_expr          go to state 108
    callable_variable      go to state 109
    variable               go to state 297
    simple_variable        go to state 111
    static_member          go to state 112


State 146

  301 expr_without_variable: "list (T_LIST)" . '(' array_pair_list ')' '=' expr
  472 array_pair: "list (T_LIST)" . '(' array_pair_list ')'

    '('  shift, and go to state 298


State 147

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  467 array_pair: expr . "=> (T_DOUBLE_ARROW)" expr
  468           | expr .
  469           | expr . "=> (T_DOUBLE_ARROW)" '&' variable
  471           | expr . "=> (T_DOUBLE_ARROW)" "list (T_LIST)" '(' array_pair_list ')'

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    "=> (T_DOUBLE_ARROW)"         shift, and go to state 299
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 468 (array_pair)


State 148

  302 expr_without_variable: '[' array_pair_list . ']' '=' expr
  404 dereferencable_scalar: '[' array_pair_list . ']'

    ']'  shift, and go to state 300


State 149

  466 non_empty_array_pair_list: possible_array_pair .

    $default  reduce using rule 466 (non_empty_array_pair_list)


State 150

  462 array_pair_list: non_empty_array_pair_list .
  465 non_empty_array_pair_list: non_empty_array_pair_list . ',' possible_array_pair

    ','  shift, and go to state 301

    $default  reduce using rule 462 (array_pair_list)


State 151

  464 possible_array_pair: array_pair .

    $default  reduce using rule 464 (possible_array_pair)


State 152

  298 anonymous_class: "class (T_CLASS)" . @8 ctor_arguments extends_from implements_list backup_doc_comment '{' class_statement_list '}'

    $default  reduce using rule 297 (@8)

    @8  go to state 302


State 153

  393 class_name: name .

    $default  reduce using rule 393 (class_name)


State 154

  300 new_expr: "new (T_NEW)" anonymous_class .

    $default  reduce using rule 300 (new_expr)


State 155

  394 class_name_reference: class_name .
  454 new_variable: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable

    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  shift, and go to state 303

    $default  reduce using rule 394 (class_name_reference)


State 156

  299 new_expr: "new (T_NEW)" class_name_reference . ctor_arguments

    '('  shift, and go to state 229

    $default  reduce using rule 401 (ctor_arguments)

    argument_list   go to state 304
    ctor_arguments  go to state 305


State 157

  450 new_variable: simple_variable .

    $default  reduce using rule 450 (new_variable)


State 158

  395 class_name_reference: new_variable .
  451 new_variable: new_variable . '[' optional_expr ']'
  452             | new_variable . '{' expr '}'
  453             | new_variable . "-> (T_OBJECT_OPERATOR)" property_name
  455             | new_variable . ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable

    '['                            shift, and go to state 306
    "-> (T_OBJECT_OPERATOR)"       shift, and go to state 307
    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  shift, and go to state 308
    '{'                            shift, and go to state 309

    $default  reduce using rule 395 (class_name_reference)


State 159

  305 expr_without_variable: "clone (T_CLONE)" expr .
  322                      | expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    $default  reduce using rule 305 (expr_without_variable)


State 160

  243 static_var: "variable (T_VARIABLE)" .
  244           | "variable (T_VARIABLE)" . '=' expr

    '='  shift, and go to state 310

    $default  reduce using rule 243 (static_var)


State 161

  142 statement: "static (T_STATIC)" static_var_list . ';'
  241 static_var_list: static_var_list . ',' static_var

    ','  shift, and go to state 311
    ';'  shift, and go to state 312


State 162

  242 static_var_list: static_var .

    $default  reduce using rule 242 (static_var_list)


State 163

  376 expr_without_variable: "static (T_STATIC)" function . returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    '&'  shift, and go to state 238

    $default  reduce using rule 380 (returns_ref)

    returns_ref  go to state 313


State 164

  155 statement: "identifier (T_STRING)" ':' .

    $default  reduce using rule 155 (statement)


State 165

  397 exit_expr: '(' . optional_expr ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 427 (optional_expr)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 177
    optional_expr               go to state 314
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 166

  366 expr_without_variable: "exit (T_EXIT)" exit_expr .

    $default  reduce using rule 366 (expr_without_variable)


State 167

  209 if_stmt_without_else: "if (T_IF)" '(' . expr ')' statement
  213 alt_if_stmt_without_else: "if (T_IF)" '(' . expr ')' ':' inner_statement_list

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 315
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 168

  143 statement: "echo (T_ECHO)" echo_expr_list . ';'
  290 echo_expr_list: echo_expr_list . ',' echo_expr

    ','  shift, and go to state 316
    ';'  shift, and go to state 317


State 169

  291 echo_expr_list: echo_expr .

    $default  reduce using rule 291 (echo_expr_list)


State 170

  292 echo_expr: expr .
  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 292 (echo_expr)


State 171

  135 statement: "do (T_DO)" statement . "while (T_WHILE)" '(' expr ')' ';'

    "while (T_WHILE)"  shift, and go to state 318


State 172

  134 statement: "while (T_WHILE)" '(' . expr ')' while_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 319
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 173

  136 statement: "for (T_FOR)" '(' . for_exprs ';' for_exprs ';' for_exprs ')' for_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 293 (for_exprs)

    namespace_name              go to state 83
    name                        go to state 84
    for_exprs                   go to state 320
    non_empty_for_exprs         go to state 321
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 322
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 174

  147 statement: "foreach (T_FOREACH)" '(' . expr "as (T_AS)" foreach_variable ')' foreach_statement
  148          | "foreach (T_FOREACH)" '(' . expr "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable ')' foreach_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 323
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 175

  150 statement: "declare (T_DECLARE)" '(' . const_list ')' $@3 declare_statement

    "identifier (T_STRING)"  shift, and go to state 181

    const_list  go to state 324
    const_decl  go to state 183


State 176

  137 statement: "switch (T_SWITCH)" '(' . expr ')' switch_case_list

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 325
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 177

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  428 optional_expr: expr .

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 428 (optional_expr)


State 178

  138 statement: "break (T_BREAK)" optional_expr . ';'

    ';'  shift, and go to state 326


State 179

  139 statement: "continue (T_CONTINUE)" optional_expr . ';'

    ';'  shift, and go to state 327


State 180

  154 statement: "goto (T_GOTO)" "identifier (T_STRING)" . ';'

    ';'  shift, and go to state 328


State 181

  289 const_decl: "identifier (T_STRING)" . '=' expr backup_doc_comment

    '='  shift, and go to state 329


State 182

  100 top_statement: "const (T_CONST)" const_list . ';'
  121 const_list: const_list . ',' const_decl

    ','  shift, and go to state 330
    ';'  shift, and go to state 331


State 183

  122 const_list: const_decl .

    $default  reduce using rule 122 (const_list)


State 184

  140 statement: "return (T_RETURN)" optional_expr . ';'

    ';'  shift, and go to state 332


State 185

  152 statement: "try (T_TRY)" '{' . inner_statement_list '}' catch_list finally_statement

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 333


State 186

  153 statement: "throw (T_THROW)" expr . ';'
  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270
    ';'                           shift, and go to state 334


State 187

  101 use_type: "function (T_FUNCTION)" .

    $default  reduce using rule 101 (use_type)


State 188

  102 use_type: "const (T_CONST)" .

    $default  reduce using rule 102 (use_type)


State 189

  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" . namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}'
  120 use_declaration: "\\ (T_NS_SEPARATOR)" . unprefixed_use_declaration

    "identifier (T_STRING)"  shift, and go to state 115

    namespace_name              go to state 335
    unprefixed_use_declaration  go to state 336


State 190

   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
  105 mixed_group_use_declaration: namespace_name . "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}'
  117 unprefixed_use_declaration: namespace_name .
  118                           | namespace_name . "as (T_AS)" "identifier (T_STRING)"

    "as (T_AS)"            shift, and go to state 337
    "\\ (T_NS_SEPARATOR)"  shift, and go to state 338

    $default  reduce using rule 117 (unprefixed_use_declaration)


State 191

   97 top_statement: "use (T_USE)" use_type . group_use_declaration ';'
   99              | "use (T_USE)" use_type . use_declarations ';'

    "identifier (T_STRING)"  shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"    shift, and go to state 339

    namespace_name              go to state 340
    group_use_declaration       go to state 341
    use_declarations            go to state 342
    unprefixed_use_declaration  go to state 194
    use_declaration             go to state 195


State 192

   96 top_statement: "use (T_USE)" mixed_group_use_declaration . ';'

    ';'  shift, and go to state 343


State 193

   98 top_statement: "use (T_USE)" use_declarations . ';'
  113 use_declarations: use_declarations . ',' use_declaration

    ','  shift, and go to state 344
    ';'  shift, and go to state 345


State 194

  119 use_declaration: unprefixed_use_declaration .

    $default  reduce using rule 119 (use_declaration)


State 195

  114 use_declarations: use_declaration .

    $default  reduce using rule 114 (use_declarations)


State 196

  141 statement: "global (T_GLOBAL)" global_var_list . ';'
  238 global_var_list: global_var_list . ',' global_var

    ','  shift, and go to state 346
    ';'  shift, and go to state 347


State 197

  239 global_var_list: global_var .

    $default  reduce using rule 239 (global_var_list)


State 198

  240 global_var: simple_variable .

    $default  reduce using rule 240 (global_var)


State 199

  146 statement: "unset (T_UNSET)" '(' . unset_variables ')' ';'

    '['                                           shift, and go to state 130
    "static (T_STATIC)"                           shift, and go to state 131
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 132
    '$'                                           shift, and go to state 82

    namespace_name         go to state 83
    name                   go to state 84
    unset_variables        go to state 348
    unset_variable         go to state 349
    function_call          go to state 100
    class_name             go to state 101
    dereferencable_scalar  go to state 133
    constant               go to state 134
    variable_class_name    go to state 106
    dereferencable         go to state 107
    callable_expr          go to state 108
    callable_variable      go to state 109
    variable               go to state 350
    simple_variable        go to state 111
    static_member          go to state 112


State 200

  488 internal_functions_in_yacc: "isset (T_ISSET)" '(' . isset_variables ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 351
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113
    isset_variables             go to state 352
    isset_variable              go to state 353


State 201

  489 internal_functions_in_yacc: "empty (T_EMPTY)" '(' . expr ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 354
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 202

   90 top_statement: "__halt_compiler (T_HALT_COMPILER)" '(' . ')' ';'

    ')'  shift, and go to state 355


State 203

  173 class_declaration_statement: "class (T_CLASS)" @5 . "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}'

    "identifier (T_STRING)"  shift, and go to state 356


State 204

  179 trait_declaration_statement: "trait (T_TRAIT)" @6 . "identifier (T_STRING)" backup_doc_comment '{' class_statement_list '}'

    "identifier (T_STRING)"  shift, and go to state 357


State 205

  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 . "identifier (T_STRING)" interface_extends_list backup_doc_comment '{' class_statement_list '}'

    "identifier (T_STRING)"  shift, and go to state 358


State 206

  301 expr_without_variable: "list (T_LIST)" '(' . array_pair_list ')' '=' expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '&'                                           shift, and go to state 145
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 146
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 463 (possible_array_pair)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 147
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    array_pair_list             go to state 359
    possible_array_pair         go to state 149
    non_empty_array_pair_list   go to state 150
    array_pair                  go to state 151
    internal_functions_in_yacc  go to state 113


State 207

  403 dereferencable_scalar: "array (T_ARRAY)" '(' . array_pair_list ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '&'                                           shift, and go to state 145
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 146
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 463 (possible_array_pair)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 147
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    array_pair_list             go to state 360
    possible_array_pair         go to state 149
    non_empty_array_pair_list   go to state 150
    array_pair                  go to state 151
    internal_functions_in_yacc  go to state 113


State 208

  477 encaps_var: "variable (T_VARIABLE)" .
  478           | "variable (T_VARIABLE)" . '[' encaps_var_offset ']'
  479           | "variable (T_VARIABLE)" . "-> (T_OBJECT_OPERATOR)" "identifier (T_STRING)"

    '['                       shift, and go to state 361
    "-> (T_OBJECT_OPERATOR)"  shift, and go to state 362

    $default  reduce using rule 477 (encaps_var)


State 209

  416 scalar: "heredoc start (T_START_HEREDOC)" "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . "heredoc end (T_END_HEREDOC)"
  476 encaps_list: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . encaps_var

    "variable (T_VARIABLE)"            shift, and go to state 208
    "heredoc end (T_END_HEREDOC)"      shift, and go to state 363
    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"  shift, and go to state 211
    "{$ (T_CURLY_OPEN)"                shift, and go to state 212

    encaps_var  go to state 364


State 210

  417 scalar: "heredoc start (T_START_HEREDOC)" "heredoc end (T_END_HEREDOC)" .

    $default  reduce using rule 417 (scalar)


State 211

  480 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" . expr '}'
  481           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" . "variable name (T_STRING_VARNAME)" '}'
  482           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" . "variable name (T_STRING_VARNAME)" '[' expr ']' '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "variable name (T_STRING_VARNAME)"            shift, and go to state 365
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 366
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 212

  483 encaps_var: "{$ (T_CURLY_OPEN)" . variable '}'

    '['                                           shift, and go to state 130
    "static (T_STATIC)"                           shift, and go to state 131
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 132
    '$'                                           shift, and go to state 82

    namespace_name         go to state 83
    name                   go to state 84
    function_call          go to state 100
    class_name             go to state 101
    dereferencable_scalar  go to state 133
    constant               go to state 134
    variable_class_name    go to state 106
    dereferencable         go to state 107
    callable_expr          go to state 108
    callable_variable      go to state 109
    variable               go to state 367
    simple_variable        go to state 111
    static_member          go to state 112


State 213

  419 scalar: "heredoc start (T_START_HEREDOC)" encaps_list . "heredoc end (T_END_HEREDOC)"
  473 encaps_list: encaps_list . encaps_var
  474            | encaps_list . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"

    "variable (T_VARIABLE)"                                     shift, and go to state 208
    "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"  shift, and go to state 368
    "heredoc end (T_END_HEREDOC)"                               shift, and go to state 369
    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"                           shift, and go to state 211
    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 212

    encaps_var  go to state 370


State 214

  475 encaps_list: encaps_var .

    $default  reduce using rule 475 (encaps_list)


State 215

   83 name: "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" . namespace_name

    "identifier (T_STRING)"  shift, and go to state 115

    namespace_name  go to state 371


State 216

   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
   91 top_statement: "namespace (T_NAMESPACE)" namespace_name . ';'
   93              | "namespace (T_NAMESPACE)" namespace_name . $@1 '{' top_statement_list '}'

    "\\ (T_NS_SEPARATOR)"  shift, and go to state 228
    ';'                    shift, and go to state 372

    $default  reduce using rule 92 ($@1)

    $@1  go to state 373


State 217

   95 top_statement: "namespace (T_NAMESPACE)" $@2 . '{' top_statement_list '}'

    '{'  shift, and go to state 374


State 218

   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
   84 name: "\\ (T_NS_SEPARATOR)" namespace_name .

    "\\ (T_NS_SEPARATOR)"  shift, and go to state 228

    $default  reduce using rule 84 (name)


State 219

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | '(' expr . ')'
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  431 dereferencable: '(' expr . ')'
  434 callable_expr: '(' expr . ')'

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270
    ')'                           shift, and go to state 375


State 220

  123 inner_statement_list: inner_statement_list . inner_statement
  131 statement: '{' inner_statement_list . '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 376
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '}'                                           shift, and go to state 377
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 378
    statement                        go to state 379
    function_declaration_statement   go to state 380
    class_declaration_statement      go to state 381
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 382
    interface_declaration_statement  go to state 383
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr_without_variable            go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    expr                             go to state 105
    variable_class_name              go to state 106
    dereferencable                   go to state 107
    callable_expr                    go to state 108
    callable_variable                go to state 109
    variable                         go to state 110
    simple_variable                  go to state 111
    static_member                    go to state 112
    internal_functions_in_yacc       go to state 113


State 221

  399 backticks_expr: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" .
  476 encaps_list: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . encaps_var

    "variable (T_VARIABLE)"            shift, and go to state 208
    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"  shift, and go to state 211
    "{$ (T_CURLY_OPEN)"                shift, and go to state 212

    $default  reduce using rule 399 (backticks_expr)

    encaps_var  go to state 364


State 222

  369 expr_without_variable: '`' backticks_expr . '`'

    '`'  shift, and go to state 384


State 223

  400 backticks_expr: encaps_list .
  473 encaps_list: encaps_list . encaps_var
  474            | encaps_list . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"

    "variable (T_VARIABLE)"                                     shift, and go to state 208
    "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"  shift, and go to state 368
    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"                           shift, and go to state 211
    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 212

    $default  reduce using rule 400 (backticks_expr)

    encaps_var  go to state 370


State 224

  476 encaps_list: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . encaps_var

    "variable (T_VARIABLE)"            shift, and go to state 208
    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"  shift, and go to state 211
    "{$ (T_CURLY_OPEN)"                shift, and go to state 212

    encaps_var  go to state 364


State 225

  418 scalar: '"' encaps_list . '"'
  473 encaps_list: encaps_list . encaps_var
  474            | encaps_list . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"

    "variable (T_VARIABLE)"                                     shift, and go to state 208
    "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"  shift, and go to state 368
    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"                           shift, and go to state 211
    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 212
    '"'                                                         shift, and go to state 385

    encaps_var  go to state 370


State 226

  446 simple_variable: '$' '{' . expr '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 386
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 227

  447 simple_variable: '$' simple_variable .

    $default  reduce using rule 447 (simple_variable)


State 228

   81 namespace_name: namespace_name "\\ (T_NS_SEPARATOR)" . "identifier (T_STRING)"

    "identifier (T_STRING)"  shift, and go to state 387


State 229

  232 argument_list: '(' . ')'
  233              | '(' . non_empty_argument_list ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    "... (T_ELLIPSIS)"                            shift, and go to state 388
    '('                                           shift, and go to state 77
    ')'                                           shift, and go to state 389
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    non_empty_argument_list     go to state 390
    argument                    go to state 391
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 392
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 230

  388 function_call: name argument_list .

    $default  reduce using rule 388 (function_call)


State 231

  171 class_declaration_statement: class_modifiers "class (T_CLASS)" . @4 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}'

    $default  reduce using rule 170 (@4)

    @4  go to state 393


State 232

  175 class_modifiers: class_modifiers class_modifier .

    $default  reduce using rule 175 (class_modifiers)


State 233

  210 if_stmt_without_else: if_stmt_without_else "elseif (T_ELSEIF)" . '(' expr ')' statement

    '('  shift, and go to state 394


State 234

  212 if_stmt: if_stmt_without_else "else (T_ELSE)" . statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    statement                   go to state 395
    if_stmt_without_else        go to state 93
    if_stmt                     go to state 94
    alt_if_stmt_without_else    go to state 95
    alt_if_stmt                 go to state 96
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 105
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 235

  214 alt_if_stmt_without_else: alt_if_stmt_without_else "elseif (T_ELSEIF)" . '(' expr ')' ':' inner_statement_list

    '('  shift, and go to state 396


State 236

  216 alt_if_stmt: alt_if_stmt_without_else "else (T_ELSE)" . ':' inner_statement_list "endif (T_ENDIF)" ';'

    ':'  shift, and go to state 397


State 237

  215 alt_if_stmt: alt_if_stmt_without_else "endif (T_ENDIF)" . ';'

    ';'  shift, and go to state 398


State 238

  381 returns_ref: '&' .

    $default  reduce using rule 381 (returns_ref)


State 239

  165 function_declaration_statement: function returns_ref . "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
  375 expr_without_variable: function returns_ref . backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    "identifier (T_STRING)"  shift, and go to state 399

    $default  reduce using rule 378 (backup_doc_comment)

    backup_doc_comment  go to state 400


State 240

  389 function_call: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . member_name argument_list
  423 constant: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . identifier
  448 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . simple_variable

    "include (T_INCLUDE)"            shift, and go to state 401
    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 402
    "eval (T_EVAL)"                  shift, and go to state 403
    "require (T_REQUIRE)"            shift, and go to state 404
    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 405
    "or (T_LOGICAL_OR)"              shift, and go to state 406
    "xor (T_LOGICAL_XOR)"            shift, and go to state 407
    "and (T_LOGICAL_AND)"            shift, and go to state 408
    "print (T_PRINT)"                shift, and go to state 409
    "yield (T_YIELD)"                shift, and go to state 410
    "instanceof (T_INSTANCEOF)"      shift, and go to state 411
    "new (T_NEW)"                    shift, and go to state 412
    "clone (T_CLONE)"                shift, and go to state 413
    "elseif (T_ELSEIF)"              shift, and go to state 414
    "else (T_ELSE)"                  shift, and go to state 415
    "endif (T_ENDIF)"                shift, and go to state 416
    "static (T_STATIC)"              shift, and go to state 417
    "abstract (T_ABSTRACT)"          shift, and go to state 418
    "final (T_FINAL)"                shift, and go to state 419
    "private (T_PRIVATE)"            shift, and go to state 420
    "protected (T_PROTECTED)"        shift, and go to state 421
    "public (T_PUBLIC)"              shift, and go to state 422
    "identifier (T_STRING)"          shift, and go to state 423
    "variable (T_VARIABLE)"          shift, and go to state 35
    "exit (T_EXIT)"                  shift, and go to state 424
    "if (T_IF)"                      shift, and go to state 425
    "echo (T_ECHO)"                  shift, and go to state 426
    "do (T_DO)"                      shift, and go to state 427
    "while (T_WHILE)"                shift, and go to state 428
    "endwhile (T_ENDWHILE)"          shift, and go to state 429
    "for (T_FOR)"                    shift, and go to state 430
    "endfor (T_ENDFOR)"              shift, and go to state 431
    "foreach (T_FOREACH)"            shift, and go to state 432
    "endforeach (T_ENDFOREACH)"      shift, and go to state 433
    "declare (T_DECLARE)"            shift, and go to state 434
    "enddeclare (T_ENDDECLARE)"      shift, and go to state 435
    "as (T_AS)"                      shift, and go to state 436
    "switch (T_SWITCH)"              shift, and go to state 437
    "endswitch (T_ENDSWITCH)"        shift, and go to state 438
    "case (T_CASE)"                  shift, and go to state 439
    "default (T_DEFAULT)"            shift, and go to state 440
    "break (T_BREAK)"                shift, and go to state 441
    "continue (T_CONTINUE)"          shift, and go to state 442
    "goto (T_GOTO)"                  shift, and go to state 443
    "function (T_FUNCTION)"          shift, and go to state 444
    "const (T_CONST)"                shift, and go to state 445
    "return (T_RETURN)"              shift, and go to state 446
    "try (T_TRY)"                    shift, and go to state 447
    "catch (T_CATCH)"                shift, and go to state 448
    "finally (T_FINALLY)"            shift, and go to state 449
    "throw (T_THROW)"                shift, and go to state 450
    "use (T_USE)"                    shift, and go to state 451
    "insteadof (T_INSTEADOF)"        shift, and go to state 452
    "global (T_GLOBAL)"              shift, and go to state 453
    "var (T_VAR)"                    shift, and go to state 454
    "unset (T_UNSET)"                shift, and go to state 455
    "isset (T_ISSET)"                shift, and go to state 456
    "empty (T_EMPTY)"                shift, and go to state 457
    "class (T_CLASS)"                shift, and go to state 458
    "trait (T_TRAIT)"                shift, and go to state 459
    "interface (T_INTERFACE)"        shift, and go to state 460
    "extends (T_EXTENDS)"            shift, and go to state 461
    "implements (T_IMPLEMENTS)"      shift, and go to state 462
    "list (T_LIST)"                  shift, and go to state 463
    "array (T_ARRAY)"                shift, and go to state 464
    "callable (T_CALLABLE)"          shift, and go to state 465
    "__LINE__ (T_LINE)"              shift, and go to state 466
    "__FILE__ (T_FILE)"              shift, and go to state 467
    "__DIR__ (T_DIR)"                shift, and go to state 468
    "__CLASS__ (T_CLASS_C)"          shift, and go to state 469
    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 470
    "__METHOD__ (T_METHOD_C)"        shift, and go to state 471
    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 472
    "namespace (T_NAMESPACE)"        shift, and go to state 473
    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 474
    '{'                              shift, and go to state 475
    '$'                              shift, and go to state 82

    reserved_non_modifiers  go to state 476
    semi_reserved           go to state 477
    identifier              go to state 478
    simple_variable         go to state 479
    member_name             go to state 480


State 241

  438 callable_variable: constant '[' . optional_expr ']'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 427 (optional_expr)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 177
    optional_expr               go to state 481
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 242

  324 expr_without_variable: expr "or (T_LOGICAL_OR)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 482
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 243

  326 expr_without_variable: expr "xor (T_LOGICAL_XOR)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 483
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 244

  325 expr_without_variable: expr "and (T_LOGICAL_AND)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 484
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 245

  355 expr_without_variable: expr '?' . expr ':' expr
  356                      | expr '?' . ':' expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    ':'                                           shift, and go to state 485
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 486
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 246

  357 expr_without_variable: expr "?? (T_COALESCE)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 487
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 247

  322 expr_without_variable: expr "|| (T_BOOLEAN_OR)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 488
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 248

  323 expr_without_variable: expr "&& (T_BOOLEAN_AND)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 489
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 249

  327 expr_without_variable: expr '|' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 490
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 250

  329 expr_without_variable: expr '^' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 491
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 251

  328 expr_without_variable: expr '&' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 492
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 252

  345 expr_without_variable: expr "== (T_IS_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 493
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 253

  346 expr_without_variable: expr "!= (T_IS_NOT_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 494
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 254

  343 expr_without_variable: expr "=== (T_IS_IDENTICAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 495
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 255

  344 expr_without_variable: expr "!== (T_IS_NOT_IDENTICAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 496
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 256

  351 expr_without_variable: expr "<=> (T_SPACESHIP)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 497
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 257

  347 expr_without_variable: expr '<' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 498
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 258

  348 expr_without_variable: expr "<= (T_IS_SMALLER_OR_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 499
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 259

  349 expr_without_variable: expr '>' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 500
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 260

  350 expr_without_variable: expr ">= (T_IS_GREATER_OR_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 501
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 261

  337 expr_without_variable: expr "<< (T_SL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 502
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 262

  338 expr_without_variable: expr ">> (T_SR)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 503
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 263

  331 expr_without_variable: expr '+' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 504
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 264

  332 expr_without_variable: expr '-' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 505
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 265

  330 expr_without_variable: expr '.' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 506
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 266

  333 expr_without_variable: expr '*' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 507
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 267

  335 expr_without_variable: expr '/' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 508
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 268

  336 expr_without_variable: expr '%' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 509
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 269

  352 expr_without_variable: expr "instanceof (T_INSTANCEOF)" . class_name_reference

    "static (T_STATIC)"        shift, and go to state 131
    "identifier (T_STRING)"    shift, and go to state 115
    "variable (T_VARIABLE)"    shift, and go to state 35
    "namespace (T_NAMESPACE)"  shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
    '$'                        shift, and go to state 82

    namespace_name        go to state 83
    name                  go to state 153
    class_name            go to state 155
    class_name_reference  go to state 510
    simple_variable       go to state 157
    new_variable          go to state 158


State 270

  334 expr_without_variable: expr "** (T_POW)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 511
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 271

  145 statement: expr ';' .

    $default  reduce using rule 145 (statement)


State 272

  390 function_call: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . member_name argument_list
  424 constant: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . identifier
  449 static_member: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . simple_variable

    "include (T_INCLUDE)"            shift, and go to state 401
    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 402
    "eval (T_EVAL)"                  shift, and go to state 403
    "require (T_REQUIRE)"            shift, and go to state 404
    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 405
    "or (T_LOGICAL_OR)"              shift, and go to state 406
    "xor (T_LOGICAL_XOR)"            shift, and go to state 407
    "and (T_LOGICAL_AND)"            shift, and go to state 408
    "print (T_PRINT)"                shift, and go to state 409
    "yield (T_YIELD)"                shift, and go to state 410
    "instanceof (T_INSTANCEOF)"      shift, and go to state 411
    "new (T_NEW)"                    shift, and go to state 412
    "clone (T_CLONE)"                shift, and go to state 413
    "elseif (T_ELSEIF)"              shift, and go to state 414
    "else (T_ELSE)"                  shift, and go to state 415
    "endif (T_ENDIF)"                shift, and go to state 416
    "static (T_STATIC)"              shift, and go to state 417
    "abstract (T_ABSTRACT)"          shift, and go to state 418
    "final (T_FINAL)"                shift, and go to state 419
    "private (T_PRIVATE)"            shift, and go to state 420
    "protected (T_PROTECTED)"        shift, and go to state 421
    "public (T_PUBLIC)"              shift, and go to state 422
    "identifier (T_STRING)"          shift, and go to state 423
    "variable (T_VARIABLE)"          shift, and go to state 35
    "exit (T_EXIT)"                  shift, and go to state 424
    "if (T_IF)"                      shift, and go to state 425
    "echo (T_ECHO)"                  shift, and go to state 426
    "do (T_DO)"                      shift, and go to state 427
    "while (T_WHILE)"                shift, and go to state 428
    "endwhile (T_ENDWHILE)"          shift, and go to state 429
    "for (T_FOR)"                    shift, and go to state 430
    "endfor (T_ENDFOR)"              shift, and go to state 431
    "foreach (T_FOREACH)"            shift, and go to state 432
    "endforeach (T_ENDFOREACH)"      shift, and go to state 433
    "declare (T_DECLARE)"            shift, and go to state 434
    "enddeclare (T_ENDDECLARE)"      shift, and go to state 435
    "as (T_AS)"                      shift, and go to state 436
    "switch (T_SWITCH)"              shift, and go to state 437
    "endswitch (T_ENDSWITCH)"        shift, and go to state 438
    "case (T_CASE)"                  shift, and go to state 439
    "default (T_DEFAULT)"            shift, and go to state 440
    "break (T_BREAK)"                shift, and go to state 441
    "continue (T_CONTINUE)"          shift, and go to state 442
    "goto (T_GOTO)"                  shift, and go to state 443
    "function (T_FUNCTION)"          shift, and go to state 444
    "const (T_CONST)"                shift, and go to state 445
    "return (T_RETURN)"              shift, and go to state 446
    "try (T_TRY)"                    shift, and go to state 447
    "catch (T_CATCH)"                shift, and go to state 448
    "finally (T_FINALLY)"            shift, and go to state 449
    "throw (T_THROW)"                shift, and go to state 450
    "use (T_USE)"                    shift, and go to state 451
    "insteadof (T_INSTEADOF)"        shift, and go to state 452
    "global (T_GLOBAL)"              shift, and go to state 453
    "var (T_VAR)"                    shift, and go to state 454
    "unset (T_UNSET)"                shift, and go to state 455
    "isset (T_ISSET)"                shift, and go to state 456
    "empty (T_EMPTY)"                shift, and go to state 457
    "class (T_CLASS)"                shift, and go to state 458
    "trait (T_TRAIT)"                shift, and go to state 459
    "interface (T_INTERFACE)"        shift, and go to state 460
    "extends (T_EXTENDS)"            shift, and go to state 461
    "implements (T_IMPLEMENTS)"      shift, and go to state 462
    "list (T_LIST)"                  shift, and go to state 463
    "array (T_ARRAY)"                shift, and go to state 464
    "callable (T_CALLABLE)"          shift, and go to state 465
    "__LINE__ (T_LINE)"              shift, and go to state 466
    "__FILE__ (T_FILE)"              shift, and go to state 467
    "__DIR__ (T_DIR)"                shift, and go to state 468
    "__CLASS__ (T_CLASS_C)"          shift, and go to state 469
    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 470
    "__METHOD__ (T_METHOD_C)"        shift, and go to state 471
    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 472
    "namespace (T_NAMESPACE)"        shift, and go to state 473
    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 474
    '{'                              shift, and go to state 475
    '$'                              shift, and go to state 82

    reserved_non_modifiers  go to state 476
    semi_reserved           go to state 477
    identifier              go to state 512
    simple_variable         go to state 513
    member_name             go to state 514


State 273

  437 callable_variable: dereferencable '[' . optional_expr ']'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 427 (optional_expr)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 177
    optional_expr               go to state 515
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 274

  440 callable_variable: dereferencable "-> (T_OBJECT_OPERATOR)" . property_name argument_list
  444 variable: dereferencable "-> (T_OBJECT_OPERATOR)" . property_name

    "identifier (T_STRING)"  shift, and go to state 516
    "variable (T_VARIABLE)"  shift, and go to state 35
    '{'                      shift, and go to state 517
    '$'                      shift, and go to state 82

    simple_variable  go to state 518
    property_name    go to state 519


State 275

  439 callable_variable: dereferencable '{' . expr '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 520
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 276

  391 function_call: callable_expr argument_list .

    $default  reduce using rule 391 (function_call)


State 277

  303 expr_without_variable: variable '=' . expr
  304                      | variable '=' . '&' variable

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '&'                                           shift, and go to state 521
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 522
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 278

  306 expr_without_variable: variable "+= (T_PLUS_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 523
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 279

  307 expr_without_variable: variable "-= (T_MINUS_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 524
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 280

  308 expr_without_variable: variable "*= (T_MUL_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 525
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 281

  310 expr_without_variable: variable "/= (T_DIV_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 526
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 282

  311 expr_without_variable: variable ".= (T_CONCAT_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 527
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 283

  312 expr_without_variable: variable "%= (T_MOD_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 528
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 284

  313 expr_without_variable: variable "&= (T_AND_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 529
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 285

  314 expr_without_variable: variable "|= (T_OR_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 530
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 286

  315 expr_without_variable: variable "^= (T_XOR_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 531
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 287

  316 expr_without_variable: variable "<<= (T_SL_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 532
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 288

  317 expr_without_variable: variable ">>= (T_SR_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 533
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 289

  309 expr_without_variable: variable "**= (T_POW_EQUAL)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 534
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 290

  318 expr_without_variable: variable "++ (T_INC)" .

    $default  reduce using rule 318 (expr_without_variable)


State 291

  320 expr_without_variable: variable "-- (T_DEC)" .

    $default  reduce using rule 320 (expr_without_variable)


State 292

  375 expr_without_variable: function returns_ref . backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    $default  reduce using rule 378 (backup_doc_comment)

    backup_doc_comment  go to state 400


State 293

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  492 internal_functions_in_yacc: "eval (T_EVAL)" '(' expr . ')'

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270
    ')'                           shift, and go to state 535


State 294

  373 expr_without_variable: "yield (T_YIELD)" expr "=> (T_DOUBLE_ARROW)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 536
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 295

  404 dereferencable_scalar: '[' array_pair_list . ']'

    ']'  shift, and go to state 537


State 296

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  431 dereferencable: '(' expr . ')'
  434 callable_expr: '(' expr . ')'

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270
    ')'                           shift, and go to state 538


State 297

  430 dereferencable: variable .
  470 array_pair: '&' variable .

    ','       reduce using rule 470 (array_pair)
    ')'       reduce using rule 470 (array_pair)
    ']'       reduce using rule 470 (array_pair)
    $default  reduce using rule 430 (dereferencable)


State 298

  301 expr_without_variable: "list (T_LIST)" '(' . array_pair_list ')' '=' expr
  472 array_pair: "list (T_LIST)" '(' . array_pair_list ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '&'                                           shift, and go to state 145
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 146
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 463 (possible_array_pair)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 147
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    array_pair_list             go to state 539
    possible_array_pair         go to state 149
    non_empty_array_pair_list   go to state 150
    array_pair                  go to state 151
    internal_functions_in_yacc  go to state 113


State 299

  467 array_pair: expr "=> (T_DOUBLE_ARROW)" . expr
  469           | expr "=> (T_DOUBLE_ARROW)" . '&' variable
  471           | expr "=> (T_DOUBLE_ARROW)" . "list (T_LIST)" '(' array_pair_list ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '&'                                           shift, and go to state 540
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 541
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 542
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 300

  302 expr_without_variable: '[' array_pair_list ']' . '=' expr
  404 dereferencable_scalar: '[' array_pair_list ']' .

    '='  shift, and go to state 543

    $default  reduce using rule 404 (dereferencable_scalar)


State 301

  465 non_empty_array_pair_list: non_empty_array_pair_list ',' . possible_array_pair

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '&'                                           shift, and go to state 145
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 146
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 463 (possible_array_pair)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 147
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    possible_array_pair         go to state 544
    array_pair                  go to state 151
    internal_functions_in_yacc  go to state 113


State 302

  298 anonymous_class: "class (T_CLASS)" @8 . ctor_arguments extends_from implements_list backup_doc_comment '{' class_statement_list '}'

    '('  shift, and go to state 229

    $default  reduce using rule 401 (ctor_arguments)

    argument_list   go to state 304
    ctor_arguments  go to state 545


State 303

  454 new_variable: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . simple_variable

    "variable (T_VARIABLE)"  shift, and go to state 35
    '$'                      shift, and go to state 82

    simple_variable  go to state 546


State 304

  402 ctor_arguments: argument_list .

    $default  reduce using rule 402 (ctor_arguments)


State 305

  299 new_expr: "new (T_NEW)" class_name_reference ctor_arguments .

    $default  reduce using rule 299 (new_expr)


State 306

  451 new_variable: new_variable '[' . optional_expr ']'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 427 (optional_expr)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 177
    optional_expr               go to state 547
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 307

  453 new_variable: new_variable "-> (T_OBJECT_OPERATOR)" . property_name

    "identifier (T_STRING)"  shift, and go to state 516
    "variable (T_VARIABLE)"  shift, and go to state 35
    '{'                      shift, and go to state 517
    '$'                      shift, and go to state 82

    simple_variable  go to state 518
    property_name    go to state 548


State 308

  455 new_variable: new_variable ":: (T_PAAMAYIM_NEKUDOTAYIM)" . simple_variable

    "variable (T_VARIABLE)"  shift, and go to state 35
    '$'                      shift, and go to state 82

    simple_variable  go to state 549


State 309

  452 new_variable: new_variable '{' . expr '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 550
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 310

  244 static_var: "variable (T_VARIABLE)" '=' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 551
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 311

  241 static_var_list: static_var_list ',' . static_var

    "variable (T_VARIABLE)"  shift, and go to state 160

    static_var  go to state 552


State 312

  142 statement: "static (T_STATIC)" static_var_list ';' .

    $default  reduce using rule 142 (statement)


State 313

  376 expr_without_variable: "static (T_STATIC)" function returns_ref . backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    $default  reduce using rule 378 (backup_doc_comment)

    backup_doc_comment  go to state 553


State 314

  397 exit_expr: '(' optional_expr . ')'

    ')'  shift, and go to state 554


State 315

  209 if_stmt_without_else: "if (T_IF)" '(' expr . ')' statement
  213 alt_if_stmt_without_else: "if (T_IF)" '(' expr . ')' ':' inner_statement_list
  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270
    ')'                           shift, and go to state 555


State 316

  290 echo_expr_list: echo_expr_list ',' . echo_expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    echo_expr                   go to state 556
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 170
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 317

  143 statement: "echo (T_ECHO)" echo_expr_list ';' .

    $default  reduce using rule 143 (statement)


State 318

  135 statement: "do (T_DO)" statement "while (T_WHILE)" . '(' expr ')' ';'

    '('  shift, and go to state 557


State 319

  134 statement: "while (T_WHILE)" '(' expr . ')' while_statement
  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270
    ')'                           shift, and go to state 558


State 320

  136 statement: "for (T_FOR)" '(' for_exprs . ';' for_exprs ';' for_exprs ')' for_statement

    ';'  shift, and go to state 559


State 321

  294 for_exprs: non_empty_for_exprs .
  295 non_empty_for_exprs: non_empty_for_exprs . ',' expr

    ','  shift, and go to state 560

    $default  reduce using rule 294 (for_exprs)


State 322

  296 non_empty_for_exprs: expr .
  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 296 (non_empty_for_exprs)


State 323

  147 statement: "foreach (T_FOREACH)" '(' expr . "as (T_AS)" foreach_variable ')' foreach_statement
  148          | "foreach (T_FOREACH)" '(' expr . "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable ')' foreach_statement
  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270
    "as (T_AS)"                   shift, and go to state 561


State 324

  121 const_list: const_list . ',' const_decl
  150 statement: "declare (T_DECLARE)" '(' const_list . ')' $@3 declare_statement

    ','  shift, and go to state 330
    ')'  shift, and go to state 562


State 325

  137 statement: "switch (T_SWITCH)" '(' expr . ')' switch_case_list
  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270
    ')'                           shift, and go to state 563


State 326

  138 statement: "break (T_BREAK)" optional_expr ';' .

    $default  reduce using rule 138 (statement)


State 327

  139 statement: "continue (T_CONTINUE)" optional_expr ';' .

    $default  reduce using rule 139 (statement)


State 328

  154 statement: "goto (T_GOTO)" "identifier (T_STRING)" ';' .

    $default  reduce using rule 154 (statement)


State 329

  289 const_decl: "identifier (T_STRING)" '=' . expr backup_doc_comment

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 564
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 330

  121 const_list: const_list ',' . const_decl

    "identifier (T_STRING)"  shift, and go to state 181

    const_decl  go to state 565


State 331

  100 top_statement: "const (T_CONST)" const_list ';' .

    $default  reduce using rule 100 (top_statement)


State 332

  140 statement: "return (T_RETURN)" optional_expr ';' .

    $default  reduce using rule 140 (statement)


State 333

  123 inner_statement_list: inner_statement_list . inner_statement
  152 statement: "try (T_TRY)" '{' inner_statement_list . '}' catch_list finally_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 376
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '}'                                           shift, and go to state 566
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 378
    statement                        go to state 379
    function_declaration_statement   go to state 380
    class_declaration_statement      go to state 381
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 382
    interface_declaration_statement  go to state 383
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr_without_variable            go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    expr                             go to state 105
    variable_class_name              go to state 106
    dereferencable                   go to state 107
    callable_expr                    go to state 108
    callable_variable                go to state 109
    variable                         go to state 110
    simple_variable                  go to state 111
    static_member                    go to state 112
    internal_functions_in_yacc       go to state 113


State 334

  153 statement: "throw (T_THROW)" expr ';' .

    $default  reduce using rule 153 (statement)


State 335

   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name . "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}'
  117 unprefixed_use_declaration: namespace_name .
  118                           | namespace_name . "as (T_AS)" "identifier (T_STRING)"

    "as (T_AS)"            shift, and go to state 337
    "\\ (T_NS_SEPARATOR)"  shift, and go to state 567

    $default  reduce using rule 117 (unprefixed_use_declaration)


State 336

  120 use_declaration: "\\ (T_NS_SEPARATOR)" unprefixed_use_declaration .

    $default  reduce using rule 120 (use_declaration)


State 337

  118 unprefixed_use_declaration: namespace_name "as (T_AS)" . "identifier (T_STRING)"

    "identifier (T_STRING)"  shift, and go to state 568


State 338

   81 namespace_name: namespace_name "\\ (T_NS_SEPARATOR)" . "identifier (T_STRING)"
  105 mixed_group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" . '{' inline_use_declarations possible_comma '}'

    "identifier (T_STRING)"  shift, and go to state 387
    '{'                      shift, and go to state 569


State 339

  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" . namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}'
  120 use_declaration: "\\ (T_NS_SEPARATOR)" . unprefixed_use_declaration

    "identifier (T_STRING)"  shift, and go to state 115

    namespace_name              go to state 570
    unprefixed_use_declaration  go to state 336


State 340

   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
  103 group_use_declaration: namespace_name . "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}'
  117 unprefixed_use_declaration: namespace_name .
  118                           | namespace_name . "as (T_AS)" "identifier (T_STRING)"

    "as (T_AS)"            shift, and go to state 337
    "\\ (T_NS_SEPARATOR)"  shift, and go to state 571

    $default  reduce using rule 117 (unprefixed_use_declaration)


State 341

   97 top_statement: "use (T_USE)" use_type group_use_declaration . ';'

    ';'  shift, and go to state 572


State 342

   99 top_statement: "use (T_USE)" use_type use_declarations . ';'
  113 use_declarations: use_declarations . ',' use_declaration

    ','  shift, and go to state 344
    ';'  shift, and go to state 573


State 343

   96 top_statement: "use (T_USE)" mixed_group_use_declaration ';' .

    $default  reduce using rule 96 (top_statement)


State 344

  113 use_declarations: use_declarations ',' . use_declaration

    "identifier (T_STRING)"  shift, and go to state 115
    "\\ (T_NS_SEPARATOR)"    shift, and go to state 574

    namespace_name              go to state 575
    unprefixed_use_declaration  go to state 194
    use_declaration             go to state 576


State 345

   98 top_statement: "use (T_USE)" use_declarations ';' .

    $default  reduce using rule 98 (top_statement)


State 346

  238 global_var_list: global_var_list ',' . global_var

    "variable (T_VARIABLE)"  shift, and go to state 35
    '$'                      shift, and go to state 82

    global_var       go to state 577
    simple_variable  go to state 198


State 347

  141 statement: "global (T_GLOBAL)" global_var_list ';' .

    $default  reduce using rule 141 (statement)


State 348

  146 statement: "unset (T_UNSET)" '(' unset_variables . ')' ';'
  163 unset_variables: unset_variables . ',' unset_variable

    ','  shift, and go to state 578
    ')'  shift, and go to state 579


State 349

  162 unset_variables: unset_variable .

    $default  reduce using rule 162 (unset_variables)


State 350

  164 unset_variable: variable .
  430 dereferencable: variable .

    ','       reduce using rule 164 (unset_variable)
    ')'       reduce using rule 164 (unset_variable)
    $default  reduce using rule 430 (dereferencable)


State 351

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  497 isset_variable: expr .

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 497 (isset_variable)


State 352

  488 internal_functions_in_yacc: "isset (T_ISSET)" '(' isset_variables . ')'
  496 isset_variables: isset_variables . ',' isset_variable

    ','  shift, and go to state 580
    ')'  shift, and go to state 581


State 353

  495 isset_variables: isset_variable .

    $default  reduce using rule 495 (isset_variables)


State 354

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  489 internal_functions_in_yacc: "empty (T_EMPTY)" '(' expr . ')'

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270
    ')'                           shift, and go to state 582


State 355

   90 top_statement: "__halt_compiler (T_HALT_COMPILER)" '(' ')' . ';'

    ';'  shift, and go to state 583


State 356

  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" . extends_from implements_list backup_doc_comment '{' class_statement_list '}'

    "extends (T_EXTENDS)"  shift, and go to state 584

    $default  reduce using rule 182 (extends_from)

    extends_from  go to state 585


State 357

  179 trait_declaration_statement: "trait (T_TRAIT)" @6 "identifier (T_STRING)" . backup_doc_comment '{' class_statement_list '}'

    $default  reduce using rule 378 (backup_doc_comment)

    backup_doc_comment  go to state 586


State 358

  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 "identifier (T_STRING)" . interface_extends_list backup_doc_comment '{' class_statement_list '}'

    "extends (T_EXTENDS)"  shift, and go to state 587

    $default  reduce using rule 184 (interface_extends_list)

    interface_extends_list  go to state 588


State 359

  301 expr_without_variable: "list (T_LIST)" '(' array_pair_list . ')' '=' expr

    ')'  shift, and go to state 589


State 360

  403 dereferencable_scalar: "array (T_ARRAY)" '(' array_pair_list . ')'

    ')'  shift, and go to state 590


State 361

  478 encaps_var: "variable (T_VARIABLE)" '[' . encaps_var_offset ']'

    '-'                      shift, and go to state 591
    "identifier (T_STRING)"  shift, and go to state 592
    "variable (T_VARIABLE)"  shift, and go to state 593
    "number (T_NUM_STRING)"  shift, and go to state 594

    encaps_var_offset  go to state 595


State 362

  479 encaps_var: "variable (T_VARIABLE)" "-> (T_OBJECT_OPERATOR)" . "identifier (T_STRING)"

    "identifier (T_STRING)"  shift, and go to state 596


State 363

  416 scalar: "heredoc start (T_START_HEREDOC)" "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" "heredoc end (T_END_HEREDOC)" .

    $default  reduce using rule 416 (scalar)


State 364

  476 encaps_list: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" encaps_var .

    $default  reduce using rule 476 (encaps_list)


State 365

  481 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" . '}'
  482           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" . '[' expr ']' '}'

    '['  shift, and go to state 597
    '}'  shift, and go to state 598


State 366

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  480 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" expr . '}'

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270
    '}'                           shift, and go to state 599


State 367

  430 dereferencable: variable .
  483 encaps_var: "{$ (T_CURLY_OPEN)" variable . '}'

    '}'  shift, and go to state 600

    $default  reduce using rule 430 (dereferencable)


State 368

  474 encaps_list: encaps_list "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" .

    $default  reduce using rule 474 (encaps_list)


State 369

  419 scalar: "heredoc start (T_START_HEREDOC)" encaps_list "heredoc end (T_END_HEREDOC)" .

    $default  reduce using rule 419 (scalar)


State 370

  473 encaps_list: encaps_list encaps_var .

    $default  reduce using rule 473 (encaps_list)


State 371

   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
   83 name: "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" namespace_name .

    "\\ (T_NS_SEPARATOR)"  shift, and go to state 228

    $default  reduce using rule 83 (name)


State 372

   91 top_statement: "namespace (T_NAMESPACE)" namespace_name ';' .

    $default  reduce using rule 91 (top_statement)


State 373

   93 top_statement: "namespace (T_NAMESPACE)" namespace_name $@1 . '{' top_statement_list '}'

    '{'  shift, and go to state 601


State 374

   95 top_statement: "namespace (T_NAMESPACE)" $@2 '{' . top_statement_list '}'

    $default  reduce using rule 79 (top_statement_list)

    top_statement_list  go to state 602


State 375

  353 expr_without_variable: '(' expr ')' .
  431 dereferencable: '(' expr ')' .
  434 callable_expr: '(' expr ')' .

    '['                            reduce using rule 431 (dereferencable)
    "-> (T_OBJECT_OPERATOR)"       reduce using rule 431 (dereferencable)
    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 431 (dereferencable)
    '('                            reduce using rule 434 (callable_expr)
    '{'                            reduce using rule 431 (dereferencable)
    $default                       reduce using rule 353 (expr_without_variable)


State 376

  130 inner_statement: "__halt_compiler (T_HALT_COMPILER)" . '(' ')' ';'

    '('  shift, and go to state 603


State 377

  131 statement: '{' inner_statement_list '}' .

    $default  reduce using rule 131 (statement)


State 378

  123 inner_statement_list: inner_statement_list inner_statement .

    $default  reduce using rule 123 (inner_statement_list)


State 379

  125 inner_statement: statement .

    $default  reduce using rule 125 (inner_statement)


State 380

  126 inner_statement: function_declaration_statement .

    $default  reduce using rule 126 (inner_statement)


State 381

  127 inner_statement: class_declaration_statement .

    $default  reduce using rule 127 (inner_statement)


State 382

  128 inner_statement: trait_declaration_statement .

    $default  reduce using rule 128 (inner_statement)


State 383

  129 inner_statement: interface_declaration_statement .

    $default  reduce using rule 129 (inner_statement)


State 384

  369 expr_without_variable: '`' backticks_expr '`' .

    $default  reduce using rule 369 (expr_without_variable)


State 385

  418 scalar: '"' encaps_list '"' .

    $default  reduce using rule 418 (scalar)


State 386

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  446 simple_variable: '$' '{' expr . '}'

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270
    '}'                           shift, and go to state 604


State 387

   81 namespace_name: namespace_name "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)" .

    $default  reduce using rule 81 (namespace_name)


State 388

  237 argument: "... (T_ELLIPSIS)" . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 605
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 389

  232 argument_list: '(' ')' .

    $default  reduce using rule 232 (argument_list)


State 390

  233 argument_list: '(' non_empty_argument_list . ')'
  235 non_empty_argument_list: non_empty_argument_list . ',' argument

    ','  shift, and go to state 606
    ')'  shift, and go to state 607


State 391

  234 non_empty_argument_list: argument .

    $default  reduce using rule 234 (non_empty_argument_list)


State 392

  236 argument: expr .
  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 236 (argument)


State 393

  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 . "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}'

    "identifier (T_STRING)"  shift, and go to state 608


State 394

  210 if_stmt_without_else: if_stmt_without_else "elseif (T_ELSEIF)" '(' . expr ')' statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 609
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 395

  212 if_stmt: if_stmt_without_else "else (T_ELSE)" statement .

    $default  reduce using rule 212 (if_stmt)


State 396

  214 alt_if_stmt_without_else: alt_if_stmt_without_else "elseif (T_ELSEIF)" '(' . expr ')' ':' inner_statement_list

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 610
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 397

  216 alt_if_stmt: alt_if_stmt_without_else "else (T_ELSE)" ':' . inner_statement_list "endif (T_ENDIF)" ';'

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 611


State 398

  215 alt_if_stmt: alt_if_stmt_without_else "endif (T_ENDIF)" ';' .

    $default  reduce using rule 215 (alt_if_stmt)


State 399

  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" . backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    $default  reduce using rule 378 (backup_doc_comment)

    backup_doc_comment  go to state 612


State 400

  375 expr_without_variable: function returns_ref backup_doc_comment . '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    '('  shift, and go to state 613


State 401

    2 reserved_non_modifiers: "include (T_INCLUDE)" .

    $default  reduce using rule 2 (reserved_non_modifiers)


State 402

    3 reserved_non_modifiers: "include_once (T_INCLUDE_ONCE)" .

    $default  reduce using rule 3 (reserved_non_modifiers)


State 403

    4 reserved_non_modifiers: "eval (T_EVAL)" .

    $default  reduce using rule 4 (reserved_non_modifiers)


State 404

    5 reserved_non_modifiers: "require (T_REQUIRE)" .

    $default  reduce using rule 5 (reserved_non_modifiers)


State 405

    6 reserved_non_modifiers: "require_once (T_REQUIRE_ONCE)" .

    $default  reduce using rule 6 (reserved_non_modifiers)


State 406

    7 reserved_non_modifiers: "or (T_LOGICAL_OR)" .

    $default  reduce using rule 7 (reserved_non_modifiers)


State 407

    8 reserved_non_modifiers: "xor (T_LOGICAL_XOR)" .

    $default  reduce using rule 8 (reserved_non_modifiers)


State 408

    9 reserved_non_modifiers: "and (T_LOGICAL_AND)" .

    $default  reduce using rule 9 (reserved_non_modifiers)


State 409

   45 reserved_non_modifiers: "print (T_PRINT)" .

    $default  reduce using rule 45 (reserved_non_modifiers)


State 410

   46 reserved_non_modifiers: "yield (T_YIELD)" .

    $default  reduce using rule 46 (reserved_non_modifiers)


State 411

   10 reserved_non_modifiers: "instanceof (T_INSTANCEOF)" .

    $default  reduce using rule 10 (reserved_non_modifiers)


State 412

   11 reserved_non_modifiers: "new (T_NEW)" .

    $default  reduce using rule 11 (reserved_non_modifiers)


State 413

   12 reserved_non_modifiers: "clone (T_CLONE)" .

    $default  reduce using rule 12 (reserved_non_modifiers)


State 414

   15 reserved_non_modifiers: "elseif (T_ELSEIF)" .

    $default  reduce using rule 15 (reserved_non_modifiers)


State 415

   16 reserved_non_modifiers: "else (T_ELSE)" .

    $default  reduce using rule 16 (reserved_non_modifiers)


State 416

   17 reserved_non_modifiers: "endif (T_ENDIF)" .

    $default  reduce using rule 17 (reserved_non_modifiers)


State 417

   70 semi_reserved: "static (T_STATIC)" .

    $default  reduce using rule 70 (semi_reserved)


State 418

   71 semi_reserved: "abstract (T_ABSTRACT)" .

    $default  reduce using rule 71 (semi_reserved)


State 419

   72 semi_reserved: "final (T_FINAL)" .

    $default  reduce using rule 72 (semi_reserved)


State 420

   73 semi_reserved: "private (T_PRIVATE)" .

    $default  reduce using rule 73 (semi_reserved)


State 421

   74 semi_reserved: "protected (T_PROTECTED)" .

    $default  reduce using rule 74 (semi_reserved)


State 422

   75 semi_reserved: "public (T_PUBLIC)" .

    $default  reduce using rule 75 (semi_reserved)


State 423

   76 identifier: "identifier (T_STRING)" .

    $default  reduce using rule 76 (identifier)


State 424

   13 reserved_non_modifiers: "exit (T_EXIT)" .

    $default  reduce using rule 13 (reserved_non_modifiers)


State 425

   14 reserved_non_modifiers: "if (T_IF)" .

    $default  reduce using rule 14 (reserved_non_modifiers)


State 426

   18 reserved_non_modifiers: "echo (T_ECHO)" .

    $default  reduce using rule 18 (reserved_non_modifiers)


State 427

   19 reserved_non_modifiers: "do (T_DO)" .

    $default  reduce using rule 19 (reserved_non_modifiers)


State 428

   20 reserved_non_modifiers: "while (T_WHILE)" .

    $default  reduce using rule 20 (reserved_non_modifiers)


State 429

   21 reserved_non_modifiers: "endwhile (T_ENDWHILE)" .

    $default  reduce using rule 21 (reserved_non_modifiers)


State 430

   22 reserved_non_modifiers: "for (T_FOR)" .

    $default  reduce using rule 22 (reserved_non_modifiers)


State 431

   23 reserved_non_modifiers: "endfor (T_ENDFOR)" .

    $default  reduce using rule 23 (reserved_non_modifiers)


State 432

   24 reserved_non_modifiers: "foreach (T_FOREACH)" .

    $default  reduce using rule 24 (reserved_non_modifiers)


State 433

   25 reserved_non_modifiers: "endforeach (T_ENDFOREACH)" .

    $default  reduce using rule 25 (reserved_non_modifiers)


State 434

   26 reserved_non_modifiers: "declare (T_DECLARE)" .

    $default  reduce using rule 26 (reserved_non_modifiers)


State 435

   27 reserved_non_modifiers: "enddeclare (T_ENDDECLARE)" .

    $default  reduce using rule 27 (reserved_non_modifiers)


State 436

   28 reserved_non_modifiers: "as (T_AS)" .

    $default  reduce using rule 28 (reserved_non_modifiers)


State 437

   48 reserved_non_modifiers: "switch (T_SWITCH)" .

    $default  reduce using rule 48 (reserved_non_modifiers)


State 438

   49 reserved_non_modifiers: "endswitch (T_ENDSWITCH)" .

    $default  reduce using rule 49 (reserved_non_modifiers)


State 439

   50 reserved_non_modifiers: "case (T_CASE)" .

    $default  reduce using rule 50 (reserved_non_modifiers)


State 440

   51 reserved_non_modifiers: "default (T_DEFAULT)" .

    $default  reduce using rule 51 (reserved_non_modifiers)


State 441

   52 reserved_non_modifiers: "break (T_BREAK)" .

    $default  reduce using rule 52 (reserved_non_modifiers)


State 442

   40 reserved_non_modifiers: "continue (T_CONTINUE)" .

    $default  reduce using rule 40 (reserved_non_modifiers)


State 443

   41 reserved_non_modifiers: "goto (T_GOTO)" .

    $default  reduce using rule 41 (reserved_non_modifiers)


State 444

   42 reserved_non_modifiers: "function (T_FUNCTION)" .

    $default  reduce using rule 42 (reserved_non_modifiers)


State 445

   43 reserved_non_modifiers: "const (T_CONST)" .

    $default  reduce using rule 43 (reserved_non_modifiers)


State 446

   44 reserved_non_modifiers: "return (T_RETURN)" .

    $default  reduce using rule 44 (reserved_non_modifiers)


State 447

   29 reserved_non_modifiers: "try (T_TRY)" .

    $default  reduce using rule 29 (reserved_non_modifiers)


State 448

   30 reserved_non_modifiers: "catch (T_CATCH)" .

    $default  reduce using rule 30 (reserved_non_modifiers)


State 449

   31 reserved_non_modifiers: "finally (T_FINALLY)" .

    $default  reduce using rule 31 (reserved_non_modifiers)


State 450

   32 reserved_non_modifiers: "throw (T_THROW)" .

    $default  reduce using rule 32 (reserved_non_modifiers)


State 451

   33 reserved_non_modifiers: "use (T_USE)" .

    $default  reduce using rule 33 (reserved_non_modifiers)


State 452

   34 reserved_non_modifiers: "insteadof (T_INSTEADOF)" .

    $default  reduce using rule 34 (reserved_non_modifiers)


State 453

   35 reserved_non_modifiers: "global (T_GLOBAL)" .

    $default  reduce using rule 35 (reserved_non_modifiers)


State 454

   36 reserved_non_modifiers: "var (T_VAR)" .

    $default  reduce using rule 36 (reserved_non_modifiers)


State 455

   37 reserved_non_modifiers: "unset (T_UNSET)" .

    $default  reduce using rule 37 (reserved_non_modifiers)


State 456

   38 reserved_non_modifiers: "isset (T_ISSET)" .

    $default  reduce using rule 38 (reserved_non_modifiers)


State 457

   39 reserved_non_modifiers: "empty (T_EMPTY)" .

    $default  reduce using rule 39 (reserved_non_modifiers)


State 458

   60 reserved_non_modifiers: "class (T_CLASS)" .

    $default  reduce using rule 60 (reserved_non_modifiers)


State 459

   58 reserved_non_modifiers: "trait (T_TRAIT)" .

    $default  reduce using rule 58 (reserved_non_modifiers)


State 460

   59 reserved_non_modifiers: "interface (T_INTERFACE)" .

    $default  reduce using rule 59 (reserved_non_modifiers)


State 461

   55 reserved_non_modifiers: "extends (T_EXTENDS)" .

    $default  reduce using rule 55 (reserved_non_modifiers)


State 462

   56 reserved_non_modifiers: "implements (T_IMPLEMENTS)" .

    $default  reduce using rule 56 (reserved_non_modifiers)


State 463

   47 reserved_non_modifiers: "list (T_LIST)" .

    $default  reduce using rule 47 (reserved_non_modifiers)


State 464

   53 reserved_non_modifiers: "array (T_ARRAY)" .

    $default  reduce using rule 53 (reserved_non_modifiers)


State 465

   54 reserved_non_modifiers: "callable (T_CALLABLE)" .

    $default  reduce using rule 54 (reserved_non_modifiers)


State 466

   65 reserved_non_modifiers: "__LINE__ (T_LINE)" .

    $default  reduce using rule 65 (reserved_non_modifiers)


State 467

   66 reserved_non_modifiers: "__FILE__ (T_FILE)" .

    $default  reduce using rule 66 (reserved_non_modifiers)


State 468

   67 reserved_non_modifiers: "__DIR__ (T_DIR)" .

    $default  reduce using rule 67 (reserved_non_modifiers)


State 469

   61 reserved_non_modifiers: "__CLASS__ (T_CLASS_C)" .

    $default  reduce using rule 61 (reserved_non_modifiers)


State 470

   62 reserved_non_modifiers: "__TRAIT__ (T_TRAIT_C)" .

    $default  reduce using rule 62 (reserved_non_modifiers)


State 471

   64 reserved_non_modifiers: "__METHOD__ (T_METHOD_C)" .

    $default  reduce using rule 64 (reserved_non_modifiers)


State 472

   63 reserved_non_modifiers: "__FUNCTION__ (T_FUNC_C)" .

    $default  reduce using rule 63 (reserved_non_modifiers)


State 473

   57 reserved_non_modifiers: "namespace (T_NAMESPACE)" .

    $default  reduce using rule 57 (reserved_non_modifiers)


State 474

   68 reserved_non_modifiers: "__NAMESPACE__ (T_NS_C)" .

    $default  reduce using rule 68 (reserved_non_modifiers)


State 475

  457 member_name: '{' . expr '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 614
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 476

   69 semi_reserved: reserved_non_modifiers .

    $default  reduce using rule 69 (semi_reserved)


State 477

   77 identifier: semi_reserved .

    $default  reduce using rule 77 (identifier)


State 478

  423 constant: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier .
  456 member_name: identifier .

    '('       reduce using rule 456 (member_name)
    $default  reduce using rule 423 (constant)


State 479

  448 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable .
  458 member_name: simple_variable .

    '('       reduce using rule 458 (member_name)
    $default  reduce using rule 448 (static_member)


State 480

  389 function_call: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name . argument_list

    '('  shift, and go to state 229

    argument_list  go to state 615


State 481

  438 callable_variable: constant '[' optional_expr . ']'

    ']'  shift, and go to state 616


State 482

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  324                      | expr "or (T_LOGICAL_OR)" expr .
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 324 (expr_without_variable)


State 483

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  326                      | expr "xor (T_LOGICAL_XOR)" expr .
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 326 (expr_without_variable)


State 484

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  325                      | expr "and (T_LOGICAL_AND)" expr .
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 325 (expr_without_variable)


State 485

  356 expr_without_variable: expr '?' ':' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 617
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 486

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  355                      | expr '?' expr . ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    ':'                           shift, and go to state 618
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270


State 487

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  357                      | expr "?? (T_COALESCE)" expr .

    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 357 (expr_without_variable)


State 488

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  322                      | expr "|| (T_BOOLEAN_OR)" expr .
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 322 (expr_without_variable)


State 489

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  323                      | expr "&& (T_BOOLEAN_AND)" expr .
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 323 (expr_without_variable)


State 490

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  327                      | expr '|' expr .
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 327 (expr_without_variable)


State 491

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  329                      | expr '^' expr .
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 329 (expr_without_variable)


State 492

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  328                      | expr '&' expr .
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 328 (expr_without_variable)


State 493

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  345                      | expr "== (T_IS_EQUAL)" expr .
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    "== (T_IS_EQUAL)"           error (nonassociative)
    "!= (T_IS_NOT_EQUAL)"       error (nonassociative)
    "=== (T_IS_IDENTICAL)"      error (nonassociative)
    "!== (T_IS_NOT_IDENTICAL)"  error (nonassociative)
    "<=> (T_SPACESHIP)"         error (nonassociative)

    $default  reduce using rule 345 (expr_without_variable)


State 494

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  346                      | expr "!= (T_IS_NOT_EQUAL)" expr .
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    "== (T_IS_EQUAL)"           error (nonassociative)
    "!= (T_IS_NOT_EQUAL)"       error (nonassociative)
    "=== (T_IS_IDENTICAL)"      error (nonassociative)
    "!== (T_IS_NOT_IDENTICAL)"  error (nonassociative)
    "<=> (T_SPACESHIP)"         error (nonassociative)

    $default  reduce using rule 346 (expr_without_variable)


State 495

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  343                      | expr "=== (T_IS_IDENTICAL)" expr .
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    "== (T_IS_EQUAL)"           error (nonassociative)
    "!= (T_IS_NOT_EQUAL)"       error (nonassociative)
    "=== (T_IS_IDENTICAL)"      error (nonassociative)
    "!== (T_IS_NOT_IDENTICAL)"  error (nonassociative)
    "<=> (T_SPACESHIP)"         error (nonassociative)

    $default  reduce using rule 343 (expr_without_variable)


State 496

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  344                      | expr "!== (T_IS_NOT_IDENTICAL)" expr .
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    "== (T_IS_EQUAL)"           error (nonassociative)
    "!= (T_IS_NOT_EQUAL)"       error (nonassociative)
    "=== (T_IS_IDENTICAL)"      error (nonassociative)
    "!== (T_IS_NOT_IDENTICAL)"  error (nonassociative)
    "<=> (T_SPACESHIP)"         error (nonassociative)

    $default  reduce using rule 344 (expr_without_variable)


State 497

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  351                      | expr "<=> (T_SPACESHIP)" expr .
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    "== (T_IS_EQUAL)"           error (nonassociative)
    "!= (T_IS_NOT_EQUAL)"       error (nonassociative)
    "=== (T_IS_IDENTICAL)"      error (nonassociative)
    "!== (T_IS_NOT_IDENTICAL)"  error (nonassociative)
    "<=> (T_SPACESHIP)"         error (nonassociative)

    $default  reduce using rule 351 (expr_without_variable)


State 498

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  347                      | expr '<' expr .
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "<< (T_SL)"                  shift, and go to state 261
    ">> (T_SR)"                  shift, and go to state 262
    '+'                          shift, and go to state 263
    '-'                          shift, and go to state 264
    '.'                          shift, and go to state 265
    '*'                          shift, and go to state 266
    '/'                          shift, and go to state 267
    '%'                          shift, and go to state 268
    "instanceof (T_INSTANCEOF)"  shift, and go to state 269
    "** (T_POW)"                 shift, and go to state 270

    '<'                           error (nonassociative)
    "<= (T_IS_SMALLER_OR_EQUAL)"  error (nonassociative)
    '>'                           error (nonassociative)
    ">= (T_IS_GREATER_OR_EQUAL)"  error (nonassociative)

    $default  reduce using rule 347 (expr_without_variable)


State 499

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  348                      | expr "<= (T_IS_SMALLER_OR_EQUAL)" expr .
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "<< (T_SL)"                  shift, and go to state 261
    ">> (T_SR)"                  shift, and go to state 262
    '+'                          shift, and go to state 263
    '-'                          shift, and go to state 264
    '.'                          shift, and go to state 265
    '*'                          shift, and go to state 266
    '/'                          shift, and go to state 267
    '%'                          shift, and go to state 268
    "instanceof (T_INSTANCEOF)"  shift, and go to state 269
    "** (T_POW)"                 shift, and go to state 270

    '<'                           error (nonassociative)
    "<= (T_IS_SMALLER_OR_EQUAL)"  error (nonassociative)
    '>'                           error (nonassociative)
    ">= (T_IS_GREATER_OR_EQUAL)"  error (nonassociative)

    $default  reduce using rule 348 (expr_without_variable)


State 500

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  349                      | expr '>' expr .
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "<< (T_SL)"                  shift, and go to state 261
    ">> (T_SR)"                  shift, and go to state 262
    '+'                          shift, and go to state 263
    '-'                          shift, and go to state 264
    '.'                          shift, and go to state 265
    '*'                          shift, and go to state 266
    '/'                          shift, and go to state 267
    '%'                          shift, and go to state 268
    "instanceof (T_INSTANCEOF)"  shift, and go to state 269
    "** (T_POW)"                 shift, and go to state 270

    '<'                           error (nonassociative)
    "<= (T_IS_SMALLER_OR_EQUAL)"  error (nonassociative)
    '>'                           error (nonassociative)
    ">= (T_IS_GREATER_OR_EQUAL)"  error (nonassociative)

    $default  reduce using rule 349 (expr_without_variable)


State 501

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  350                      | expr ">= (T_IS_GREATER_OR_EQUAL)" expr .
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "<< (T_SL)"                  shift, and go to state 261
    ">> (T_SR)"                  shift, and go to state 262
    '+'                          shift, and go to state 263
    '-'                          shift, and go to state 264
    '.'                          shift, and go to state 265
    '*'                          shift, and go to state 266
    '/'                          shift, and go to state 267
    '%'                          shift, and go to state 268
    "instanceof (T_INSTANCEOF)"  shift, and go to state 269
    "** (T_POW)"                 shift, and go to state 270

    '<'                           error (nonassociative)
    "<= (T_IS_SMALLER_OR_EQUAL)"  error (nonassociative)
    '>'                           error (nonassociative)
    ">= (T_IS_GREATER_OR_EQUAL)"  error (nonassociative)

    $default  reduce using rule 350 (expr_without_variable)


State 502

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  337                      | expr "<< (T_SL)" expr .
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '+'                          shift, and go to state 263
    '-'                          shift, and go to state 264
    '.'                          shift, and go to state 265
    '*'                          shift, and go to state 266
    '/'                          shift, and go to state 267
    '%'                          shift, and go to state 268
    "instanceof (T_INSTANCEOF)"  shift, and go to state 269
    "** (T_POW)"                 shift, and go to state 270

    $default  reduce using rule 337 (expr_without_variable)


State 503

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  338                      | expr ">> (T_SR)" expr .
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '+'                          shift, and go to state 263
    '-'                          shift, and go to state 264
    '.'                          shift, and go to state 265
    '*'                          shift, and go to state 266
    '/'                          shift, and go to state 267
    '%'                          shift, and go to state 268
    "instanceof (T_INSTANCEOF)"  shift, and go to state 269
    "** (T_POW)"                 shift, and go to state 270

    $default  reduce using rule 338 (expr_without_variable)


State 504

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  331                      | expr '+' expr .
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '*'                          shift, and go to state 266
    '/'                          shift, and go to state 267
    '%'                          shift, and go to state 268
    "instanceof (T_INSTANCEOF)"  shift, and go to state 269
    "** (T_POW)"                 shift, and go to state 270

    $default  reduce using rule 331 (expr_without_variable)


State 505

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  332                      | expr '-' expr .
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '*'                          shift, and go to state 266
    '/'                          shift, and go to state 267
    '%'                          shift, and go to state 268
    "instanceof (T_INSTANCEOF)"  shift, and go to state 269
    "** (T_POW)"                 shift, and go to state 270

    $default  reduce using rule 332 (expr_without_variable)


State 506

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  330                      | expr '.' expr .
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '*'                          shift, and go to state 266
    '/'                          shift, and go to state 267
    '%'                          shift, and go to state 268
    "instanceof (T_INSTANCEOF)"  shift, and go to state 269
    "** (T_POW)"                 shift, and go to state 270

    $default  reduce using rule 330 (expr_without_variable)


State 507

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  333                      | expr '*' expr .
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "instanceof (T_INSTANCEOF)"  shift, and go to state 269
    "** (T_POW)"                 shift, and go to state 270

    $default  reduce using rule 333 (expr_without_variable)


State 508

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  335                      | expr '/' expr .
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "instanceof (T_INSTANCEOF)"  shift, and go to state 269
    "** (T_POW)"                 shift, and go to state 270

    $default  reduce using rule 335 (expr_without_variable)


State 509

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  336                      | expr '%' expr .
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "instanceof (T_INSTANCEOF)"  shift, and go to state 269
    "** (T_POW)"                 shift, and go to state 270

    $default  reduce using rule 336 (expr_without_variable)


State 510

  352 expr_without_variable: expr "instanceof (T_INSTANCEOF)" class_name_reference .

    $default  reduce using rule 352 (expr_without_variable)


State 511

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  334                      | expr "** (T_POW)" expr .
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "** (T_POW)"  shift, and go to state 270

    $default  reduce using rule 334 (expr_without_variable)


State 512

  424 constant: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier .
  456 member_name: identifier .

    '('       reduce using rule 456 (member_name)
    $default  reduce using rule 424 (constant)


State 513

  449 static_member: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable .
  458 member_name: simple_variable .

    '('       reduce using rule 458 (member_name)
    $default  reduce using rule 449 (static_member)


State 514

  390 function_call: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name . argument_list

    '('  shift, and go to state 229

    argument_list  go to state 619


State 515

  437 callable_variable: dereferencable '[' optional_expr . ']'

    ']'  shift, and go to state 620


State 516

  459 property_name: "identifier (T_STRING)" .

    $default  reduce using rule 459 (property_name)


State 517

  460 property_name: '{' . expr '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 621
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 518

  461 property_name: simple_variable .

    $default  reduce using rule 461 (property_name)


State 519

  440 callable_variable: dereferencable "-> (T_OBJECT_OPERATOR)" property_name . argument_list
  444 variable: dereferencable "-> (T_OBJECT_OPERATOR)" property_name .

    '('  shift, and go to state 229

    $default  reduce using rule 444 (variable)

    argument_list  go to state 622


State 520

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  439 callable_variable: dereferencable '{' expr . '}'

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270
    '}'                           shift, and go to state 623


State 521

  304 expr_without_variable: variable '=' '&' . variable

    '['                                           shift, and go to state 130
    "static (T_STATIC)"                           shift, and go to state 131
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 132
    '$'                                           shift, and go to state 82

    namespace_name         go to state 83
    name                   go to state 84
    function_call          go to state 100
    class_name             go to state 101
    dereferencable_scalar  go to state 133
    constant               go to state 134
    variable_class_name    go to state 106
    dereferencable         go to state 107
    callable_expr          go to state 108
    callable_variable      go to state 109
    variable               go to state 624
    simple_variable        go to state 111
    static_member          go to state 112


State 522

  303 expr_without_variable: variable '=' expr .
  322                      | expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 303 (expr_without_variable)


State 523

  306 expr_without_variable: variable "+= (T_PLUS_EQUAL)" expr .
  322                      | expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 306 (expr_without_variable)


State 524

  307 expr_without_variable: variable "-= (T_MINUS_EQUAL)" expr .
  322                      | expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 307 (expr_without_variable)


State 525

  308 expr_without_variable: variable "*= (T_MUL_EQUAL)" expr .
  322                      | expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 308 (expr_without_variable)


State 526

  310 expr_without_variable: variable "/= (T_DIV_EQUAL)" expr .
  322                      | expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 310 (expr_without_variable)


State 527

  311 expr_without_variable: variable ".= (T_CONCAT_EQUAL)" expr .
  322                      | expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 311 (expr_without_variable)


State 528

  312 expr_without_variable: variable "%= (T_MOD_EQUAL)" expr .
  322                      | expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 312 (expr_without_variable)


State 529

  313 expr_without_variable: variable "&= (T_AND_EQUAL)" expr .
  322                      | expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 313 (expr_without_variable)


State 530

  314 expr_without_variable: variable "|= (T_OR_EQUAL)" expr .
  322                      | expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 314 (expr_without_variable)


State 531

  315 expr_without_variable: variable "^= (T_XOR_EQUAL)" expr .
  322                      | expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 315 (expr_without_variable)


State 532

  316 expr_without_variable: variable "<<= (T_SL_EQUAL)" expr .
  322                      | expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 316 (expr_without_variable)


State 533

  317 expr_without_variable: variable ">>= (T_SR_EQUAL)" expr .
  322                      | expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 317 (expr_without_variable)


State 534

  309 expr_without_variable: variable "**= (T_POW_EQUAL)" expr .
  322                      | expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 309 (expr_without_variable)


State 535

  492 internal_functions_in_yacc: "eval (T_EVAL)" '(' expr ')' .

    $default  reduce using rule 492 (internal_functions_in_yacc)


State 536

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  373                      | "yield (T_YIELD)" expr "=> (T_DOUBLE_ARROW)" expr .

    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 373 (expr_without_variable)


State 537

  404 dereferencable_scalar: '[' array_pair_list ']' .

    $default  reduce using rule 404 (dereferencable_scalar)


State 538

  431 dereferencable: '(' expr ')' .
  434 callable_expr: '(' expr ')' .

    '('       reduce using rule 434 (callable_expr)
    $default  reduce using rule 431 (dereferencable)


State 539

  301 expr_without_variable: "list (T_LIST)" '(' array_pair_list . ')' '=' expr
  472 array_pair: "list (T_LIST)" '(' array_pair_list . ')'

    ')'  shift, and go to state 625


State 540

  469 array_pair: expr "=> (T_DOUBLE_ARROW)" '&' . variable

    '['                                           shift, and go to state 130
    "static (T_STATIC)"                           shift, and go to state 131
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 132
    '$'                                           shift, and go to state 82

    namespace_name         go to state 83
    name                   go to state 84
    function_call          go to state 100
    class_name             go to state 101
    dereferencable_scalar  go to state 133
    constant               go to state 134
    variable_class_name    go to state 106
    dereferencable         go to state 107
    callable_expr          go to state 108
    callable_variable      go to state 109
    variable               go to state 626
    simple_variable        go to state 111
    static_member          go to state 112


State 541

  301 expr_without_variable: "list (T_LIST)" . '(' array_pair_list ')' '=' expr
  471 array_pair: expr "=> (T_DOUBLE_ARROW)" "list (T_LIST)" . '(' array_pair_list ')'

    '('  shift, and go to state 627


State 542

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  467 array_pair: expr "=> (T_DOUBLE_ARROW)" expr .

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 467 (array_pair)


State 543

  302 expr_without_variable: '[' array_pair_list ']' '=' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 628
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 544

  465 non_empty_array_pair_list: non_empty_array_pair_list ',' possible_array_pair .

    $default  reduce using rule 465 (non_empty_array_pair_list)


State 545

  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments . extends_from implements_list backup_doc_comment '{' class_statement_list '}'

    "extends (T_EXTENDS)"  shift, and go to state 584

    $default  reduce using rule 182 (extends_from)

    extends_from  go to state 629


State 546

  454 new_variable: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable .

    $default  reduce using rule 454 (new_variable)


State 547

  451 new_variable: new_variable '[' optional_expr . ']'

    ']'  shift, and go to state 630


State 548

  453 new_variable: new_variable "-> (T_OBJECT_OPERATOR)" property_name .

    $default  reduce using rule 453 (new_variable)


State 549

  455 new_variable: new_variable ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable .

    $default  reduce using rule 455 (new_variable)


State 550

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  452 new_variable: new_variable '{' expr . '}'

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270
    '}'                           shift, and go to state 631


State 551

  244 static_var: "variable (T_VARIABLE)" '=' expr .
  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 244 (static_var)


State 552

  241 static_var_list: static_var_list ',' static_var .

    $default  reduce using rule 241 (static_var_list)


State 553

  376 expr_without_variable: "static (T_STATIC)" function returns_ref backup_doc_comment . '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    '('  shift, and go to state 632


State 554

  397 exit_expr: '(' optional_expr ')' .

    $default  reduce using rule 397 (exit_expr)


State 555

  209 if_stmt_without_else: "if (T_IF)" '(' expr ')' . statement
  213 alt_if_stmt_without_else: "if (T_IF)" '(' expr ')' . ':' inner_statement_list

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    ':'                                           shift, and go to state 633
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    statement                   go to state 634
    if_stmt_without_else        go to state 93
    if_stmt                     go to state 94
    alt_if_stmt_without_else    go to state 95
    alt_if_stmt                 go to state 96
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 105
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 556

  290 echo_expr_list: echo_expr_list ',' echo_expr .

    $default  reduce using rule 290 (echo_expr_list)


State 557

  135 statement: "do (T_DO)" statement "while (T_WHILE)" '(' . expr ')' ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 635
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 558

  134 statement: "while (T_WHILE)" '(' expr ')' . while_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    ':'                                           shift, and go to state 636
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    statement                   go to state 637
    while_statement             go to state 638
    if_stmt_without_else        go to state 93
    if_stmt                     go to state 94
    alt_if_stmt_without_else    go to state 95
    alt_if_stmt                 go to state 96
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 105
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 559

  136 statement: "for (T_FOR)" '(' for_exprs ';' . for_exprs ';' for_exprs ')' for_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 293 (for_exprs)

    namespace_name              go to state 83
    name                        go to state 84
    for_exprs                   go to state 639
    non_empty_for_exprs         go to state 321
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 322
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 560

  295 non_empty_for_exprs: non_empty_for_exprs ',' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 640
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 561

  147 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" . foreach_variable ')' foreach_statement
  148          | "foreach (T_FOREACH)" '(' expr "as (T_AS)" . foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable ')' foreach_statement

    '&'                                           shift, and go to state 641
    '['                                           shift, and go to state 642
    "static (T_STATIC)"                           shift, and go to state 131
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "list (T_LIST)"                               shift, and go to state 643
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 132
    '$'                                           shift, and go to state 82

    namespace_name         go to state 83
    name                   go to state 84
    foreach_variable       go to state 644
    function_call          go to state 100
    class_name             go to state 101
    dereferencable_scalar  go to state 133
    constant               go to state 134
    variable_class_name    go to state 106
    dereferencable         go to state 107
    callable_expr          go to state 108
    callable_variable      go to state 109
    variable               go to state 645
    simple_variable        go to state 111
    static_member          go to state 112


State 562

  150 statement: "declare (T_DECLARE)" '(' const_list ')' . $@3 declare_statement

    $default  reduce using rule 149 ($@3)

    $@3  go to state 646


State 563

  137 statement: "switch (T_SWITCH)" '(' expr ')' . switch_case_list

    ':'  shift, and go to state 647
    '{'  shift, and go to state 648

    switch_case_list  go to state 649


State 564

  289 const_decl: "identifier (T_STRING)" '=' expr . backup_doc_comment
  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 378 (backup_doc_comment)

    backup_doc_comment  go to state 650


State 565

  121 const_list: const_list ',' const_decl .

    $default  reduce using rule 121 (const_list)


State 566

  152 statement: "try (T_TRY)" '{' inner_statement_list '}' . catch_list finally_statement

    $default  reduce using rule 156 (catch_list)

    catch_list  go to state 651


State 567

   81 namespace_name: namespace_name "\\ (T_NS_SEPARATOR)" . "identifier (T_STRING)"
  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" . '{' inline_use_declarations possible_comma '}'

    "identifier (T_STRING)"  shift, and go to state 387
    '{'                      shift, and go to state 652


State 568

  118 unprefixed_use_declaration: namespace_name "as (T_AS)" "identifier (T_STRING)" .

    $default  reduce using rule 118 (unprefixed_use_declaration)


State 569

  105 mixed_group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' . inline_use_declarations possible_comma '}'

    "identifier (T_STRING)"  shift, and go to state 115
    "function (T_FUNCTION)"  shift, and go to state 187
    "const (T_CONST)"        shift, and go to state 188

    namespace_name              go to state 575
    use_type                    go to state 653
    inline_use_declarations     go to state 654
    inline_use_declaration      go to state 655
    unprefixed_use_declaration  go to state 656


State 570

   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name . "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}'
  117 unprefixed_use_declaration: namespace_name .
  118                           | namespace_name . "as (T_AS)" "identifier (T_STRING)"

    "as (T_AS)"            shift, and go to state 337
    "\\ (T_NS_SEPARATOR)"  shift, and go to state 657

    $default  reduce using rule 117 (unprefixed_use_declaration)


State 571

   81 namespace_name: namespace_name "\\ (T_NS_SEPARATOR)" . "identifier (T_STRING)"
  103 group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" . '{' unprefixed_use_declarations possible_comma '}'

    "identifier (T_STRING)"  shift, and go to state 387
    '{'                      shift, and go to state 658


State 572

   97 top_statement: "use (T_USE)" use_type group_use_declaration ';' .

    $default  reduce using rule 97 (top_statement)


State 573

   99 top_statement: "use (T_USE)" use_type use_declarations ';' .

    $default  reduce using rule 99 (top_statement)


State 574

  120 use_declaration: "\\ (T_NS_SEPARATOR)" . unprefixed_use_declaration

    "identifier (T_STRING)"  shift, and go to state 115

    namespace_name              go to state 575
    unprefixed_use_declaration  go to state 336


State 575

   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
  117 unprefixed_use_declaration: namespace_name .
  118                           | namespace_name . "as (T_AS)" "identifier (T_STRING)"

    "as (T_AS)"            shift, and go to state 337
    "\\ (T_NS_SEPARATOR)"  shift, and go to state 228

    $default  reduce using rule 117 (unprefixed_use_declaration)


State 576

  113 use_declarations: use_declarations ',' use_declaration .

    $default  reduce using rule 113 (use_declarations)


State 577

  238 global_var_list: global_var_list ',' global_var .

    $default  reduce using rule 238 (global_var_list)


State 578

  163 unset_variables: unset_variables ',' . unset_variable

    '['                                           shift, and go to state 130
    "static (T_STATIC)"                           shift, and go to state 131
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 132
    '$'                                           shift, and go to state 82

    namespace_name         go to state 83
    name                   go to state 84
    unset_variable         go to state 659
    function_call          go to state 100
    class_name             go to state 101
    dereferencable_scalar  go to state 133
    constant               go to state 134
    variable_class_name    go to state 106
    dereferencable         go to state 107
    callable_expr          go to state 108
    callable_variable      go to state 109
    variable               go to state 350
    simple_variable        go to state 111
    static_member          go to state 112


State 579

  146 statement: "unset (T_UNSET)" '(' unset_variables ')' . ';'

    ';'  shift, and go to state 660


State 580

  496 isset_variables: isset_variables ',' . isset_variable

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 351
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113
    isset_variable              go to state 661


State 581

  488 internal_functions_in_yacc: "isset (T_ISSET)" '(' isset_variables ')' .

    $default  reduce using rule 488 (internal_functions_in_yacc)


State 582

  489 internal_functions_in_yacc: "empty (T_EMPTY)" '(' expr ')' .

    $default  reduce using rule 489 (internal_functions_in_yacc)


State 583

   90 top_statement: "__halt_compiler (T_HALT_COMPILER)" '(' ')' ';' .

    $default  reduce using rule 90 (top_statement)


State 584

  183 extends_from: "extends (T_EXTENDS)" . name

    "identifier (T_STRING)"    shift, and go to state 115
    "namespace (T_NAMESPACE)"  shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 83
    name            go to state 662


State 585

  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" extends_from . implements_list backup_doc_comment '{' class_statement_list '}'

    "implements (T_IMPLEMENTS)"  shift, and go to state 663

    $default  reduce using rule 186 (implements_list)

    implements_list  go to state 664


State 586

  179 trait_declaration_statement: "trait (T_TRAIT)" @6 "identifier (T_STRING)" backup_doc_comment . '{' class_statement_list '}'

    '{'  shift, and go to state 665


State 587

  185 interface_extends_list: "extends (T_EXTENDS)" . name_list

    "identifier (T_STRING)"    shift, and go to state 115
    "namespace (T_NAMESPACE)"  shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 83
    name            go to state 666
    name_list       go to state 667


State 588

  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 "identifier (T_STRING)" interface_extends_list . backup_doc_comment '{' class_statement_list '}'

    $default  reduce using rule 378 (backup_doc_comment)

    backup_doc_comment  go to state 668


State 589

  301 expr_without_variable: "list (T_LIST)" '(' array_pair_list ')' . '=' expr

    '='  shift, and go to state 669


State 590

  403 dereferencable_scalar: "array (T_ARRAY)" '(' array_pair_list ')' .

    $default  reduce using rule 403 (dereferencable_scalar)


State 591

  486 encaps_var_offset: '-' . "number (T_NUM_STRING)"

    "number (T_NUM_STRING)"  shift, and go to state 670


State 592

  484 encaps_var_offset: "identifier (T_STRING)" .

    $default  reduce using rule 484 (encaps_var_offset)


State 593

  487 encaps_var_offset: "variable (T_VARIABLE)" .

    $default  reduce using rule 487 (encaps_var_offset)


State 594

  485 encaps_var_offset: "number (T_NUM_STRING)" .

    $default  reduce using rule 485 (encaps_var_offset)


State 595

  478 encaps_var: "variable (T_VARIABLE)" '[' encaps_var_offset . ']'

    ']'  shift, and go to state 671


State 596

  479 encaps_var: "variable (T_VARIABLE)" "-> (T_OBJECT_OPERATOR)" "identifier (T_STRING)" .

    $default  reduce using rule 479 (encaps_var)


State 597

  482 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' . expr ']' '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 672
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 598

  481 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '}' .

    $default  reduce using rule 481 (encaps_var)


State 599

  480 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" expr '}' .

    $default  reduce using rule 480 (encaps_var)


State 600

  483 encaps_var: "{$ (T_CURLY_OPEN)" variable '}' .

    $default  reduce using rule 483 (encaps_var)


State 601

   93 top_statement: "namespace (T_NAMESPACE)" namespace_name $@1 '{' . top_statement_list '}'

    $default  reduce using rule 79 (top_statement_list)

    top_statement_list  go to state 673


State 602

   78 top_statement_list: top_statement_list . top_statement
   95 top_statement: "namespace (T_NAMESPACE)" $@2 '{' top_statement_list . '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "const (T_CONST)"                             shift, and go to state 51
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "use (T_USE)"                                 shift, and go to state 55
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 60
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 74
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '}'                                           shift, and go to state 674
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    top_statement                    go to state 85
    statement                        go to state 86
    function_declaration_statement   go to state 87
    class_declaration_statement      go to state 88
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 91
    interface_declaration_statement  go to state 92
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr_without_variable            go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    expr                             go to state 105
    variable_class_name              go to state 106
    dereferencable                   go to state 107
    callable_expr                    go to state 108
    callable_variable                go to state 109
    variable                         go to state 110
    simple_variable                  go to state 111
    static_member                    go to state 112
    internal_functions_in_yacc       go to state 113


State 603

  130 inner_statement: "__halt_compiler (T_HALT_COMPILER)" '(' . ')' ';'

    ')'  shift, and go to state 675


State 604

  446 simple_variable: '$' '{' expr '}' .

    $default  reduce using rule 446 (simple_variable)


State 605

  237 argument: "... (T_ELLIPSIS)" expr .
  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 237 (argument)


State 606

  235 non_empty_argument_list: non_empty_argument_list ',' . argument

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    "... (T_ELLIPSIS)"                            shift, and go to state 388
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    argument                    go to state 676
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 392
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 607

  233 argument_list: '(' non_empty_argument_list ')' .

    $default  reduce using rule 233 (argument_list)


State 608

  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" . extends_from implements_list backup_doc_comment '{' class_statement_list '}'

    "extends (T_EXTENDS)"  shift, and go to state 584

    $default  reduce using rule 182 (extends_from)

    extends_from  go to state 677


State 609

  210 if_stmt_without_else: if_stmt_without_else "elseif (T_ELSEIF)" '(' expr . ')' statement
  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270
    ')'                           shift, and go to state 678


State 610

  214 alt_if_stmt_without_else: alt_if_stmt_without_else "elseif (T_ELSEIF)" '(' expr . ')' ':' inner_statement_list
  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270
    ')'                           shift, and go to state 679


State 611

  123 inner_statement_list: inner_statement_list . inner_statement
  216 alt_if_stmt: alt_if_stmt_without_else "else (T_ELSE)" ':' inner_statement_list . "endif (T_ENDIF)" ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "endif (T_ENDIF)"                             shift, and go to state 680
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 376
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 378
    statement                        go to state 379
    function_declaration_statement   go to state 380
    class_declaration_statement      go to state 381
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 382
    interface_declaration_statement  go to state 383
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr_without_variable            go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    expr                             go to state 105
    variable_class_name              go to state 106
    dereferencable                   go to state 107
    callable_expr                    go to state 108
    callable_variable                go to state 109
    variable                         go to state 110
    simple_variable                  go to state 111
    static_member                    go to state 112
    internal_functions_in_yacc       go to state 113


State 612

  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment . '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    '('  shift, and go to state 681


State 613

  375 expr_without_variable: function returns_ref backup_doc_comment '(' . parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    '?'                        shift, and go to state 682
    "identifier (T_STRING)"    shift, and go to state 115
    "array (T_ARRAY)"          shift, and go to state 683
    "callable (T_CALLABLE)"    shift, and go to state 684
    "namespace (T_NAMESPACE)"  shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    ')'       reduce using rule 218 (parameter_list)
    $default  reduce using rule 223 (optional_type)

    namespace_name            go to state 83
    name                      go to state 685
    parameter_list            go to state 686
    non_empty_parameter_list  go to state 687
    parameter                 go to state 688
    optional_type             go to state 689
    type_expr                 go to state 690
    type                      go to state 691


State 614

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  457 member_name: '{' expr . '}'

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270
    '}'                           shift, and go to state 692


State 615

  389 function_call: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list .

    $default  reduce using rule 389 (function_call)


State 616

  438 callable_variable: constant '[' optional_expr ']' .

    $default  reduce using rule 438 (callable_variable)


State 617

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  356                      | expr '?' ':' expr .
  357                      | expr . "?? (T_COALESCE)" expr

    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 356 (expr_without_variable)


State 618

  355 expr_without_variable: expr '?' expr ':' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 693
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 619

  390 function_call: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list .

    $default  reduce using rule 390 (function_call)


State 620

  437 callable_variable: dereferencable '[' optional_expr ']' .

    $default  reduce using rule 437 (callable_variable)


State 621

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  460 property_name: '{' expr . '}'

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270
    '}'                           shift, and go to state 694


State 622

  440 callable_variable: dereferencable "-> (T_OBJECT_OPERATOR)" property_name argument_list .

    $default  reduce using rule 440 (callable_variable)


State 623

  439 callable_variable: dereferencable '{' expr '}' .

    $default  reduce using rule 439 (callable_variable)


State 624

  304 expr_without_variable: variable '=' '&' variable .
  430 dereferencable: variable .

    '['                            reduce using rule 430 (dereferencable)
    "-> (T_OBJECT_OPERATOR)"       reduce using rule 430 (dereferencable)
    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 430 (dereferencable)
    '{'                            reduce using rule 430 (dereferencable)
    $default                       reduce using rule 304 (expr_without_variable)


State 625

  301 expr_without_variable: "list (T_LIST)" '(' array_pair_list ')' . '=' expr
  472 array_pair: "list (T_LIST)" '(' array_pair_list ')' .

    '='  shift, and go to state 669

    $default  reduce using rule 472 (array_pair)


State 626

  430 dereferencable: variable .
  469 array_pair: expr "=> (T_DOUBLE_ARROW)" '&' variable .

    ','       reduce using rule 469 (array_pair)
    ')'       reduce using rule 469 (array_pair)
    ']'       reduce using rule 469 (array_pair)
    $default  reduce using rule 430 (dereferencable)


State 627

  301 expr_without_variable: "list (T_LIST)" '(' . array_pair_list ')' '=' expr
  471 array_pair: expr "=> (T_DOUBLE_ARROW)" "list (T_LIST)" '(' . array_pair_list ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '&'                                           shift, and go to state 145
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 146
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 463 (possible_array_pair)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 147
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    array_pair_list             go to state 695
    possible_array_pair         go to state 149
    non_empty_array_pair_list   go to state 150
    array_pair                  go to state 151
    internal_functions_in_yacc  go to state 113


State 628

  302 expr_without_variable: '[' array_pair_list ']' '=' expr .
  322                      | expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 302 (expr_without_variable)


State 629

  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments extends_from . implements_list backup_doc_comment '{' class_statement_list '}'

    "implements (T_IMPLEMENTS)"  shift, and go to state 663

    $default  reduce using rule 186 (implements_list)

    implements_list  go to state 696


State 630

  451 new_variable: new_variable '[' optional_expr ']' .

    $default  reduce using rule 451 (new_variable)


State 631

  452 new_variable: new_variable '{' expr '}' .

    $default  reduce using rule 452 (new_variable)


State 632

  376 expr_without_variable: "static (T_STATIC)" function returns_ref backup_doc_comment '(' . parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    '?'                        shift, and go to state 682
    "identifier (T_STRING)"    shift, and go to state 115
    "array (T_ARRAY)"          shift, and go to state 683
    "callable (T_CALLABLE)"    shift, and go to state 684
    "namespace (T_NAMESPACE)"  shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    ')'       reduce using rule 218 (parameter_list)
    $default  reduce using rule 223 (optional_type)

    namespace_name            go to state 83
    name                      go to state 685
    parameter_list            go to state 697
    non_empty_parameter_list  go to state 687
    parameter                 go to state 688
    optional_type             go to state 689
    type_expr                 go to state 690
    type                      go to state 691


State 633

  213 alt_if_stmt_without_else: "if (T_IF)" '(' expr ')' ':' . inner_statement_list

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 698


State 634

  209 if_stmt_without_else: "if (T_IF)" '(' expr ')' statement .

    $default  reduce using rule 209 (if_stmt_without_else)


State 635

  135 statement: "do (T_DO)" statement "while (T_WHILE)" '(' expr . ')' ';'
  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270
    ')'                           shift, and go to state 699


State 636

  208 while_statement: ':' . inner_statement_list "endwhile (T_ENDWHILE)" ';'

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 700


State 637

  207 while_statement: statement .

    $default  reduce using rule 207 (while_statement)


State 638

  134 statement: "while (T_WHILE)" '(' expr ')' while_statement .

    $default  reduce using rule 134 (statement)


State 639

  136 statement: "for (T_FOR)" '(' for_exprs ';' for_exprs . ';' for_exprs ')' for_statement

    ';'  shift, and go to state 701


State 640

  295 non_empty_for_exprs: non_empty_for_exprs ',' expr .
  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 295 (non_empty_for_exprs)


State 641

  189 foreach_variable: '&' . variable

    '['                                           shift, and go to state 130
    "static (T_STATIC)"                           shift, and go to state 131
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 132
    '$'                                           shift, and go to state 82

    namespace_name         go to state 83
    name                   go to state 84
    function_call          go to state 100
    class_name             go to state 101
    dereferencable_scalar  go to state 133
    constant               go to state 134
    variable_class_name    go to state 106
    dereferencable         go to state 107
    callable_expr          go to state 108
    callable_variable      go to state 109
    variable               go to state 702
    simple_variable        go to state 111
    static_member          go to state 112


State 642

  191 foreach_variable: '[' . array_pair_list ']'
  404 dereferencable_scalar: '[' . array_pair_list ']'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '&'                                           shift, and go to state 145
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 146
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 463 (possible_array_pair)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 147
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    array_pair_list             go to state 703
    possible_array_pair         go to state 149
    non_empty_array_pair_list   go to state 150
    array_pair                  go to state 151
    internal_functions_in_yacc  go to state 113


State 643

  190 foreach_variable: "list (T_LIST)" . '(' array_pair_list ')'

    '('  shift, and go to state 704


State 644

  147 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable . ')' foreach_statement
  148          | "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable . "=> (T_DOUBLE_ARROW)" foreach_variable ')' foreach_statement

    "=> (T_DOUBLE_ARROW)"  shift, and go to state 705
    ')'                    shift, and go to state 706


State 645

  188 foreach_variable: variable .
  430 dereferencable: variable .

    "=> (T_DOUBLE_ARROW)"  reduce using rule 188 (foreach_variable)
    ')'                    reduce using rule 188 (foreach_variable)
    $default               reduce using rule 430 (dereferencable)


State 646

  150 statement: "declare (T_DECLARE)" '(' const_list ')' $@3 . declare_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    ':'                                           shift, and go to state 707
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    statement                   go to state 708
    declare_statement           go to state 709
    if_stmt_without_else        go to state 93
    if_stmt                     go to state 94
    alt_if_stmt_without_else    go to state 95
    alt_if_stmt                 go to state 96
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 105
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 647

  200 switch_case_list: ':' . case_list "endswitch (T_ENDSWITCH)" ';'
  201                 | ':' . ';' case_list "endswitch (T_ENDSWITCH)" ';'

    ';'  shift, and go to state 710

    $default  reduce using rule 202 (case_list)

    case_list  go to state 711


State 648

  198 switch_case_list: '{' . case_list '}'
  199                 | '{' . ';' case_list '}'

    ';'  shift, and go to state 712

    $default  reduce using rule 202 (case_list)

    case_list  go to state 713


State 649

  137 statement: "switch (T_SWITCH)" '(' expr ')' switch_case_list .

    $default  reduce using rule 137 (statement)


State 650

  289 const_decl: "identifier (T_STRING)" '=' expr backup_doc_comment .

    $default  reduce using rule 289 (const_decl)


State 651

  152 statement: "try (T_TRY)" '{' inner_statement_list '}' catch_list . finally_statement
  157 catch_list: catch_list . "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list '}'

    "catch (T_CATCH)"      shift, and go to state 714
    "finally (T_FINALLY)"  shift, and go to state 715

    $default  reduce using rule 160 (finally_statement)

    finally_statement  go to state 716


State 652

  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' . inline_use_declarations possible_comma '}'

    "identifier (T_STRING)"  shift, and go to state 115
    "function (T_FUNCTION)"  shift, and go to state 187
    "const (T_CONST)"        shift, and go to state 188

    namespace_name              go to state 575
    use_type                    go to state 653
    inline_use_declarations     go to state 717
    inline_use_declaration      go to state 655
    unprefixed_use_declaration  go to state 656


State 653

  116 inline_use_declaration: use_type . unprefixed_use_declaration

    "identifier (T_STRING)"  shift, and go to state 115

    namespace_name              go to state 575
    unprefixed_use_declaration  go to state 718


State 654

  105 mixed_group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations . possible_comma '}'
  109 inline_use_declarations: inline_use_declarations . ',' inline_use_declaration

    ','  shift, and go to state 719

    $default  reduce using rule 107 (possible_comma)

    possible_comma  go to state 720


State 655

  110 inline_use_declarations: inline_use_declaration .

    $default  reduce using rule 110 (inline_use_declarations)


State 656

  115 inline_use_declaration: unprefixed_use_declaration .

    $default  reduce using rule 115 (inline_use_declaration)


State 657

   81 namespace_name: namespace_name "\\ (T_NS_SEPARATOR)" . "identifier (T_STRING)"
  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" . '{' unprefixed_use_declarations possible_comma '}'

    "identifier (T_STRING)"  shift, and go to state 387
    '{'                      shift, and go to state 721


State 658

  103 group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' . unprefixed_use_declarations possible_comma '}'

    "identifier (T_STRING)"  shift, and go to state 115

    namespace_name               go to state 575
    unprefixed_use_declarations  go to state 722
    unprefixed_use_declaration   go to state 723


State 659

  163 unset_variables: unset_variables ',' unset_variable .

    $default  reduce using rule 163 (unset_variables)


State 660

  146 statement: "unset (T_UNSET)" '(' unset_variables ')' ';' .

    $default  reduce using rule 146 (statement)


State 661

  496 isset_variables: isset_variables ',' isset_variable .

    $default  reduce using rule 496 (isset_variables)


State 662

  183 extends_from: "extends (T_EXTENDS)" name .

    $default  reduce using rule 183 (extends_from)


State 663

  187 implements_list: "implements (T_IMPLEMENTS)" . name_list

    "identifier (T_STRING)"    shift, and go to state 115
    "namespace (T_NAMESPACE)"  shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 83
    name            go to state 666
    name_list       go to state 724


State 664

  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" extends_from implements_list . backup_doc_comment '{' class_statement_list '}'

    $default  reduce using rule 378 (backup_doc_comment)

    backup_doc_comment  go to state 725


State 665

  179 trait_declaration_statement: "trait (T_TRAIT)" @6 "identifier (T_STRING)" backup_doc_comment '{' . class_statement_list '}'

    $default  reduce using rule 246 (class_statement_list)

    class_statement_list  go to state 726


State 666

  251 name_list: name .

    $default  reduce using rule 251 (name_list)


State 667

  185 interface_extends_list: "extends (T_EXTENDS)" name_list .
  252 name_list: name_list . ',' name

    ','  shift, and go to state 727

    $default  reduce using rule 185 (interface_extends_list)


State 668

  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 "identifier (T_STRING)" interface_extends_list backup_doc_comment . '{' class_statement_list '}'

    '{'  shift, and go to state 728


State 669

  301 expr_without_variable: "list (T_LIST)" '(' array_pair_list ')' '=' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 729
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 670

  486 encaps_var_offset: '-' "number (T_NUM_STRING)" .

    $default  reduce using rule 486 (encaps_var_offset)


State 671

  478 encaps_var: "variable (T_VARIABLE)" '[' encaps_var_offset ']' .

    $default  reduce using rule 478 (encaps_var)


State 672

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr
  482 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' expr . ']' '}'

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270
    ']'                           shift, and go to state 730


State 673

   78 top_statement_list: top_statement_list . top_statement
   93 top_statement: "namespace (T_NAMESPACE)" namespace_name $@1 '{' top_statement_list . '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "const (T_CONST)"                             shift, and go to state 51
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "use (T_USE)"                                 shift, and go to state 55
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 60
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 74
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '}'                                           shift, and go to state 731
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    top_statement                    go to state 85
    statement                        go to state 86
    function_declaration_statement   go to state 87
    class_declaration_statement      go to state 88
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 91
    interface_declaration_statement  go to state 92
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr_without_variable            go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    expr                             go to state 105
    variable_class_name              go to state 106
    dereferencable                   go to state 107
    callable_expr                    go to state 108
    callable_variable                go to state 109
    variable                         go to state 110
    simple_variable                  go to state 111
    static_member                    go to state 112
    internal_functions_in_yacc       go to state 113


State 674

   95 top_statement: "namespace (T_NAMESPACE)" $@2 '{' top_statement_list '}' .

    $default  reduce using rule 95 (top_statement)


State 675

  130 inner_statement: "__halt_compiler (T_HALT_COMPILER)" '(' ')' . ';'

    ';'  shift, and go to state 732


State 676

  235 non_empty_argument_list: non_empty_argument_list ',' argument .

    $default  reduce using rule 235 (non_empty_argument_list)


State 677

  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from . implements_list backup_doc_comment '{' class_statement_list '}'

    "implements (T_IMPLEMENTS)"  shift, and go to state 663

    $default  reduce using rule 186 (implements_list)

    implements_list  go to state 733


State 678

  210 if_stmt_without_else: if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' . statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    statement                   go to state 734
    if_stmt_without_else        go to state 93
    if_stmt                     go to state 94
    alt_if_stmt_without_else    go to state 95
    alt_if_stmt                 go to state 96
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 105
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 679

  214 alt_if_stmt_without_else: alt_if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' . ':' inner_statement_list

    ':'  shift, and go to state 735


State 680

  216 alt_if_stmt: alt_if_stmt_without_else "else (T_ELSE)" ':' inner_statement_list "endif (T_ENDIF)" . ';'

    ';'  shift, and go to state 736


State 681

  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' . parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    '?'                        shift, and go to state 682
    "identifier (T_STRING)"    shift, and go to state 115
    "array (T_ARRAY)"          shift, and go to state 683
    "callable (T_CALLABLE)"    shift, and go to state 684
    "namespace (T_NAMESPACE)"  shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    ')'       reduce using rule 218 (parameter_list)
    $default  reduce using rule 223 (optional_type)

    namespace_name            go to state 83
    name                      go to state 685
    parameter_list            go to state 737
    non_empty_parameter_list  go to state 687
    parameter                 go to state 688
    optional_type             go to state 689
    type_expr                 go to state 690
    type                      go to state 691


State 682

  226 type_expr: '?' . type

    "identifier (T_STRING)"    shift, and go to state 115
    "array (T_ARRAY)"          shift, and go to state 683
    "callable (T_CALLABLE)"    shift, and go to state 684
    "namespace (T_NAMESPACE)"  shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 83
    name            go to state 685
    type            go to state 738


State 683

  227 type: "array (T_ARRAY)" .

    $default  reduce using rule 227 (type)


State 684

  228 type: "callable (T_CALLABLE)" .

    $default  reduce using rule 228 (type)


State 685

  229 type: name .

    $default  reduce using rule 229 (type)


State 686

  375 expr_without_variable: function returns_ref backup_doc_comment '(' parameter_list . ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    ')'  shift, and go to state 739


State 687

  217 parameter_list: non_empty_parameter_list .
  220 non_empty_parameter_list: non_empty_parameter_list . ',' parameter

    ','  shift, and go to state 740

    $default  reduce using rule 217 (parameter_list)


State 688

  219 non_empty_parameter_list: parameter .

    $default  reduce using rule 219 (non_empty_parameter_list)


State 689

  221 parameter: optional_type . is_reference is_variadic "variable (T_VARIABLE)"
  222          | optional_type . is_reference is_variadic "variable (T_VARIABLE)" '=' expr

    '&'  shift, and go to state 741

    $default  reduce using rule 166 (is_reference)

    is_reference  go to state 742


State 690

  224 optional_type: type_expr .

    $default  reduce using rule 224 (optional_type)


State 691

  225 type_expr: type .

    $default  reduce using rule 225 (type_expr)


State 692

  457 member_name: '{' expr '}' .

    $default  reduce using rule 457 (member_name)


State 693

  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  355                      | expr '?' expr ':' expr .
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 355 (expr_without_variable)


State 694

  460 property_name: '{' expr '}' .

    $default  reduce using rule 460 (property_name)


State 695

  301 expr_without_variable: "list (T_LIST)" '(' array_pair_list . ')' '=' expr
  471 array_pair: expr "=> (T_DOUBLE_ARROW)" "list (T_LIST)" '(' array_pair_list . ')'

    ')'  shift, and go to state 743


State 696

  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments extends_from implements_list . backup_doc_comment '{' class_statement_list '}'

    $default  reduce using rule 378 (backup_doc_comment)

    backup_doc_comment  go to state 744


State 697

  376 expr_without_variable: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list . ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    ')'  shift, and go to state 745


State 698

  123 inner_statement_list: inner_statement_list . inner_statement
  213 alt_if_stmt_without_else: "if (T_IF)" '(' expr ')' ':' inner_statement_list .

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 376
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 213 (alt_if_stmt_without_else)

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 378
    statement                        go to state 379
    function_declaration_statement   go to state 380
    class_declaration_statement      go to state 381
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 382
    interface_declaration_statement  go to state 383
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr_without_variable            go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    expr                             go to state 105
    variable_class_name              go to state 106
    dereferencable                   go to state 107
    callable_expr                    go to state 108
    callable_variable                go to state 109
    variable                         go to state 110
    simple_variable                  go to state 111
    static_member                    go to state 112
    internal_functions_in_yacc       go to state 113


State 699

  135 statement: "do (T_DO)" statement "while (T_WHILE)" '(' expr ')' . ';'

    ';'  shift, and go to state 746


State 700

  123 inner_statement_list: inner_statement_list . inner_statement
  208 while_statement: ':' inner_statement_list . "endwhile (T_ENDWHILE)" ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "endwhile (T_ENDWHILE)"                       shift, and go to state 747
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 376
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 378
    statement                        go to state 379
    function_declaration_statement   go to state 380
    class_declaration_statement      go to state 381
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 382
    interface_declaration_statement  go to state 383
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr_without_variable            go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    expr                             go to state 105
    variable_class_name              go to state 106
    dereferencable                   go to state 107
    callable_expr                    go to state 108
    callable_variable                go to state 109
    variable                         go to state 110
    simple_variable                  go to state 111
    static_member                    go to state 112
    internal_functions_in_yacc       go to state 113


State 701

  136 statement: "for (T_FOR)" '(' for_exprs ';' for_exprs ';' . for_exprs ')' for_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 293 (for_exprs)

    namespace_name              go to state 83
    name                        go to state 84
    for_exprs                   go to state 748
    non_empty_for_exprs         go to state 321
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 322
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 702

  189 foreach_variable: '&' variable .
  430 dereferencable: variable .

    "=> (T_DOUBLE_ARROW)"  reduce using rule 189 (foreach_variable)
    ')'                    reduce using rule 189 (foreach_variable)
    $default               reduce using rule 430 (dereferencable)


State 703

  191 foreach_variable: '[' array_pair_list . ']'
  404 dereferencable_scalar: '[' array_pair_list . ']'

    ']'  shift, and go to state 749


State 704

  190 foreach_variable: "list (T_LIST)" '(' . array_pair_list ')'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '&'                                           shift, and go to state 145
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 146
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 463 (possible_array_pair)

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 147
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    array_pair_list             go to state 750
    possible_array_pair         go to state 149
    non_empty_array_pair_list   go to state 150
    array_pair                  go to state 151
    internal_functions_in_yacc  go to state 113


State 705

  148 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" . foreach_variable ')' foreach_statement

    '&'                                           shift, and go to state 641
    '['                                           shift, and go to state 642
    "static (T_STATIC)"                           shift, and go to state 131
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "list (T_LIST)"                               shift, and go to state 643
    "array (T_ARRAY)"                             shift, and go to state 65
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 132
    '$'                                           shift, and go to state 82

    namespace_name         go to state 83
    name                   go to state 84
    foreach_variable       go to state 751
    function_call          go to state 100
    class_name             go to state 101
    dereferencable_scalar  go to state 133
    constant               go to state 134
    variable_class_name    go to state 106
    dereferencable         go to state 107
    callable_expr          go to state 108
    callable_variable      go to state 109
    variable               go to state 645
    simple_variable        go to state 111
    static_member          go to state 112


State 706

  147 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable ')' . foreach_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    ':'                                           shift, and go to state 752
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    statement                   go to state 753
    foreach_statement           go to state 754
    if_stmt_without_else        go to state 93
    if_stmt                     go to state 94
    alt_if_stmt_without_else    go to state 95
    alt_if_stmt                 go to state 96
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 105
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 707

  197 declare_statement: ':' . inner_statement_list "enddeclare (T_ENDDECLARE)" ';'

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 755


State 708

  196 declare_statement: statement .

    $default  reduce using rule 196 (declare_statement)


State 709

  150 statement: "declare (T_DECLARE)" '(' const_list ')' $@3 declare_statement .

    $default  reduce using rule 150 (statement)


State 710

  201 switch_case_list: ':' ';' . case_list "endswitch (T_ENDSWITCH)" ';'

    $default  reduce using rule 202 (case_list)

    case_list  go to state 756


State 711

  200 switch_case_list: ':' case_list . "endswitch (T_ENDSWITCH)" ';'
  203 case_list: case_list . "case (T_CASE)" expr case_separator inner_statement_list
  204          | case_list . "default (T_DEFAULT)" case_separator inner_statement_list

    "endswitch (T_ENDSWITCH)"  shift, and go to state 757
    "case (T_CASE)"            shift, and go to state 758
    "default (T_DEFAULT)"      shift, and go to state 759


State 712

  199 switch_case_list: '{' ';' . case_list '}'

    $default  reduce using rule 202 (case_list)

    case_list  go to state 760


State 713

  198 switch_case_list: '{' case_list . '}'
  203 case_list: case_list . "case (T_CASE)" expr case_separator inner_statement_list
  204          | case_list . "default (T_DEFAULT)" case_separator inner_statement_list

    "case (T_CASE)"        shift, and go to state 758
    "default (T_DEFAULT)"  shift, and go to state 759
    '}'                    shift, and go to state 761


State 714

  157 catch_list: catch_list "catch (T_CATCH)" . '(' catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list '}'

    '('  shift, and go to state 762


State 715

  161 finally_statement: "finally (T_FINALLY)" . '{' inner_statement_list '}'

    '{'  shift, and go to state 763


State 716

  152 statement: "try (T_TRY)" '{' inner_statement_list '}' catch_list finally_statement .

    $default  reduce using rule 152 (statement)


State 717

  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations . possible_comma '}'
  109 inline_use_declarations: inline_use_declarations . ',' inline_use_declaration

    ','  shift, and go to state 719

    $default  reduce using rule 107 (possible_comma)

    possible_comma  go to state 764


State 718

  116 inline_use_declaration: use_type unprefixed_use_declaration .

    $default  reduce using rule 116 (inline_use_declaration)


State 719

  108 possible_comma: ',' .
  109 inline_use_declarations: inline_use_declarations ',' . inline_use_declaration

    "identifier (T_STRING)"  shift, and go to state 115
    "function (T_FUNCTION)"  shift, and go to state 187
    "const (T_CONST)"        shift, and go to state 188

    $default  reduce using rule 108 (possible_comma)

    namespace_name              go to state 575
    use_type                    go to state 653
    inline_use_declaration      go to state 765
    unprefixed_use_declaration  go to state 656


State 720

  105 mixed_group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma . '}'

    '}'  shift, and go to state 766


State 721

  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' . unprefixed_use_declarations possible_comma '}'

    "identifier (T_STRING)"  shift, and go to state 115

    namespace_name               go to state 575
    unprefixed_use_declarations  go to state 767
    unprefixed_use_declaration   go to state 723


State 722

  103 group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations . possible_comma '}'
  111 unprefixed_use_declarations: unprefixed_use_declarations . ',' unprefixed_use_declaration

    ','  shift, and go to state 768

    $default  reduce using rule 107 (possible_comma)

    possible_comma  go to state 769


State 723

  112 unprefixed_use_declarations: unprefixed_use_declaration .

    $default  reduce using rule 112 (unprefixed_use_declarations)


State 724

  187 implements_list: "implements (T_IMPLEMENTS)" name_list .
  252 name_list: name_list . ',' name

    ','  shift, and go to state 727

    $default  reduce using rule 187 (implements_list)


State 725

  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" extends_from implements_list backup_doc_comment . '{' class_statement_list '}'

    '{'  shift, and go to state 770


State 726

  179 trait_declaration_statement: "trait (T_TRAIT)" @6 "identifier (T_STRING)" backup_doc_comment '{' class_statement_list . '}'
  245 class_statement_list: class_statement_list . class_statement

    "static (T_STATIC)"        shift, and go to state 771
    "abstract (T_ABSTRACT)"    shift, and go to state 772
    "final (T_FINAL)"          shift, and go to state 773
    "private (T_PRIVATE)"      shift, and go to state 774
    "protected (T_PROTECTED)"  shift, and go to state 775
    "public (T_PUBLIC)"        shift, and go to state 776
    "use (T_USE)"              shift, and go to state 777
    "var (T_VAR)"              shift, and go to state 778
    '}'                        shift, and go to state 779

    $default  reduce using rule 272 (method_modifiers)

    class_statement             go to state 780
    variable_modifiers          go to state 781
    method_modifiers            go to state 782
    non_empty_member_modifiers  go to state 783
    member_modifier             go to state 784


State 727

  252 name_list: name_list ',' . name

    "identifier (T_STRING)"    shift, and go to state 115
    "namespace (T_NAMESPACE)"  shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 83
    name            go to state 785


State 728

  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 "identifier (T_STRING)" interface_extends_list backup_doc_comment '{' . class_statement_list '}'

    $default  reduce using rule 246 (class_statement_list)

    class_statement_list  go to state 786


State 729

  301 expr_without_variable: "list (T_LIST)" '(' array_pair_list ')' '=' expr .
  322                      | expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 301 (expr_without_variable)


State 730

  482 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' expr ']' . '}'

    '}'  shift, and go to state 787


State 731

   93 top_statement: "namespace (T_NAMESPACE)" namespace_name $@1 '{' top_statement_list '}' .

    $default  reduce using rule 93 (top_statement)


State 732

  130 inner_statement: "__halt_compiler (T_HALT_COMPILER)" '(' ')' ';' .

    $default  reduce using rule 130 (inner_statement)


State 733

  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from implements_list . backup_doc_comment '{' class_statement_list '}'

    $default  reduce using rule 378 (backup_doc_comment)

    backup_doc_comment  go to state 788


State 734

  210 if_stmt_without_else: if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' statement .

    $default  reduce using rule 210 (if_stmt_without_else)


State 735

  214 alt_if_stmt_without_else: alt_if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' ':' . inner_statement_list

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 789


State 736

  216 alt_if_stmt: alt_if_stmt_without_else "else (T_ELSE)" ':' inner_statement_list "endif (T_ENDIF)" ';' .

    $default  reduce using rule 216 (alt_if_stmt)


State 737

  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list . ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    ')'  shift, and go to state 790


State 738

  226 type_expr: '?' type .

    $default  reduce using rule 226 (type_expr)


State 739

  375 expr_without_variable: function returns_ref backup_doc_comment '(' parameter_list ')' . lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    "use (T_USE)"  shift, and go to state 791

    $default  reduce using rule 382 (lexical_vars)

    lexical_vars  go to state 792


State 740

  220 non_empty_parameter_list: non_empty_parameter_list ',' . parameter

    '?'                        shift, and go to state 682
    "identifier (T_STRING)"    shift, and go to state 115
    "array (T_ARRAY)"          shift, and go to state 683
    "callable (T_CALLABLE)"    shift, and go to state 684
    "namespace (T_NAMESPACE)"  shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    $default  reduce using rule 223 (optional_type)

    namespace_name  go to state 83
    name            go to state 685
    parameter       go to state 793
    optional_type   go to state 689
    type_expr       go to state 690
    type            go to state 691


State 741

  167 is_reference: '&' .

    $default  reduce using rule 167 (is_reference)


State 742

  221 parameter: optional_type is_reference . is_variadic "variable (T_VARIABLE)"
  222          | optional_type is_reference . is_variadic "variable (T_VARIABLE)" '=' expr

    "... (T_ELLIPSIS)"  shift, and go to state 794

    $default  reduce using rule 168 (is_variadic)

    is_variadic  go to state 795


State 743

  301 expr_without_variable: "list (T_LIST)" '(' array_pair_list ')' . '=' expr
  471 array_pair: expr "=> (T_DOUBLE_ARROW)" "list (T_LIST)" '(' array_pair_list ')' .

    '='  shift, and go to state 669

    $default  reduce using rule 471 (array_pair)


State 744

  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments extends_from implements_list backup_doc_comment . '{' class_statement_list '}'

    '{'  shift, and go to state 796


State 745

  376 expr_without_variable: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' . lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    "use (T_USE)"  shift, and go to state 791

    $default  reduce using rule 382 (lexical_vars)

    lexical_vars  go to state 797


State 746

  135 statement: "do (T_DO)" statement "while (T_WHILE)" '(' expr ')' ';' .

    $default  reduce using rule 135 (statement)


State 747

  208 while_statement: ':' inner_statement_list "endwhile (T_ENDWHILE)" . ';'

    ';'  shift, and go to state 798


State 748

  136 statement: "for (T_FOR)" '(' for_exprs ';' for_exprs ';' for_exprs . ')' for_statement

    ')'  shift, and go to state 799


State 749

  191 foreach_variable: '[' array_pair_list ']' .
  404 dereferencable_scalar: '[' array_pair_list ']' .

    "=> (T_DOUBLE_ARROW)"  reduce using rule 191 (foreach_variable)
    ')'                    reduce using rule 191 (foreach_variable)
    $default               reduce using rule 404 (dereferencable_scalar)


State 750

  190 foreach_variable: "list (T_LIST)" '(' array_pair_list . ')'

    ')'  shift, and go to state 800


State 751

  148 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable . ')' foreach_statement

    ')'  shift, and go to state 801


State 752

  195 foreach_statement: ':' . inner_statement_list "endforeach (T_ENDFOREACH)" ';'

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 802


State 753

  194 foreach_statement: statement .

    $default  reduce using rule 194 (foreach_statement)


State 754

  147 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable ')' foreach_statement .

    $default  reduce using rule 147 (statement)


State 755

  123 inner_statement_list: inner_statement_list . inner_statement
  197 declare_statement: ':' inner_statement_list . "enddeclare (T_ENDDECLARE)" ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "enddeclare (T_ENDDECLARE)"                   shift, and go to state 803
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 376
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 378
    statement                        go to state 379
    function_declaration_statement   go to state 380
    class_declaration_statement      go to state 381
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 382
    interface_declaration_statement  go to state 383
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr_without_variable            go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    expr                             go to state 105
    variable_class_name              go to state 106
    dereferencable                   go to state 107
    callable_expr                    go to state 108
    callable_variable                go to state 109
    variable                         go to state 110
    simple_variable                  go to state 111
    static_member                    go to state 112
    internal_functions_in_yacc       go to state 113


State 756

  201 switch_case_list: ':' ';' case_list . "endswitch (T_ENDSWITCH)" ';'
  203 case_list: case_list . "case (T_CASE)" expr case_separator inner_statement_list
  204          | case_list . "default (T_DEFAULT)" case_separator inner_statement_list

    "endswitch (T_ENDSWITCH)"  shift, and go to state 804
    "case (T_CASE)"            shift, and go to state 758
    "default (T_DEFAULT)"      shift, and go to state 759


State 757

  200 switch_case_list: ':' case_list "endswitch (T_ENDSWITCH)" . ';'

    ';'  shift, and go to state 805


State 758

  203 case_list: case_list "case (T_CASE)" . expr case_separator inner_statement_list

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 806
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 759

  204 case_list: case_list "default (T_DEFAULT)" . case_separator inner_statement_list

    ':'  shift, and go to state 807
    ';'  shift, and go to state 808

    case_separator  go to state 809


State 760

  199 switch_case_list: '{' ';' case_list . '}'
  203 case_list: case_list . "case (T_CASE)" expr case_separator inner_statement_list
  204          | case_list . "default (T_DEFAULT)" case_separator inner_statement_list

    "case (T_CASE)"        shift, and go to state 758
    "default (T_DEFAULT)"  shift, and go to state 759
    '}'                    shift, and go to state 810


State 761

  198 switch_case_list: '{' case_list '}' .

    $default  reduce using rule 198 (switch_case_list)


State 762

  157 catch_list: catch_list "catch (T_CATCH)" '(' . catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list '}'

    "identifier (T_STRING)"    shift, and go to state 115
    "namespace (T_NAMESPACE)"  shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name   go to state 83
    name             go to state 811
    catch_name_list  go to state 812


State 763

  161 finally_statement: "finally (T_FINALLY)" '{' . inner_statement_list '}'

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 813


State 764

  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma . '}'

    '}'  shift, and go to state 814


State 765

  109 inline_use_declarations: inline_use_declarations ',' inline_use_declaration .

    $default  reduce using rule 109 (inline_use_declarations)


State 766

  105 mixed_group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}' .

    $default  reduce using rule 105 (mixed_group_use_declaration)


State 767

  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations . possible_comma '}'
  111 unprefixed_use_declarations: unprefixed_use_declarations . ',' unprefixed_use_declaration

    ','  shift, and go to state 768

    $default  reduce using rule 107 (possible_comma)

    possible_comma  go to state 815


State 768

  108 possible_comma: ',' .
  111 unprefixed_use_declarations: unprefixed_use_declarations ',' . unprefixed_use_declaration

    "identifier (T_STRING)"  shift, and go to state 115

    $default  reduce using rule 108 (possible_comma)

    namespace_name              go to state 575
    unprefixed_use_declaration  go to state 816


State 769

  103 group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma . '}'

    '}'  shift, and go to state 817


State 770

  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' . class_statement_list '}'

    $default  reduce using rule 246 (class_statement_list)

    class_statement_list  go to state 818


State 771

  279 member_modifier: "static (T_STATIC)" .

    $default  reduce using rule 279 (member_modifier)


State 772

  280 member_modifier: "abstract (T_ABSTRACT)" .

    $default  reduce using rule 280 (member_modifier)


State 773

  281 member_modifier: "final (T_FINAL)" .

    $default  reduce using rule 281 (member_modifier)


State 774

  278 member_modifier: "private (T_PRIVATE)" .

    $default  reduce using rule 278 (member_modifier)


State 775

  277 member_modifier: "protected (T_PROTECTED)" .

    $default  reduce using rule 277 (member_modifier)


State 776

  276 member_modifier: "public (T_PUBLIC)" .

    $default  reduce using rule 276 (member_modifier)


State 777

  249 class_statement: "use (T_USE)" . name_list trait_adaptations

    "identifier (T_STRING)"    shift, and go to state 115
    "namespace (T_NAMESPACE)"  shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 83
    name            go to state 666
    name_list       go to state 819


State 778

  271 variable_modifiers: "var (T_VAR)" .

    $default  reduce using rule 271 (variable_modifiers)


State 779

  179 trait_declaration_statement: "trait (T_TRAIT)" @6 "identifier (T_STRING)" backup_doc_comment '{' class_statement_list '}' .

    $default  reduce using rule 179 (trait_declaration_statement)


State 780

  245 class_statement_list: class_statement_list class_statement .

    $default  reduce using rule 245 (class_statement_list)


State 781

  247 class_statement: variable_modifiers . property_list ';'

    "variable (T_VARIABLE)"  shift, and go to state 820

    property_list  go to state 821
    property       go to state 822


State 782

  248 class_statement: method_modifiers . "const (T_CONST)" class_const_list ';'
  250                | method_modifiers . function returns_ref identifier backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags

    "function (T_FUNCTION)"  shift, and go to state 50
    "const (T_CONST)"        shift, and go to state 823

    function  go to state 824


State 783

  270 variable_modifiers: non_empty_member_modifiers .
  273 method_modifiers: non_empty_member_modifiers .
  275 non_empty_member_modifiers: non_empty_member_modifiers . member_modifier

    "static (T_STATIC)"        shift, and go to state 771
    "abstract (T_ABSTRACT)"    shift, and go to state 772
    "final (T_FINAL)"          shift, and go to state 773
    "private (T_PRIVATE)"      shift, and go to state 774
    "protected (T_PROTECTED)"  shift, and go to state 775
    "public (T_PUBLIC)"        shift, and go to state 776

    "variable (T_VARIABLE)"  reduce using rule 270 (variable_modifiers)
    $default                 reduce using rule 273 (method_modifiers)

    member_modifier  go to state 825


State 784

  274 non_empty_member_modifiers: member_modifier .

    $default  reduce using rule 274 (non_empty_member_modifiers)


State 785

  252 name_list: name_list ',' name .

    $default  reduce using rule 252 (name_list)


State 786

  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 "identifier (T_STRING)" interface_extends_list backup_doc_comment '{' class_statement_list . '}'
  245 class_statement_list: class_statement_list . class_statement

    "static (T_STATIC)"        shift, and go to state 771
    "abstract (T_ABSTRACT)"    shift, and go to state 772
    "final (T_FINAL)"          shift, and go to state 773
    "private (T_PRIVATE)"      shift, and go to state 774
    "protected (T_PROTECTED)"  shift, and go to state 775
    "public (T_PUBLIC)"        shift, and go to state 776
    "use (T_USE)"              shift, and go to state 777
    "var (T_VAR)"              shift, and go to state 778
    '}'                        shift, and go to state 826

    $default  reduce using rule 272 (method_modifiers)

    class_statement             go to state 780
    variable_modifiers          go to state 781
    method_modifiers            go to state 782
    non_empty_member_modifiers  go to state 783
    member_modifier             go to state 784


State 787

  482 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' expr ']' '}' .

    $default  reduce using rule 482 (encaps_var)


State 788

  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from implements_list backup_doc_comment . '{' class_statement_list '}'

    '{'  shift, and go to state 827


State 789

  123 inner_statement_list: inner_statement_list . inner_statement
  214 alt_if_stmt_without_else: alt_if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' ':' inner_statement_list .

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 376
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 214 (alt_if_stmt_without_else)

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 378
    statement                        go to state 379
    function_declaration_statement   go to state 380
    class_declaration_statement      go to state 381
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 382
    interface_declaration_statement  go to state 383
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr_without_variable            go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    expr                             go to state 105
    variable_class_name              go to state 106
    dereferencable                   go to state 107
    callable_expr                    go to state 108
    callable_variable                go to state 109
    variable                         go to state 110
    simple_variable                  go to state 111
    static_member                    go to state 112
    internal_functions_in_yacc       go to state 113


State 790

  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' . return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    ':'  shift, and go to state 828

    $default  reduce using rule 230 (return_type)

    return_type  go to state 829


State 791

  383 lexical_vars: "use (T_USE)" . '(' lexical_var_list ')'

    '('  shift, and go to state 830


State 792

  375 expr_without_variable: function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars . return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    ':'  shift, and go to state 828

    $default  reduce using rule 230 (return_type)

    return_type  go to state 831


State 793

  220 non_empty_parameter_list: non_empty_parameter_list ',' parameter .

    $default  reduce using rule 220 (non_empty_parameter_list)


State 794

  169 is_variadic: "... (T_ELLIPSIS)" .

    $default  reduce using rule 169 (is_variadic)


State 795

  221 parameter: optional_type is_reference is_variadic . "variable (T_VARIABLE)"
  222          | optional_type is_reference is_variadic . "variable (T_VARIABLE)" '=' expr

    "variable (T_VARIABLE)"  shift, and go to state 832


State 796

  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments extends_from implements_list backup_doc_comment '{' . class_statement_list '}'

    $default  reduce using rule 246 (class_statement_list)

    class_statement_list  go to state 833


State 797

  376 expr_without_variable: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars . return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    ':'  shift, and go to state 828

    $default  reduce using rule 230 (return_type)

    return_type  go to state 834


State 798

  208 while_statement: ':' inner_statement_list "endwhile (T_ENDWHILE)" ';' .

    $default  reduce using rule 208 (while_statement)


State 799

  136 statement: "for (T_FOR)" '(' for_exprs ';' for_exprs ';' for_exprs ')' . for_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    ':'                                           shift, and go to state 835
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    statement                   go to state 836
    for_statement               go to state 837
    if_stmt_without_else        go to state 93
    if_stmt                     go to state 94
    alt_if_stmt_without_else    go to state 95
    alt_if_stmt                 go to state 96
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 105
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 800

  190 foreach_variable: "list (T_LIST)" '(' array_pair_list ')' .

    $default  reduce using rule 190 (foreach_variable)


State 801

  148 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable ')' . foreach_statement

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    ':'                                           shift, and go to state 752
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    statement                   go to state 753
    foreach_statement           go to state 838
    if_stmt_without_else        go to state 93
    if_stmt                     go to state 94
    alt_if_stmt_without_else    go to state 95
    alt_if_stmt                 go to state 96
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 105
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 802

  123 inner_statement_list: inner_statement_list . inner_statement
  195 foreach_statement: ':' inner_statement_list . "endforeach (T_ENDFOREACH)" ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "endforeach (T_ENDFOREACH)"                   shift, and go to state 839
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 376
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 378
    statement                        go to state 379
    function_declaration_statement   go to state 380
    class_declaration_statement      go to state 381
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 382
    interface_declaration_statement  go to state 383
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr_without_variable            go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    expr                             go to state 105
    variable_class_name              go to state 106
    dereferencable                   go to state 107
    callable_expr                    go to state 108
    callable_variable                go to state 109
    variable                         go to state 110
    simple_variable                  go to state 111
    static_member                    go to state 112
    internal_functions_in_yacc       go to state 113


State 803

  197 declare_statement: ':' inner_statement_list "enddeclare (T_ENDDECLARE)" . ';'

    ';'  shift, and go to state 840


State 804

  201 switch_case_list: ':' ';' case_list "endswitch (T_ENDSWITCH)" . ';'

    ';'  shift, and go to state 841


State 805

  200 switch_case_list: ':' case_list "endswitch (T_ENDSWITCH)" ';' .

    $default  reduce using rule 200 (switch_case_list)


State 806

  203 case_list: case_list "case (T_CASE)" expr . case_separator inner_statement_list
  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    ':'                           shift, and go to state 807
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270
    ';'                           shift, and go to state 808

    case_separator  go to state 842


State 807

  205 case_separator: ':' .

    $default  reduce using rule 205 (case_separator)


State 808

  206 case_separator: ';' .

    $default  reduce using rule 206 (case_separator)


State 809

  204 case_list: case_list "default (T_DEFAULT)" case_separator . inner_statement_list

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 843


State 810

  199 switch_case_list: '{' ';' case_list '}' .

    $default  reduce using rule 199 (switch_case_list)


State 811

  158 catch_name_list: name .

    $default  reduce using rule 158 (catch_name_list)


State 812

  157 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list . "variable (T_VARIABLE)" ')' '{' inner_statement_list '}'
  159 catch_name_list: catch_name_list . '|' name

    '|'                      shift, and go to state 844
    "variable (T_VARIABLE)"  shift, and go to state 845


State 813

  123 inner_statement_list: inner_statement_list . inner_statement
  161 finally_statement: "finally (T_FINALLY)" '{' inner_statement_list . '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 376
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '}'                                           shift, and go to state 846
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 378
    statement                        go to state 379
    function_declaration_statement   go to state 380
    class_declaration_statement      go to state 381
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 382
    interface_declaration_statement  go to state 383
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr_without_variable            go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    expr                             go to state 105
    variable_class_name              go to state 106
    dereferencable                   go to state 107
    callable_expr                    go to state 108
    callable_variable                go to state 109
    variable                         go to state 110
    simple_variable                  go to state 111
    static_member                    go to state 112
    internal_functions_in_yacc       go to state 113


State 814

  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}' .

    $default  reduce using rule 106 (mixed_group_use_declaration)


State 815

  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma . '}'

    '}'  shift, and go to state 847


State 816

  111 unprefixed_use_declarations: unprefixed_use_declarations ',' unprefixed_use_declaration .

    $default  reduce using rule 111 (unprefixed_use_declarations)


State 817

  103 group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}' .

    $default  reduce using rule 103 (group_use_declaration)


State 818

  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list . '}'
  245 class_statement_list: class_statement_list . class_statement

    "static (T_STATIC)"        shift, and go to state 771
    "abstract (T_ABSTRACT)"    shift, and go to state 772
    "final (T_FINAL)"          shift, and go to state 773
    "private (T_PRIVATE)"      shift, and go to state 774
    "protected (T_PROTECTED)"  shift, and go to state 775
    "public (T_PUBLIC)"        shift, and go to state 776
    "use (T_USE)"              shift, and go to state 777
    "var (T_VAR)"              shift, and go to state 778
    '}'                        shift, and go to state 848

    $default  reduce using rule 272 (method_modifiers)

    class_statement             go to state 780
    variable_modifiers          go to state 781
    method_modifiers            go to state 782
    non_empty_member_modifiers  go to state 783
    member_modifier             go to state 784


State 819

  249 class_statement: "use (T_USE)" name_list . trait_adaptations
  252 name_list: name_list . ',' name

    ','  shift, and go to state 727
    ';'  shift, and go to state 849
    '{'  shift, and go to state 850

    trait_adaptations  go to state 851


State 820

  284 property: "variable (T_VARIABLE)" . backup_doc_comment
  285         | "variable (T_VARIABLE)" . '=' expr backup_doc_comment

    '='  shift, and go to state 852

    $default  reduce using rule 378 (backup_doc_comment)

    backup_doc_comment  go to state 853


State 821

  247 class_statement: variable_modifiers property_list . ';'
  282 property_list: property_list . ',' property

    ','  shift, and go to state 854
    ';'  shift, and go to state 855


State 822

  283 property_list: property .

    $default  reduce using rule 283 (property_list)


State 823

  248 class_statement: method_modifiers "const (T_CONST)" . class_const_list ';'

    "include (T_INCLUDE)"            shift, and go to state 401
    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 402
    "eval (T_EVAL)"                  shift, and go to state 403
    "require (T_REQUIRE)"            shift, and go to state 404
    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 405
    "or (T_LOGICAL_OR)"              shift, and go to state 406
    "xor (T_LOGICAL_XOR)"            shift, and go to state 407
    "and (T_LOGICAL_AND)"            shift, and go to state 408
    "print (T_PRINT)"                shift, and go to state 409
    "yield (T_YIELD)"                shift, and go to state 410
    "instanceof (T_INSTANCEOF)"      shift, and go to state 411
    "new (T_NEW)"                    shift, and go to state 412
    "clone (T_CLONE)"                shift, and go to state 413
    "elseif (T_ELSEIF)"              shift, and go to state 414
    "else (T_ELSE)"                  shift, and go to state 415
    "endif (T_ENDIF)"                shift, and go to state 416
    "static (T_STATIC)"              shift, and go to state 417
    "abstract (T_ABSTRACT)"          shift, and go to state 418
    "final (T_FINAL)"                shift, and go to state 419
    "private (T_PRIVATE)"            shift, and go to state 420
    "protected (T_PROTECTED)"        shift, and go to state 421
    "public (T_PUBLIC)"              shift, and go to state 422
    "identifier (T_STRING)"          shift, and go to state 423
    "exit (T_EXIT)"                  shift, and go to state 424
    "if (T_IF)"                      shift, and go to state 425
    "echo (T_ECHO)"                  shift, and go to state 426
    "do (T_DO)"                      shift, and go to state 427
    "while (T_WHILE)"                shift, and go to state 428
    "endwhile (T_ENDWHILE)"          shift, and go to state 429
    "for (T_FOR)"                    shift, and go to state 430
    "endfor (T_ENDFOR)"              shift, and go to state 431
    "foreach (T_FOREACH)"            shift, and go to state 432
    "endforeach (T_ENDFOREACH)"      shift, and go to state 433
    "declare (T_DECLARE)"            shift, and go to state 434
    "enddeclare (T_ENDDECLARE)"      shift, and go to state 435
    "as (T_AS)"                      shift, and go to state 436
    "switch (T_SWITCH)"              shift, and go to state 437
    "endswitch (T_ENDSWITCH)"        shift, and go to state 438
    "case (T_CASE)"                  shift, and go to state 439
    "default (T_DEFAULT)"            shift, and go to state 440
    "break (T_BREAK)"                shift, and go to state 441
    "continue (T_CONTINUE)"          shift, and go to state 442
    "goto (T_GOTO)"                  shift, and go to state 443
    "function (T_FUNCTION)"          shift, and go to state 444
    "const (T_CONST)"                shift, and go to state 445
    "return (T_RETURN)"              shift, and go to state 446
    "try (T_TRY)"                    shift, and go to state 447
    "catch (T_CATCH)"                shift, and go to state 448
    "finally (T_FINALLY)"            shift, and go to state 449
    "throw (T_THROW)"                shift, and go to state 450
    "use (T_USE)"                    shift, and go to state 451
    "insteadof (T_INSTEADOF)"        shift, and go to state 452
    "global (T_GLOBAL)"              shift, and go to state 453
    "var (T_VAR)"                    shift, and go to state 454
    "unset (T_UNSET)"                shift, and go to state 455
    "isset (T_ISSET)"                shift, and go to state 456
    "empty (T_EMPTY)"                shift, and go to state 457
    "class (T_CLASS)"                shift, and go to state 458
    "trait (T_TRAIT)"                shift, and go to state 459
    "interface (T_INTERFACE)"        shift, and go to state 460
    "extends (T_EXTENDS)"            shift, and go to state 461
    "implements (T_IMPLEMENTS)"      shift, and go to state 462
    "list (T_LIST)"                  shift, and go to state 463
    "array (T_ARRAY)"                shift, and go to state 464
    "callable (T_CALLABLE)"          shift, and go to state 465
    "__LINE__ (T_LINE)"              shift, and go to state 466
    "__FILE__ (T_FILE)"              shift, and go to state 467
    "__DIR__ (T_DIR)"                shift, and go to state 468
    "__CLASS__ (T_CLASS_C)"          shift, and go to state 469
    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 470
    "__METHOD__ (T_METHOD_C)"        shift, and go to state 471
    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 472
    "namespace (T_NAMESPACE)"        shift, and go to state 473
    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 474

    reserved_non_modifiers  go to state 476
    semi_reserved           go to state 477
    identifier              go to state 856
    class_const_list        go to state 857
    class_const_decl        go to state 858


State 824

  250 class_statement: method_modifiers function . returns_ref identifier backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags

    '&'  shift, and go to state 238

    $default  reduce using rule 380 (returns_ref)

    returns_ref  go to state 859


State 825

  275 non_empty_member_modifiers: non_empty_member_modifiers member_modifier .

    $default  reduce using rule 275 (non_empty_member_modifiers)


State 826

  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 "identifier (T_STRING)" interface_extends_list backup_doc_comment '{' class_statement_list '}' .

    $default  reduce using rule 181 (interface_declaration_statement)


State 827

  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' . class_statement_list '}'

    $default  reduce using rule 246 (class_statement_list)

    class_statement_list  go to state 860


State 828

  231 return_type: ':' . type_expr

    '?'                        shift, and go to state 682
    "identifier (T_STRING)"    shift, and go to state 115
    "array (T_ARRAY)"          shift, and go to state 683
    "callable (T_CALLABLE)"    shift, and go to state 684
    "namespace (T_NAMESPACE)"  shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 83
    name            go to state 685
    type_expr       go to state 861
    type            go to state 691


State 829

  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type . backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    $default  reduce using rule 379 (backup_fn_flags)

    backup_fn_flags  go to state 862


State 830

  383 lexical_vars: "use (T_USE)" '(' . lexical_var_list ')'

    '&'                      shift, and go to state 863
    "variable (T_VARIABLE)"  shift, and go to state 864

    lexical_var_list  go to state 865
    lexical_var       go to state 866


State 831

  375 expr_without_variable: function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type . backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    $default  reduce using rule 379 (backup_fn_flags)

    backup_fn_flags  go to state 867


State 832

  221 parameter: optional_type is_reference is_variadic "variable (T_VARIABLE)" .
  222          | optional_type is_reference is_variadic "variable (T_VARIABLE)" . '=' expr

    '='  shift, and go to state 868

    $default  reduce using rule 221 (parameter)


State 833

  245 class_statement_list: class_statement_list . class_statement
  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments extends_from implements_list backup_doc_comment '{' class_statement_list . '}'

    "static (T_STATIC)"        shift, and go to state 771
    "abstract (T_ABSTRACT)"    shift, and go to state 772
    "final (T_FINAL)"          shift, and go to state 773
    "private (T_PRIVATE)"      shift, and go to state 774
    "protected (T_PROTECTED)"  shift, and go to state 775
    "public (T_PUBLIC)"        shift, and go to state 776
    "use (T_USE)"              shift, and go to state 777
    "var (T_VAR)"              shift, and go to state 778
    '}'                        shift, and go to state 869

    $default  reduce using rule 272 (method_modifiers)

    class_statement             go to state 780
    variable_modifiers          go to state 781
    method_modifiers            go to state 782
    non_empty_member_modifiers  go to state 783
    member_modifier             go to state 784


State 834

  376 expr_without_variable: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type . backup_fn_flags '{' inner_statement_list '}' backup_fn_flags

    $default  reduce using rule 379 (backup_fn_flags)

    backup_fn_flags  go to state 870


State 835

  193 for_statement: ':' . inner_statement_list "endfor (T_ENDFOR)" ';'

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 871


State 836

  192 for_statement: statement .

    $default  reduce using rule 192 (for_statement)


State 837

  136 statement: "for (T_FOR)" '(' for_exprs ';' for_exprs ';' for_exprs ')' for_statement .

    $default  reduce using rule 136 (statement)


State 838

  148 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable ')' foreach_statement .

    $default  reduce using rule 148 (statement)


State 839

  195 foreach_statement: ':' inner_statement_list "endforeach (T_ENDFOREACH)" . ';'

    ';'  shift, and go to state 872


State 840

  197 declare_statement: ':' inner_statement_list "enddeclare (T_ENDDECLARE)" ';' .

    $default  reduce using rule 197 (declare_statement)


State 841

  201 switch_case_list: ':' ';' case_list "endswitch (T_ENDSWITCH)" ';' .

    $default  reduce using rule 201 (switch_case_list)


State 842

  203 case_list: case_list "case (T_CASE)" expr case_separator . inner_statement_list

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 873


State 843

  123 inner_statement_list: inner_statement_list . inner_statement
  204 case_list: case_list "default (T_DEFAULT)" case_separator inner_statement_list .

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 376
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 204 (case_list)

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 378
    statement                        go to state 379
    function_declaration_statement   go to state 380
    class_declaration_statement      go to state 381
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 382
    interface_declaration_statement  go to state 383
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr_without_variable            go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    expr                             go to state 105
    variable_class_name              go to state 106
    dereferencable                   go to state 107
    callable_expr                    go to state 108
    callable_variable                go to state 109
    variable                         go to state 110
    simple_variable                  go to state 111
    static_member                    go to state 112
    internal_functions_in_yacc       go to state 113


State 844

  159 catch_name_list: catch_name_list '|' . name

    "identifier (T_STRING)"    shift, and go to state 115
    "namespace (T_NAMESPACE)"  shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 83
    name            go to state 874


State 845

  157 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" . ')' '{' inner_statement_list '}'

    ')'  shift, and go to state 875


State 846

  161 finally_statement: "finally (T_FINALLY)" '{' inner_statement_list '}' .

    $default  reduce using rule 161 (finally_statement)


State 847

  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}' .

    $default  reduce using rule 104 (group_use_declaration)


State 848

  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}' .

    $default  reduce using rule 173 (class_declaration_statement)


State 849

  253 trait_adaptations: ';' .

    $default  reduce using rule 253 (trait_adaptations)


State 850

  254 trait_adaptations: '{' . '}'
  255                  | '{' . trait_adaptation_list '}'

    "include (T_INCLUDE)"            shift, and go to state 401
    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 402
    "eval (T_EVAL)"                  shift, and go to state 403
    "require (T_REQUIRE)"            shift, and go to state 404
    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 405
    "or (T_LOGICAL_OR)"              shift, and go to state 406
    "xor (T_LOGICAL_XOR)"            shift, and go to state 407
    "and (T_LOGICAL_AND)"            shift, and go to state 408
    "print (T_PRINT)"                shift, and go to state 409
    "yield (T_YIELD)"                shift, and go to state 410
    "instanceof (T_INSTANCEOF)"      shift, and go to state 411
    "new (T_NEW)"                    shift, and go to state 412
    "clone (T_CLONE)"                shift, and go to state 413
    "elseif (T_ELSEIF)"              shift, and go to state 414
    "else (T_ELSE)"                  shift, and go to state 415
    "endif (T_ENDIF)"                shift, and go to state 416
    "static (T_STATIC)"              shift, and go to state 417
    "abstract (T_ABSTRACT)"          shift, and go to state 418
    "final (T_FINAL)"                shift, and go to state 419
    "private (T_PRIVATE)"            shift, and go to state 420
    "protected (T_PROTECTED)"        shift, and go to state 421
    "public (T_PUBLIC)"              shift, and go to state 422
    "identifier (T_STRING)"          shift, and go to state 876
    "exit (T_EXIT)"                  shift, and go to state 424
    "if (T_IF)"                      shift, and go to state 425
    "echo (T_ECHO)"                  shift, and go to state 426
    "do (T_DO)"                      shift, and go to state 427
    "while (T_WHILE)"                shift, and go to state 428
    "endwhile (T_ENDWHILE)"          shift, and go to state 429
    "for (T_FOR)"                    shift, and go to state 430
    "endfor (T_ENDFOR)"              shift, and go to state 431
    "foreach (T_FOREACH)"            shift, and go to state 432
    "endforeach (T_ENDFOREACH)"      shift, and go to state 433
    "declare (T_DECLARE)"            shift, and go to state 434
    "enddeclare (T_ENDDECLARE)"      shift, and go to state 435
    "as (T_AS)"                      shift, and go to state 436
    "switch (T_SWITCH)"              shift, and go to state 437
    "endswitch (T_ENDSWITCH)"        shift, and go to state 438
    "case (T_CASE)"                  shift, and go to state 439
    "default (T_DEFAULT)"            shift, and go to state 440
    "break (T_BREAK)"                shift, and go to state 441
    "continue (T_CONTINUE)"          shift, and go to state 442
    "goto (T_GOTO)"                  shift, and go to state 443
    "function (T_FUNCTION)"          shift, and go to state 444
    "const (T_CONST)"                shift, and go to state 445
    "return (T_RETURN)"              shift, and go to state 446
    "try (T_TRY)"                    shift, and go to state 447
    "catch (T_CATCH)"                shift, and go to state 448
    "finally (T_FINALLY)"            shift, and go to state 449
    "throw (T_THROW)"                shift, and go to state 450
    "use (T_USE)"                    shift, and go to state 451
    "insteadof (T_INSTEADOF)"        shift, and go to state 452
    "global (T_GLOBAL)"              shift, and go to state 453
    "var (T_VAR)"                    shift, and go to state 454
    "unset (T_UNSET)"                shift, and go to state 455
    "isset (T_ISSET)"                shift, and go to state 456
    "empty (T_EMPTY)"                shift, and go to state 457
    "class (T_CLASS)"                shift, and go to state 458
    "trait (T_TRAIT)"                shift, and go to state 459
    "interface (T_INTERFACE)"        shift, and go to state 460
    "extends (T_EXTENDS)"            shift, and go to state 461
    "implements (T_IMPLEMENTS)"      shift, and go to state 462
    "list (T_LIST)"                  shift, and go to state 463
    "array (T_ARRAY)"                shift, and go to state 464
    "callable (T_CALLABLE)"          shift, and go to state 465
    "__LINE__ (T_LINE)"              shift, and go to state 466
    "__FILE__ (T_FILE)"              shift, and go to state 467
    "__DIR__ (T_DIR)"                shift, and go to state 468
    "__CLASS__ (T_CLASS_C)"          shift, and go to state 469
    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 470
    "__METHOD__ (T_METHOD_C)"        shift, and go to state 471
    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 472
    "namespace (T_NAMESPACE)"        shift, and go to state 877
    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 474
    "\\ (T_NS_SEPARATOR)"            shift, and go to state 76
    '}'                              shift, and go to state 878

    reserved_non_modifiers           go to state 476
    semi_reserved                    go to state 477
    identifier                       go to state 879
    namespace_name                   go to state 83
    name                             go to state 880
    trait_adaptation_list            go to state 881
    trait_adaptation                 go to state 882
    trait_precedence                 go to state 883
    trait_alias                      go to state 884
    trait_method_reference           go to state 885
    absolute_trait_method_reference  go to state 886


State 851

  249 class_statement: "use (T_USE)" name_list trait_adaptations .

    $default  reduce using rule 249 (class_statement)


State 852

  285 property: "variable (T_VARIABLE)" '=' . expr backup_doc_comment

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 887
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 853

  284 property: "variable (T_VARIABLE)" backup_doc_comment .

    $default  reduce using rule 284 (property)


State 854

  282 property_list: property_list ',' . property

    "variable (T_VARIABLE)"  shift, and go to state 820

    property  go to state 888


State 855

  247 class_statement: variable_modifiers property_list ';' .

    $default  reduce using rule 247 (class_statement)


State 856

  288 class_const_decl: identifier . '=' expr backup_doc_comment

    '='  shift, and go to state 889


State 857

  248 class_statement: method_modifiers "const (T_CONST)" class_const_list . ';'
  286 class_const_list: class_const_list . ',' class_const_decl

    ','  shift, and go to state 890
    ';'  shift, and go to state 891


State 858

  287 class_const_list: class_const_decl .

    $default  reduce using rule 287 (class_const_list)


State 859

  250 class_statement: method_modifiers function returns_ref . identifier backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags

    "include (T_INCLUDE)"            shift, and go to state 401
    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 402
    "eval (T_EVAL)"                  shift, and go to state 403
    "require (T_REQUIRE)"            shift, and go to state 404
    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 405
    "or (T_LOGICAL_OR)"              shift, and go to state 406
    "xor (T_LOGICAL_XOR)"            shift, and go to state 407
    "and (T_LOGICAL_AND)"            shift, and go to state 408
    "print (T_PRINT)"                shift, and go to state 409
    "yield (T_YIELD)"                shift, and go to state 410
    "instanceof (T_INSTANCEOF)"      shift, and go to state 411
    "new (T_NEW)"                    shift, and go to state 412
    "clone (T_CLONE)"                shift, and go to state 413
    "elseif (T_ELSEIF)"              shift, and go to state 414
    "else (T_ELSE)"                  shift, and go to state 415
    "endif (T_ENDIF)"                shift, and go to state 416
    "static (T_STATIC)"              shift, and go to state 417
    "abstract (T_ABSTRACT)"          shift, and go to state 418
    "final (T_FINAL)"                shift, and go to state 419
    "private (T_PRIVATE)"            shift, and go to state 420
    "protected (T_PROTECTED)"        shift, and go to state 421
    "public (T_PUBLIC)"              shift, and go to state 422
    "identifier (T_STRING)"          shift, and go to state 423
    "exit (T_EXIT)"                  shift, and go to state 424
    "if (T_IF)"                      shift, and go to state 425
    "echo (T_ECHO)"                  shift, and go to state 426
    "do (T_DO)"                      shift, and go to state 427
    "while (T_WHILE)"                shift, and go to state 428
    "endwhile (T_ENDWHILE)"          shift, and go to state 429
    "for (T_FOR)"                    shift, and go to state 430
    "endfor (T_ENDFOR)"              shift, and go to state 431
    "foreach (T_FOREACH)"            shift, and go to state 432
    "endforeach (T_ENDFOREACH)"      shift, and go to state 433
    "declare (T_DECLARE)"            shift, and go to state 434
    "enddeclare (T_ENDDECLARE)"      shift, and go to state 435
    "as (T_AS)"                      shift, and go to state 436
    "switch (T_SWITCH)"              shift, and go to state 437
    "endswitch (T_ENDSWITCH)"        shift, and go to state 438
    "case (T_CASE)"                  shift, and go to state 439
    "default (T_DEFAULT)"            shift, and go to state 440
    "break (T_BREAK)"                shift, and go to state 441
    "continue (T_CONTINUE)"          shift, and go to state 442
    "goto (T_GOTO)"                  shift, and go to state 443
    "function (T_FUNCTION)"          shift, and go to state 444
    "const (T_CONST)"                shift, and go to state 445
    "return (T_RETURN)"              shift, and go to state 446
    "try (T_TRY)"                    shift, and go to state 447
    "catch (T_CATCH)"                shift, and go to state 448
    "finally (T_FINALLY)"            shift, and go to state 449
    "throw (T_THROW)"                shift, and go to state 450
    "use (T_USE)"                    shift, and go to state 451
    "insteadof (T_INSTEADOF)"        shift, and go to state 452
    "global (T_GLOBAL)"              shift, and go to state 453
    "var (T_VAR)"                    shift, and go to state 454
    "unset (T_UNSET)"                shift, and go to state 455
    "isset (T_ISSET)"                shift, and go to state 456
    "empty (T_EMPTY)"                shift, and go to state 457
    "class (T_CLASS)"                shift, and go to state 458
    "trait (T_TRAIT)"                shift, and go to state 459
    "interface (T_INTERFACE)"        shift, and go to state 460
    "extends (T_EXTENDS)"            shift, and go to state 461
    "implements (T_IMPLEMENTS)"      shift, and go to state 462
    "list (T_LIST)"                  shift, and go to state 463
    "array (T_ARRAY)"                shift, and go to state 464
    "callable (T_CALLABLE)"          shift, and go to state 465
    "__LINE__ (T_LINE)"              shift, and go to state 466
    "__FILE__ (T_FILE)"              shift, and go to state 467
    "__DIR__ (T_DIR)"                shift, and go to state 468
    "__CLASS__ (T_CLASS_C)"          shift, and go to state 469
    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 470
    "__METHOD__ (T_METHOD_C)"        shift, and go to state 471
    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 472
    "namespace (T_NAMESPACE)"        shift, and go to state 473
    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 474

    reserved_non_modifiers  go to state 476
    semi_reserved           go to state 477
    identifier              go to state 892


State 860

  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list . '}'
  245 class_statement_list: class_statement_list . class_statement

    "static (T_STATIC)"        shift, and go to state 771
    "abstract (T_ABSTRACT)"    shift, and go to state 772
    "final (T_FINAL)"          shift, and go to state 773
    "private (T_PRIVATE)"      shift, and go to state 774
    "protected (T_PROTECTED)"  shift, and go to state 775
    "public (T_PUBLIC)"        shift, and go to state 776
    "use (T_USE)"              shift, and go to state 777
    "var (T_VAR)"              shift, and go to state 778
    '}'                        shift, and go to state 893

    $default  reduce using rule 272 (method_modifiers)

    class_statement             go to state 780
    variable_modifiers          go to state 781
    method_modifiers            go to state 782
    non_empty_member_modifiers  go to state 783
    member_modifier             go to state 784


State 861

  231 return_type: ':' type_expr .

    $default  reduce using rule 231 (return_type)


State 862

  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags . '{' inner_statement_list '}' backup_fn_flags

    '{'  shift, and go to state 894


State 863

  387 lexical_var: '&' . "variable (T_VARIABLE)"

    "variable (T_VARIABLE)"  shift, and go to state 895


State 864

  386 lexical_var: "variable (T_VARIABLE)" .

    $default  reduce using rule 386 (lexical_var)


State 865

  383 lexical_vars: "use (T_USE)" '(' lexical_var_list . ')'
  384 lexical_var_list: lexical_var_list . ',' lexical_var

    ','  shift, and go to state 896
    ')'  shift, and go to state 897


State 866

  385 lexical_var_list: lexical_var .

    $default  reduce using rule 385 (lexical_var_list)


State 867

  375 expr_without_variable: function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags . '{' inner_statement_list '}' backup_fn_flags

    '{'  shift, and go to state 898


State 868

  222 parameter: optional_type is_reference is_variadic "variable (T_VARIABLE)" '=' . expr

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 899
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 869

  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments extends_from implements_list backup_doc_comment '{' class_statement_list '}' .

    $default  reduce using rule 298 (anonymous_class)


State 870

  376 expr_without_variable: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags . '{' inner_statement_list '}' backup_fn_flags

    '{'  shift, and go to state 900


State 871

  123 inner_statement_list: inner_statement_list . inner_statement
  193 for_statement: ':' inner_statement_list . "endfor (T_ENDFOR)" ';'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "endfor (T_ENDFOR)"                           shift, and go to state 901
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 376
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 378
    statement                        go to state 379
    function_declaration_statement   go to state 380
    class_declaration_statement      go to state 381
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 382
    interface_declaration_statement  go to state 383
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr_without_variable            go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    expr                             go to state 105
    variable_class_name              go to state 106
    dereferencable                   go to state 107
    callable_expr                    go to state 108
    callable_variable                go to state 109
    variable                         go to state 110
    simple_variable                  go to state 111
    static_member                    go to state 112
    internal_functions_in_yacc       go to state 113


State 872

  195 foreach_statement: ':' inner_statement_list "endforeach (T_ENDFOREACH)" ';' .

    $default  reduce using rule 195 (foreach_statement)


State 873

  123 inner_statement_list: inner_statement_list . inner_statement
  203 case_list: case_list "case (T_CASE)" expr case_separator inner_statement_list .

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 376
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    $default  reduce using rule 203 (case_list)

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 378
    statement                        go to state 379
    function_declaration_statement   go to state 380
    class_declaration_statement      go to state 381
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 382
    interface_declaration_statement  go to state 383
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr_without_variable            go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    expr                             go to state 105
    variable_class_name              go to state 106
    dereferencable                   go to state 107
    callable_expr                    go to state 108
    callable_variable                go to state 109
    variable                         go to state 110
    simple_variable                  go to state 111
    static_member                    go to state 112
    internal_functions_in_yacc       go to state 113


State 874

  159 catch_name_list: catch_name_list '|' name .

    $default  reduce using rule 159 (catch_name_list)


State 875

  157 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' . '{' inner_statement_list '}'

    '{'  shift, and go to state 902


State 876

   76 identifier: "identifier (T_STRING)" .
   80 namespace_name: "identifier (T_STRING)" .

    "as (T_AS)"  reduce using rule 76 (identifier)
    $default     reduce using rule 80 (namespace_name)


State 877

   57 reserved_non_modifiers: "namespace (T_NAMESPACE)" .
   83 name: "namespace (T_NAMESPACE)" . "\\ (T_NS_SEPARATOR)" namespace_name

    "\\ (T_NS_SEPARATOR)"  shift, and go to state 215

    $default  reduce using rule 57 (reserved_non_modifiers)


State 878

  254 trait_adaptations: '{' '}' .

    $default  reduce using rule 254 (trait_adaptations)


State 879

  265 trait_method_reference: identifier .

    $default  reduce using rule 265 (trait_method_reference)


State 880

  267 absolute_trait_method_reference: name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier

    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  shift, and go to state 903


State 881

  255 trait_adaptations: '{' trait_adaptation_list . '}'
  257 trait_adaptation_list: trait_adaptation_list . trait_adaptation

    "include (T_INCLUDE)"            shift, and go to state 401
    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 402
    "eval (T_EVAL)"                  shift, and go to state 403
    "require (T_REQUIRE)"            shift, and go to state 404
    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 405
    "or (T_LOGICAL_OR)"              shift, and go to state 406
    "xor (T_LOGICAL_XOR)"            shift, and go to state 407
    "and (T_LOGICAL_AND)"            shift, and go to state 408
    "print (T_PRINT)"                shift, and go to state 409
    "yield (T_YIELD)"                shift, and go to state 410
    "instanceof (T_INSTANCEOF)"      shift, and go to state 411
    "new (T_NEW)"                    shift, and go to state 412
    "clone (T_CLONE)"                shift, and go to state 413
    "elseif (T_ELSEIF)"              shift, and go to state 414
    "else (T_ELSE)"                  shift, and go to state 415
    "endif (T_ENDIF)"                shift, and go to state 416
    "static (T_STATIC)"              shift, and go to state 417
    "abstract (T_ABSTRACT)"          shift, and go to state 418
    "final (T_FINAL)"                shift, and go to state 419
    "private (T_PRIVATE)"            shift, and go to state 420
    "protected (T_PROTECTED)"        shift, and go to state 421
    "public (T_PUBLIC)"              shift, and go to state 422
    "identifier (T_STRING)"          shift, and go to state 876
    "exit (T_EXIT)"                  shift, and go to state 424
    "if (T_IF)"                      shift, and go to state 425
    "echo (T_ECHO)"                  shift, and go to state 426
    "do (T_DO)"                      shift, and go to state 427
    "while (T_WHILE)"                shift, and go to state 428
    "endwhile (T_ENDWHILE)"          shift, and go to state 429
    "for (T_FOR)"                    shift, and go to state 430
    "endfor (T_ENDFOR)"              shift, and go to state 431
    "foreach (T_FOREACH)"            shift, and go to state 432
    "endforeach (T_ENDFOREACH)"      shift, and go to state 433
    "declare (T_DECLARE)"            shift, and go to state 434
    "enddeclare (T_ENDDECLARE)"      shift, and go to state 435
    "as (T_AS)"                      shift, and go to state 436
    "switch (T_SWITCH)"              shift, and go to state 437
    "endswitch (T_ENDSWITCH)"        shift, and go to state 438
    "case (T_CASE)"                  shift, and go to state 439
    "default (T_DEFAULT)"            shift, and go to state 440
    "break (T_BREAK)"                shift, and go to state 441
    "continue (T_CONTINUE)"          shift, and go to state 442
    "goto (T_GOTO)"                  shift, and go to state 443
    "function (T_FUNCTION)"          shift, and go to state 444
    "const (T_CONST)"                shift, and go to state 445
    "return (T_RETURN)"              shift, and go to state 446
    "try (T_TRY)"                    shift, and go to state 447
    "catch (T_CATCH)"                shift, and go to state 448
    "finally (T_FINALLY)"            shift, and go to state 449
    "throw (T_THROW)"                shift, and go to state 450
    "use (T_USE)"                    shift, and go to state 451
    "insteadof (T_INSTEADOF)"        shift, and go to state 452
    "global (T_GLOBAL)"              shift, and go to state 453
    "var (T_VAR)"                    shift, and go to state 454
    "unset (T_UNSET)"                shift, and go to state 455
    "isset (T_ISSET)"                shift, and go to state 456
    "empty (T_EMPTY)"                shift, and go to state 457
    "class (T_CLASS)"                shift, and go to state 458
    "trait (T_TRAIT)"                shift, and go to state 459
    "interface (T_INTERFACE)"        shift, and go to state 460
    "extends (T_EXTENDS)"            shift, and go to state 461
    "implements (T_IMPLEMENTS)"      shift, and go to state 462
    "list (T_LIST)"                  shift, and go to state 463
    "array (T_ARRAY)"                shift, and go to state 464
    "callable (T_CALLABLE)"          shift, and go to state 465
    "__LINE__ (T_LINE)"              shift, and go to state 466
    "__FILE__ (T_FILE)"              shift, and go to state 467
    "__DIR__ (T_DIR)"                shift, and go to state 468
    "__CLASS__ (T_CLASS_C)"          shift, and go to state 469
    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 470
    "__METHOD__ (T_METHOD_C)"        shift, and go to state 471
    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 472
    "namespace (T_NAMESPACE)"        shift, and go to state 877
    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 474
    "\\ (T_NS_SEPARATOR)"            shift, and go to state 76
    '}'                              shift, and go to state 904

    reserved_non_modifiers           go to state 476
    semi_reserved                    go to state 477
    identifier                       go to state 879
    namespace_name                   go to state 83
    name                             go to state 880
    trait_adaptation                 go to state 905
    trait_precedence                 go to state 883
    trait_alias                      go to state 884
    trait_method_reference           go to state 885
    absolute_trait_method_reference  go to state 886


State 882

  256 trait_adaptation_list: trait_adaptation .

    $default  reduce using rule 256 (trait_adaptation_list)


State 883

  258 trait_adaptation: trait_precedence . ';'

    ';'  shift, and go to state 906


State 884

  259 trait_adaptation: trait_alias . ';'

    ';'  shift, and go to state 907


State 885

  261 trait_alias: trait_method_reference . "as (T_AS)" "identifier (T_STRING)"
  262            | trait_method_reference . "as (T_AS)" reserved_non_modifiers
  263            | trait_method_reference . "as (T_AS)" member_modifier identifier
  264            | trait_method_reference . "as (T_AS)" member_modifier

    "as (T_AS)"  shift, and go to state 908


State 886

  260 trait_precedence: absolute_trait_method_reference . "insteadof (T_INSTEADOF)" name_list
  266 trait_method_reference: absolute_trait_method_reference .

    "insteadof (T_INSTEADOF)"  shift, and go to state 909

    $default  reduce using rule 266 (trait_method_reference)


State 887

  285 property: "variable (T_VARIABLE)" '=' expr . backup_doc_comment
  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 378 (backup_doc_comment)

    backup_doc_comment  go to state 910


State 888

  282 property_list: property_list ',' property .

    $default  reduce using rule 282 (property_list)


State 889

  288 class_const_decl: identifier '=' . expr backup_doc_comment

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 114
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 115
    "variable (T_VARIABLE)"                       shift, and go to state 35
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "function (T_FUNCTION)"                       shift, and go to state 50
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name              go to state 83
    name                        go to state 84
    new_expr                    go to state 97
    expr_without_variable       go to state 98
    function                    go to state 117
    function_call               go to state 100
    class_name                  go to state 101
    dereferencable_scalar       go to state 102
    scalar                      go to state 103
    constant                    go to state 104
    expr                        go to state 911
    variable_class_name         go to state 106
    dereferencable              go to state 107
    callable_expr               go to state 108
    callable_variable           go to state 109
    variable                    go to state 110
    simple_variable             go to state 111
    static_member               go to state 112
    internal_functions_in_yacc  go to state 113


State 890

  286 class_const_list: class_const_list ',' . class_const_decl

    "include (T_INCLUDE)"            shift, and go to state 401
    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 402
    "eval (T_EVAL)"                  shift, and go to state 403
    "require (T_REQUIRE)"            shift, and go to state 404
    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 405
    "or (T_LOGICAL_OR)"              shift, and go to state 406
    "xor (T_LOGICAL_XOR)"            shift, and go to state 407
    "and (T_LOGICAL_AND)"            shift, and go to state 408
    "print (T_PRINT)"                shift, and go to state 409
    "yield (T_YIELD)"                shift, and go to state 410
    "instanceof (T_INSTANCEOF)"      shift, and go to state 411
    "new (T_NEW)"                    shift, and go to state 412
    "clone (T_CLONE)"                shift, and go to state 413
    "elseif (T_ELSEIF)"              shift, and go to state 414
    "else (T_ELSE)"                  shift, and go to state 415
    "endif (T_ENDIF)"                shift, and go to state 416
    "static (T_STATIC)"              shift, and go to state 417
    "abstract (T_ABSTRACT)"          shift, and go to state 418
    "final (T_FINAL)"                shift, and go to state 419
    "private (T_PRIVATE)"            shift, and go to state 420
    "protected (T_PROTECTED)"        shift, and go to state 421
    "public (T_PUBLIC)"              shift, and go to state 422
    "identifier (T_STRING)"          shift, and go to state 423
    "exit (T_EXIT)"                  shift, and go to state 424
    "if (T_IF)"                      shift, and go to state 425
    "echo (T_ECHO)"                  shift, and go to state 426
    "do (T_DO)"                      shift, and go to state 427
    "while (T_WHILE)"                shift, and go to state 428
    "endwhile (T_ENDWHILE)"          shift, and go to state 429
    "for (T_FOR)"                    shift, and go to state 430
    "endfor (T_ENDFOR)"              shift, and go to state 431
    "foreach (T_FOREACH)"            shift, and go to state 432
    "endforeach (T_ENDFOREACH)"      shift, and go to state 433
    "declare (T_DECLARE)"            shift, and go to state 434
    "enddeclare (T_ENDDECLARE)"      shift, and go to state 435
    "as (T_AS)"                      shift, and go to state 436
    "switch (T_SWITCH)"              shift, and go to state 437
    "endswitch (T_ENDSWITCH)"        shift, and go to state 438
    "case (T_CASE)"                  shift, and go to state 439
    "default (T_DEFAULT)"            shift, and go to state 440
    "break (T_BREAK)"                shift, and go to state 441
    "continue (T_CONTINUE)"          shift, and go to state 442
    "goto (T_GOTO)"                  shift, and go to state 443
    "function (T_FUNCTION)"          shift, and go to state 444
    "const (T_CONST)"                shift, and go to state 445
    "return (T_RETURN)"              shift, and go to state 446
    "try (T_TRY)"                    shift, and go to state 447
    "catch (T_CATCH)"                shift, and go to state 448
    "finally (T_FINALLY)"            shift, and go to state 449
    "throw (T_THROW)"                shift, and go to state 450
    "use (T_USE)"                    shift, and go to state 451
    "insteadof (T_INSTEADOF)"        shift, and go to state 452
    "global (T_GLOBAL)"              shift, and go to state 453
    "var (T_VAR)"                    shift, and go to state 454
    "unset (T_UNSET)"                shift, and go to state 455
    "isset (T_ISSET)"                shift, and go to state 456
    "empty (T_EMPTY)"                shift, and go to state 457
    "class (T_CLASS)"                shift, and go to state 458
    "trait (T_TRAIT)"                shift, and go to state 459
    "interface (T_INTERFACE)"        shift, and go to state 460
    "extends (T_EXTENDS)"            shift, and go to state 461
    "implements (T_IMPLEMENTS)"      shift, and go to state 462
    "list (T_LIST)"                  shift, and go to state 463
    "array (T_ARRAY)"                shift, and go to state 464
    "callable (T_CALLABLE)"          shift, and go to state 465
    "__LINE__ (T_LINE)"              shift, and go to state 466
    "__FILE__ (T_FILE)"              shift, and go to state 467
    "__DIR__ (T_DIR)"                shift, and go to state 468
    "__CLASS__ (T_CLASS_C)"          shift, and go to state 469
    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 470
    "__METHOD__ (T_METHOD_C)"        shift, and go to state 471
    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 472
    "namespace (T_NAMESPACE)"        shift, and go to state 473
    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 474

    reserved_non_modifiers  go to state 476
    semi_reserved           go to state 477
    identifier              go to state 856
    class_const_decl        go to state 912


State 891

  248 class_statement: method_modifiers "const (T_CONST)" class_const_list ';' .

    $default  reduce using rule 248 (class_statement)


State 892

  250 class_statement: method_modifiers function returns_ref identifier . backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags

    $default  reduce using rule 378 (backup_doc_comment)

    backup_doc_comment  go to state 913


State 893

  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}' .

    $default  reduce using rule 171 (class_declaration_statement)


State 894

  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' . inner_statement_list '}' backup_fn_flags

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 914


State 895

  387 lexical_var: '&' "variable (T_VARIABLE)" .

    $default  reduce using rule 387 (lexical_var)


State 896

  384 lexical_var_list: lexical_var_list ',' . lexical_var

    '&'                      shift, and go to state 863
    "variable (T_VARIABLE)"  shift, and go to state 864

    lexical_var  go to state 915


State 897

  383 lexical_vars: "use (T_USE)" '(' lexical_var_list ')' .

    $default  reduce using rule 383 (lexical_vars)


State 898

  375 expr_without_variable: function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' . inner_statement_list '}' backup_fn_flags

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 916


State 899

  222 parameter: optional_type is_reference is_variadic "variable (T_VARIABLE)" '=' expr .
  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 222 (parameter)


State 900

  376 expr_without_variable: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' . inner_statement_list '}' backup_fn_flags

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 917


State 901

  193 for_statement: ':' inner_statement_list "endfor (T_ENDFOR)" . ';'

    ';'  shift, and go to state 918


State 902

  157 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' '{' . inner_statement_list '}'

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 919


State 903

  267 absolute_trait_method_reference: name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . identifier

    "include (T_INCLUDE)"            shift, and go to state 401
    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 402
    "eval (T_EVAL)"                  shift, and go to state 403
    "require (T_REQUIRE)"            shift, and go to state 404
    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 405
    "or (T_LOGICAL_OR)"              shift, and go to state 406
    "xor (T_LOGICAL_XOR)"            shift, and go to state 407
    "and (T_LOGICAL_AND)"            shift, and go to state 408
    "print (T_PRINT)"                shift, and go to state 409
    "yield (T_YIELD)"                shift, and go to state 410
    "instanceof (T_INSTANCEOF)"      shift, and go to state 411
    "new (T_NEW)"                    shift, and go to state 412
    "clone (T_CLONE)"                shift, and go to state 413
    "elseif (T_ELSEIF)"              shift, and go to state 414
    "else (T_ELSE)"                  shift, and go to state 415
    "endif (T_ENDIF)"                shift, and go to state 416
    "static (T_STATIC)"              shift, and go to state 417
    "abstract (T_ABSTRACT)"          shift, and go to state 418
    "final (T_FINAL)"                shift, and go to state 419
    "private (T_PRIVATE)"            shift, and go to state 420
    "protected (T_PROTECTED)"        shift, and go to state 421
    "public (T_PUBLIC)"              shift, and go to state 422
    "identifier (T_STRING)"          shift, and go to state 423
    "exit (T_EXIT)"                  shift, and go to state 424
    "if (T_IF)"                      shift, and go to state 425
    "echo (T_ECHO)"                  shift, and go to state 426
    "do (T_DO)"                      shift, and go to state 427
    "while (T_WHILE)"                shift, and go to state 428
    "endwhile (T_ENDWHILE)"          shift, and go to state 429
    "for (T_FOR)"                    shift, and go to state 430
    "endfor (T_ENDFOR)"              shift, and go to state 431
    "foreach (T_FOREACH)"            shift, and go to state 432
    "endforeach (T_ENDFOREACH)"      shift, and go to state 433
    "declare (T_DECLARE)"            shift, and go to state 434
    "enddeclare (T_ENDDECLARE)"      shift, and go to state 435
    "as (T_AS)"                      shift, and go to state 436
    "switch (T_SWITCH)"              shift, and go to state 437
    "endswitch (T_ENDSWITCH)"        shift, and go to state 438
    "case (T_CASE)"                  shift, and go to state 439
    "default (T_DEFAULT)"            shift, and go to state 440
    "break (T_BREAK)"                shift, and go to state 441
    "continue (T_CONTINUE)"          shift, and go to state 442
    "goto (T_GOTO)"                  shift, and go to state 443
    "function (T_FUNCTION)"          shift, and go to state 444
    "const (T_CONST)"                shift, and go to state 445
    "return (T_RETURN)"              shift, and go to state 446
    "try (T_TRY)"                    shift, and go to state 447
    "catch (T_CATCH)"                shift, and go to state 448
    "finally (T_FINALLY)"            shift, and go to state 449
    "throw (T_THROW)"                shift, and go to state 450
    "use (T_USE)"                    shift, and go to state 451
    "insteadof (T_INSTEADOF)"        shift, and go to state 452
    "global (T_GLOBAL)"              shift, and go to state 453
    "var (T_VAR)"                    shift, and go to state 454
    "unset (T_UNSET)"                shift, and go to state 455
    "isset (T_ISSET)"                shift, and go to state 456
    "empty (T_EMPTY)"                shift, and go to state 457
    "class (T_CLASS)"                shift, and go to state 458
    "trait (T_TRAIT)"                shift, and go to state 459
    "interface (T_INTERFACE)"        shift, and go to state 460
    "extends (T_EXTENDS)"            shift, and go to state 461
    "implements (T_IMPLEMENTS)"      shift, and go to state 462
    "list (T_LIST)"                  shift, and go to state 463
    "array (T_ARRAY)"                shift, and go to state 464
    "callable (T_CALLABLE)"          shift, and go to state 465
    "__LINE__ (T_LINE)"              shift, and go to state 466
    "__FILE__ (T_FILE)"              shift, and go to state 467
    "__DIR__ (T_DIR)"                shift, and go to state 468
    "__CLASS__ (T_CLASS_C)"          shift, and go to state 469
    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 470
    "__METHOD__ (T_METHOD_C)"        shift, and go to state 471
    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 472
    "namespace (T_NAMESPACE)"        shift, and go to state 473
    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 474

    reserved_non_modifiers  go to state 476
    semi_reserved           go to state 477
    identifier              go to state 920


State 904

  255 trait_adaptations: '{' trait_adaptation_list '}' .

    $default  reduce using rule 255 (trait_adaptations)


State 905

  257 trait_adaptation_list: trait_adaptation_list trait_adaptation .

    $default  reduce using rule 257 (trait_adaptation_list)


State 906

  258 trait_adaptation: trait_precedence ';' .

    $default  reduce using rule 258 (trait_adaptation)


State 907

  259 trait_adaptation: trait_alias ';' .

    $default  reduce using rule 259 (trait_adaptation)


State 908

  261 trait_alias: trait_method_reference "as (T_AS)" . "identifier (T_STRING)"
  262            | trait_method_reference "as (T_AS)" . reserved_non_modifiers
  263            | trait_method_reference "as (T_AS)" . member_modifier identifier
  264            | trait_method_reference "as (T_AS)" . member_modifier

    "include (T_INCLUDE)"            shift, and go to state 401
    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 402
    "eval (T_EVAL)"                  shift, and go to state 403
    "require (T_REQUIRE)"            shift, and go to state 404
    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 405
    "or (T_LOGICAL_OR)"              shift, and go to state 406
    "xor (T_LOGICAL_XOR)"            shift, and go to state 407
    "and (T_LOGICAL_AND)"            shift, and go to state 408
    "print (T_PRINT)"                shift, and go to state 409
    "yield (T_YIELD)"                shift, and go to state 410
    "instanceof (T_INSTANCEOF)"      shift, and go to state 411
    "new (T_NEW)"                    shift, and go to state 412
    "clone (T_CLONE)"                shift, and go to state 413
    "elseif (T_ELSEIF)"              shift, and go to state 414
    "else (T_ELSE)"                  shift, and go to state 415
    "endif (T_ENDIF)"                shift, and go to state 416
    "static (T_STATIC)"              shift, and go to state 771
    "abstract (T_ABSTRACT)"          shift, and go to state 772
    "final (T_FINAL)"                shift, and go to state 773
    "private (T_PRIVATE)"            shift, and go to state 774
    "protected (T_PROTECTED)"        shift, and go to state 775
    "public (T_PUBLIC)"              shift, and go to state 776
    "identifier (T_STRING)"          shift, and go to state 921
    "exit (T_EXIT)"                  shift, and go to state 424
    "if (T_IF)"                      shift, and go to state 425
    "echo (T_ECHO)"                  shift, and go to state 426
    "do (T_DO)"                      shift, and go to state 427
    "while (T_WHILE)"                shift, and go to state 428
    "endwhile (T_ENDWHILE)"          shift, and go to state 429
    "for (T_FOR)"                    shift, and go to state 430
    "endfor (T_ENDFOR)"              shift, and go to state 431
    "foreach (T_FOREACH)"            shift, and go to state 432
    "endforeach (T_ENDFOREACH)"      shift, and go to state 433
    "declare (T_DECLARE)"            shift, and go to state 434
    "enddeclare (T_ENDDECLARE)"      shift, and go to state 435
    "as (T_AS)"                      shift, and go to state 436
    "switch (T_SWITCH)"              shift, and go to state 437
    "endswitch (T_ENDSWITCH)"        shift, and go to state 438
    "case (T_CASE)"                  shift, and go to state 439
    "default (T_DEFAULT)"            shift, and go to state 440
    "break (T_BREAK)"                shift, and go to state 441
    "continue (T_CONTINUE)"          shift, and go to state 442
    "goto (T_GOTO)"                  shift, and go to state 443
    "function (T_FUNCTION)"          shift, and go to state 444
    "const (T_CONST)"                shift, and go to state 445
    "return (T_RETURN)"              shift, and go to state 446
    "try (T_TRY)"                    shift, and go to state 447
    "catch (T_CATCH)"                shift, and go to state 448
    "finally (T_FINALLY)"            shift, and go to state 449
    "throw (T_THROW)"                shift, and go to state 450
    "use (T_USE)"                    shift, and go to state 451
    "insteadof (T_INSTEADOF)"        shift, and go to state 452
    "global (T_GLOBAL)"              shift, and go to state 453
    "var (T_VAR)"                    shift, and go to state 454
    "unset (T_UNSET)"                shift, and go to state 455
    "isset (T_ISSET)"                shift, and go to state 456
    "empty (T_EMPTY)"                shift, and go to state 457
    "class (T_CLASS)"                shift, and go to state 458
    "trait (T_TRAIT)"                shift, and go to state 459
    "interface (T_INTERFACE)"        shift, and go to state 460
    "extends (T_EXTENDS)"            shift, and go to state 461
    "implements (T_IMPLEMENTS)"      shift, and go to state 462
    "list (T_LIST)"                  shift, and go to state 463
    "array (T_ARRAY)"                shift, and go to state 464
    "callable (T_CALLABLE)"          shift, and go to state 465
    "__LINE__ (T_LINE)"              shift, and go to state 466
    "__FILE__ (T_FILE)"              shift, and go to state 467
    "__DIR__ (T_DIR)"                shift, and go to state 468
    "__CLASS__ (T_CLASS_C)"          shift, and go to state 469
    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 470
    "__METHOD__ (T_METHOD_C)"        shift, and go to state 471
    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 472
    "namespace (T_NAMESPACE)"        shift, and go to state 473
    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 474

    reserved_non_modifiers  go to state 922
    member_modifier         go to state 923


State 909

  260 trait_precedence: absolute_trait_method_reference "insteadof (T_INSTEADOF)" . name_list

    "identifier (T_STRING)"    shift, and go to state 115
    "namespace (T_NAMESPACE)"  shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    namespace_name  go to state 83
    name            go to state 666
    name_list       go to state 924


State 910

  285 property: "variable (T_VARIABLE)" '=' expr backup_doc_comment .

    $default  reduce using rule 285 (property)


State 911

  288 class_const_decl: identifier '=' expr . backup_doc_comment
  322 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  323                      | expr . "&& (T_BOOLEAN_AND)" expr
  324                      | expr . "or (T_LOGICAL_OR)" expr
  325                      | expr . "and (T_LOGICAL_AND)" expr
  326                      | expr . "xor (T_LOGICAL_XOR)" expr
  327                      | expr . '|' expr
  328                      | expr . '&' expr
  329                      | expr . '^' expr
  330                      | expr . '.' expr
  331                      | expr . '+' expr
  332                      | expr . '-' expr
  333                      | expr . '*' expr
  334                      | expr . "** (T_POW)" expr
  335                      | expr . '/' expr
  336                      | expr . '%' expr
  337                      | expr . "<< (T_SL)" expr
  338                      | expr . ">> (T_SR)" expr
  343                      | expr . "=== (T_IS_IDENTICAL)" expr
  344                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  345                      | expr . "== (T_IS_EQUAL)" expr
  346                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  347                      | expr . '<' expr
  348                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  349                      | expr . '>' expr
  350                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  351                      | expr . "<=> (T_SPACESHIP)" expr
  352                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  355                      | expr . '?' expr ':' expr
  356                      | expr . '?' ':' expr
  357                      | expr . "?? (T_COALESCE)" expr

    "or (T_LOGICAL_OR)"           shift, and go to state 242
    "xor (T_LOGICAL_XOR)"         shift, and go to state 243
    "and (T_LOGICAL_AND)"         shift, and go to state 244
    '?'                           shift, and go to state 245
    "?? (T_COALESCE)"             shift, and go to state 246
    "|| (T_BOOLEAN_OR)"           shift, and go to state 247
    "&& (T_BOOLEAN_AND)"          shift, and go to state 248
    '|'                           shift, and go to state 249
    '^'                           shift, and go to state 250
    '&'                           shift, and go to state 251
    "== (T_IS_EQUAL)"             shift, and go to state 252
    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 253
    "=== (T_IS_IDENTICAL)"        shift, and go to state 254
    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 255
    "<=> (T_SPACESHIP)"           shift, and go to state 256
    '<'                           shift, and go to state 257
    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 258
    '>'                           shift, and go to state 259
    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 260
    "<< (T_SL)"                   shift, and go to state 261
    ">> (T_SR)"                   shift, and go to state 262
    '+'                           shift, and go to state 263
    '-'                           shift, and go to state 264
    '.'                           shift, and go to state 265
    '*'                           shift, and go to state 266
    '/'                           shift, and go to state 267
    '%'                           shift, and go to state 268
    "instanceof (T_INSTANCEOF)"   shift, and go to state 269
    "** (T_POW)"                  shift, and go to state 270

    $default  reduce using rule 378 (backup_doc_comment)

    backup_doc_comment  go to state 925


State 912

  286 class_const_list: class_const_list ',' class_const_decl .

    $default  reduce using rule 286 (class_const_list)


State 913

  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment . '(' parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags

    '('  shift, and go to state 926


State 914

  123 inner_statement_list: inner_statement_list . inner_statement
  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list . '}' backup_fn_flags

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 376
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '}'                                           shift, and go to state 927
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 378
    statement                        go to state 379
    function_declaration_statement   go to state 380
    class_declaration_statement      go to state 381
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 382
    interface_declaration_statement  go to state 383
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr_without_variable            go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    expr                             go to state 105
    variable_class_name              go to state 106
    dereferencable                   go to state 107
    callable_expr                    go to state 108
    callable_variable                go to state 109
    variable                         go to state 110
    simple_variable                  go to state 111
    static_member                    go to state 112
    internal_functions_in_yacc       go to state 113


State 915

  384 lexical_var_list: lexical_var_list ',' lexical_var .

    $default  reduce using rule 384 (lexical_var_list)


State 916

  123 inner_statement_list: inner_statement_list . inner_statement
  375 expr_without_variable: function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list . '}' backup_fn_flags

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 376
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '}'                                           shift, and go to state 928
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 378
    statement                        go to state 379
    function_declaration_statement   go to state 380
    class_declaration_statement      go to state 381
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 382
    interface_declaration_statement  go to state 383
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr_without_variable            go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    expr                             go to state 105
    variable_class_name              go to state 106
    dereferencable                   go to state 107
    callable_expr                    go to state 108
    callable_variable                go to state 109
    variable                         go to state 110
    simple_variable                  go to state 111
    static_member                    go to state 112
    internal_functions_in_yacc       go to state 113


State 917

  123 inner_statement_list: inner_statement_list . inner_statement
  376 expr_without_variable: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list . '}' backup_fn_flags

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 376
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '}'                                           shift, and go to state 929
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 378
    statement                        go to state 379
    function_declaration_statement   go to state 380
    class_declaration_statement      go to state 381
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 382
    interface_declaration_statement  go to state 383
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr_without_variable            go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    expr                             go to state 105
    variable_class_name              go to state 106
    dereferencable                   go to state 107
    callable_expr                    go to state 108
    callable_variable                go to state 109
    variable                         go to state 110
    simple_variable                  go to state 111
    static_member                    go to state 112
    internal_functions_in_yacc       go to state 113


State 918

  193 for_statement: ':' inner_statement_list "endfor (T_ENDFOR)" ';' .

    $default  reduce using rule 193 (for_statement)


State 919

  123 inner_statement_list: inner_statement_list . inner_statement
  157 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list . '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 376
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '}'                                           shift, and go to state 930
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 378
    statement                        go to state 379
    function_declaration_statement   go to state 380
    class_declaration_statement      go to state 381
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 382
    interface_declaration_statement  go to state 383
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr_without_variable            go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    expr                             go to state 105
    variable_class_name              go to state 106
    dereferencable                   go to state 107
    callable_expr                    go to state 108
    callable_variable                go to state 109
    variable                         go to state 110
    simple_variable                  go to state 111
    static_member                    go to state 112
    internal_functions_in_yacc       go to state 113


State 920

  267 absolute_trait_method_reference: name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier .

    $default  reduce using rule 267 (absolute_trait_method_reference)


State 921

  261 trait_alias: trait_method_reference "as (T_AS)" "identifier (T_STRING)" .

    $default  reduce using rule 261 (trait_alias)


State 922

  262 trait_alias: trait_method_reference "as (T_AS)" reserved_non_modifiers .

    $default  reduce using rule 262 (trait_alias)


State 923

  263 trait_alias: trait_method_reference "as (T_AS)" member_modifier . identifier
  264            | trait_method_reference "as (T_AS)" member_modifier .

    "include (T_INCLUDE)"            shift, and go to state 401
    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 402
    "eval (T_EVAL)"                  shift, and go to state 403
    "require (T_REQUIRE)"            shift, and go to state 404
    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 405
    "or (T_LOGICAL_OR)"              shift, and go to state 406
    "xor (T_LOGICAL_XOR)"            shift, and go to state 407
    "and (T_LOGICAL_AND)"            shift, and go to state 408
    "print (T_PRINT)"                shift, and go to state 409
    "yield (T_YIELD)"                shift, and go to state 410
    "instanceof (T_INSTANCEOF)"      shift, and go to state 411
    "new (T_NEW)"                    shift, and go to state 412
    "clone (T_CLONE)"                shift, and go to state 413
    "elseif (T_ELSEIF)"              shift, and go to state 414
    "else (T_ELSE)"                  shift, and go to state 415
    "endif (T_ENDIF)"                shift, and go to state 416
    "static (T_STATIC)"              shift, and go to state 417
    "abstract (T_ABSTRACT)"          shift, and go to state 418
    "final (T_FINAL)"                shift, and go to state 419
    "private (T_PRIVATE)"            shift, and go to state 420
    "protected (T_PROTECTED)"        shift, and go to state 421
    "public (T_PUBLIC)"              shift, and go to state 422
    "identifier (T_STRING)"          shift, and go to state 423
    "exit (T_EXIT)"                  shift, and go to state 424
    "if (T_IF)"                      shift, and go to state 425
    "echo (T_ECHO)"                  shift, and go to state 426
    "do (T_DO)"                      shift, and go to state 427
    "while (T_WHILE)"                shift, and go to state 428
    "endwhile (T_ENDWHILE)"          shift, and go to state 429
    "for (T_FOR)"                    shift, and go to state 430
    "endfor (T_ENDFOR)"              shift, and go to state 431
    "foreach (T_FOREACH)"            shift, and go to state 432
    "endforeach (T_ENDFOREACH)"      shift, and go to state 433
    "declare (T_DECLARE)"            shift, and go to state 434
    "enddeclare (T_ENDDECLARE)"      shift, and go to state 435
    "as (T_AS)"                      shift, and go to state 436
    "switch (T_SWITCH)"              shift, and go to state 437
    "endswitch (T_ENDSWITCH)"        shift, and go to state 438
    "case (T_CASE)"                  shift, and go to state 439
    "default (T_DEFAULT)"            shift, and go to state 440
    "break (T_BREAK)"                shift, and go to state 441
    "continue (T_CONTINUE)"          shift, and go to state 442
    "goto (T_GOTO)"                  shift, and go to state 443
    "function (T_FUNCTION)"          shift, and go to state 444
    "const (T_CONST)"                shift, and go to state 445
    "return (T_RETURN)"              shift, and go to state 446
    "try (T_TRY)"                    shift, and go to state 447
    "catch (T_CATCH)"                shift, and go to state 448
    "finally (T_FINALLY)"            shift, and go to state 449
    "throw (T_THROW)"                shift, and go to state 450
    "use (T_USE)"                    shift, and go to state 451
    "insteadof (T_INSTEADOF)"        shift, and go to state 452
    "global (T_GLOBAL)"              shift, and go to state 453
    "var (T_VAR)"                    shift, and go to state 454
    "unset (T_UNSET)"                shift, and go to state 455
    "isset (T_ISSET)"                shift, and go to state 456
    "empty (T_EMPTY)"                shift, and go to state 457
    "class (T_CLASS)"                shift, and go to state 458
    "trait (T_TRAIT)"                shift, and go to state 459
    "interface (T_INTERFACE)"        shift, and go to state 460
    "extends (T_EXTENDS)"            shift, and go to state 461
    "implements (T_IMPLEMENTS)"      shift, and go to state 462
    "list (T_LIST)"                  shift, and go to state 463
    "array (T_ARRAY)"                shift, and go to state 464
    "callable (T_CALLABLE)"          shift, and go to state 465
    "__LINE__ (T_LINE)"              shift, and go to state 466
    "__FILE__ (T_FILE)"              shift, and go to state 467
    "__DIR__ (T_DIR)"                shift, and go to state 468
    "__CLASS__ (T_CLASS_C)"          shift, and go to state 469
    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 470
    "__METHOD__ (T_METHOD_C)"        shift, and go to state 471
    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 472
    "namespace (T_NAMESPACE)"        shift, and go to state 473
    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 474

    $default  reduce using rule 264 (trait_alias)

    reserved_non_modifiers  go to state 476
    semi_reserved           go to state 477
    identifier              go to state 931


State 924

  252 name_list: name_list . ',' name
  260 trait_precedence: absolute_trait_method_reference "insteadof (T_INSTEADOF)" name_list .

    ','  shift, and go to state 727

    $default  reduce using rule 260 (trait_precedence)


State 925

  288 class_const_decl: identifier '=' expr backup_doc_comment .

    $default  reduce using rule 288 (class_const_decl)


State 926

  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment '(' . parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags

    '?'                        shift, and go to state 682
    "identifier (T_STRING)"    shift, and go to state 115
    "array (T_ARRAY)"          shift, and go to state 683
    "callable (T_CALLABLE)"    shift, and go to state 684
    "namespace (T_NAMESPACE)"  shift, and go to state 116
    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76

    ')'       reduce using rule 218 (parameter_list)
    $default  reduce using rule 223 (optional_type)

    namespace_name            go to state 83
    name                      go to state 685
    parameter_list            go to state 932
    non_empty_parameter_list  go to state 687
    parameter                 go to state 688
    optional_type             go to state 689
    type_expr                 go to state 690
    type                      go to state 691


State 927

  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' . backup_fn_flags

    $default  reduce using rule 379 (backup_fn_flags)

    backup_fn_flags  go to state 933


State 928

  375 expr_without_variable: function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' . backup_fn_flags

    $default  reduce using rule 379 (backup_fn_flags)

    backup_fn_flags  go to state 934


State 929

  376 expr_without_variable: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' . backup_fn_flags

    $default  reduce using rule 379 (backup_fn_flags)

    backup_fn_flags  go to state 935


State 930

  157 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list '}' .

    $default  reduce using rule 157 (catch_list)


State 931

  263 trait_alias: trait_method_reference "as (T_AS)" member_modifier identifier .

    $default  reduce using rule 263 (trait_alias)


State 932

  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment '(' parameter_list . ')' return_type backup_fn_flags method_body backup_fn_flags

    ')'  shift, and go to state 936


State 933

  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags .

    $default  reduce using rule 165 (function_declaration_statement)


State 934

  375 expr_without_variable: function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags .

    $default  reduce using rule 375 (expr_without_variable)


State 935

  376 expr_without_variable: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags .

    $default  reduce using rule 376 (expr_without_variable)


State 936

  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment '(' parameter_list ')' . return_type backup_fn_flags method_body backup_fn_flags

    ':'  shift, and go to state 828

    $default  reduce using rule 230 (return_type)

    return_type  go to state 937


State 937

  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment '(' parameter_list ')' return_type . backup_fn_flags method_body backup_fn_flags

    $default  reduce using rule 379 (backup_fn_flags)

    backup_fn_flags  go to state 938


State 938

  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags . method_body backup_fn_flags

    ';'  shift, and go to state 939
    '{'  shift, and go to state 940

    method_body  go to state 941


State 939

  268 method_body: ';' .

    $default  reduce using rule 268 (method_body)


State 940

  269 method_body: '{' . inner_statement_list '}'

    $default  reduce using rule 124 (inner_statement_list)

    inner_statement_list  go to state 942


State 941

  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags method_body . backup_fn_flags

    $default  reduce using rule 379 (backup_fn_flags)

    backup_fn_flags  go to state 943


State 942

  123 inner_statement_list: inner_statement_list . inner_statement
  269 method_body: '{' inner_statement_list . '}'

    "include (T_INCLUDE)"                         shift, and go to state 4
    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
    "eval (T_EVAL)"                               shift, and go to state 6
    "require (T_REQUIRE)"                         shift, and go to state 7
    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
    "print (T_PRINT)"                             shift, and go to state 9
    "yield (T_YIELD)"                             shift, and go to state 10
    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
    '+'                                           shift, and go to state 12
    '-'                                           shift, and go to state 13
    '!'                                           shift, and go to state 14
    '~'                                           shift, and go to state 15
    "++ (T_INC)"                                  shift, and go to state 16
    "-- (T_DEC)"                                  shift, and go to state 17
    "(int) (T_INT_CAST)"                          shift, and go to state 18
    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
    "(string) (T_STRING_CAST)"                    shift, and go to state 20
    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
    '@'                                           shift, and go to state 25
    '['                                           shift, and go to state 26
    "new (T_NEW)"                                 shift, and go to state 27
    "clone (T_CLONE)"                             shift, and go to state 28
    "static (T_STATIC)"                           shift, and go to state 29
    "abstract (T_ABSTRACT)"                       shift, and go to state 30
    "final (T_FINAL)"                             shift, and go to state 31
    "integer number (T_LNUMBER)"                  shift, and go to state 32
    "floating-point number (T_DNUMBER)"           shift, and go to state 33
    "identifier (T_STRING)"                       shift, and go to state 34
    "variable (T_VARIABLE)"                       shift, and go to state 35
    T_INLINE_HTML                                 shift, and go to state 36
    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
    "exit (T_EXIT)"                               shift, and go to state 38
    "if (T_IF)"                                   shift, and go to state 39
    "echo (T_ECHO)"                               shift, and go to state 40
    "do (T_DO)"                                   shift, and go to state 41
    "while (T_WHILE)"                             shift, and go to state 42
    "for (T_FOR)"                                 shift, and go to state 43
    "foreach (T_FOREACH)"                         shift, and go to state 44
    "declare (T_DECLARE)"                         shift, and go to state 45
    "switch (T_SWITCH)"                           shift, and go to state 46
    "break (T_BREAK)"                             shift, and go to state 47
    "continue (T_CONTINUE)"                       shift, and go to state 48
    "goto (T_GOTO)"                               shift, and go to state 49
    "function (T_FUNCTION)"                       shift, and go to state 50
    "return (T_RETURN)"                           shift, and go to state 52
    "try (T_TRY)"                                 shift, and go to state 53
    "throw (T_THROW)"                             shift, and go to state 54
    "global (T_GLOBAL)"                           shift, and go to state 56
    "unset (T_UNSET)"                             shift, and go to state 57
    "isset (T_ISSET)"                             shift, and go to state 58
    "empty (T_EMPTY)"                             shift, and go to state 59
    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 376
    "class (T_CLASS)"                             shift, and go to state 61
    "trait (T_TRAIT)"                             shift, and go to state 62
    "interface (T_INTERFACE)"                     shift, and go to state 63
    "list (T_LIST)"                               shift, and go to state 64
    "array (T_ARRAY)"                             shift, and go to state 65
    "__LINE__ (T_LINE)"                           shift, and go to state 66
    "__FILE__ (T_FILE)"                           shift, and go to state 67
    "__DIR__ (T_DIR)"                             shift, and go to state 68
    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
    "namespace (T_NAMESPACE)"                     shift, and go to state 116
    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
    '('                                           shift, and go to state 77
    ';'                                           shift, and go to state 78
    '{'                                           shift, and go to state 79
    '}'                                           shift, and go to state 944
    '`'                                           shift, and go to state 80
    '"'                                           shift, and go to state 81
    '$'                                           shift, and go to state 82

    namespace_name                   go to state 83
    name                             go to state 84
    inner_statement                  go to state 378
    statement                        go to state 379
    function_declaration_statement   go to state 380
    class_declaration_statement      go to state 381
    class_modifiers                  go to state 89
    class_modifier                   go to state 90
    trait_declaration_statement      go to state 382
    interface_declaration_statement  go to state 383
    if_stmt_without_else             go to state 93
    if_stmt                          go to state 94
    alt_if_stmt_without_else         go to state 95
    alt_if_stmt                      go to state 96
    new_expr                         go to state 97
    expr_without_variable            go to state 98
    function                         go to state 99
    function_call                    go to state 100
    class_name                       go to state 101
    dereferencable_scalar            go to state 102
    scalar                           go to state 103
    constant                         go to state 104
    expr                             go to state 105
    variable_class_name              go to state 106
    dereferencable                   go to state 107
    callable_expr                    go to state 108
    callable_variable                go to state 109
    variable                         go to state 110
    simple_variable                  go to state 111
    static_member                    go to state 112
    internal_functions_in_yacc       go to state 113


State 943

  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags .

    $default  reduce using rule 250 (class_statement)


State 944

  269 method_body: '{' inner_statement_list '}' .

    $default  reduce using rule 269 (method_body)