zend_language_parser.output   [plain text]


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 '}'
  104                      | "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations '}'

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

  107 inline_use_declarations: inline_use_declarations ',' inline_use_declaration
  108                        | inline_use_declaration

  109 unprefixed_use_declarations: unprefixed_use_declarations ',' unprefixed_use_declaration
  110                            | unprefixed_use_declaration

  111 use_declarations: use_declarations ',' use_declaration
  112                 | use_declaration

  113 inline_use_declaration: unprefixed_use_declaration
  114                       | use_type unprefixed_use_declaration

  115 unprefixed_use_declaration: namespace_name
  116                           | namespace_name "as (T_AS)" "identifier (T_STRING)"

  117 use_declaration: unprefixed_use_declaration
  118                | "\\ (T_NS_SEPARATOR)" unprefixed_use_declaration

  119 const_list: const_list ',' const_decl
  120           | const_decl

  121 inner_statement_list: inner_statement_list inner_statement
  122                     | %empty

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

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

  147 $@3: %empty

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

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

  156 catch_name_list: name
  157                | catch_name_list '|' name

  158 finally_statement: %empty
  159                  | "finally (T_FINALLY)" '{' inner_statement_list '}'

  160 unset_variables: unset_variable
  161                | unset_variables ',' unset_variable

  162 unset_variable: variable

  163 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

  164 is_reference: %empty
  165             | '&'

  166 is_variadic: %empty
  167            | "... (T_ELLIPSIS)"

  168 @4: %empty

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

  170 @5: %empty

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

  172 class_modifiers: class_modifier
  173                | class_modifiers class_modifier

  174 class_modifier: "abstract (T_ABSTRACT)"
  175               | "final (T_FINAL)"

  176 @6: %empty

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

  178 @7: %empty

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

  180 extends_from: %empty
  181             | "extends (T_EXTENDS)" name

  182 interface_extends_list: %empty
  183                       | "extends (T_EXTENDS)" name_list

  184 implements_list: %empty
  185                | "implements (T_IMPLEMENTS)" name_list

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

  190 for_statement: statement
  191              | ':' inner_statement_list "endfor (T_ENDFOR)" ';'

  192 foreach_statement: statement
  193                  | ':' inner_statement_list "endforeach (T_ENDFOREACH)" ';'

  194 declare_statement: statement
  195                  | ':' inner_statement_list "enddeclare (T_ENDDECLARE)" ';'

  196 switch_case_list: '{' case_list '}'
  197                 | '{' ';' case_list '}'
  198                 | ':' case_list "endswitch (T_ENDSWITCH)" ';'
  199                 | ':' ';' case_list "endswitch (T_ENDSWITCH)" ';'

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

  203 case_separator: ':'
  204               | ';'

  205 while_statement: statement
  206                | ':' inner_statement_list "endwhile (T_ENDWHILE)" ';'

  207 if_stmt_without_else: "if (T_IF)" '(' expr ')' statement
  208                     | if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' statement

  209 if_stmt: if_stmt_without_else
  210        | if_stmt_without_else "else (T_ELSE)" statement

  211 alt_if_stmt_without_else: "if (T_IF)" '(' expr ')' ':' inner_statement_list
  212                         | alt_if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' ':' inner_statement_list

  213 alt_if_stmt: alt_if_stmt_without_else "endif (T_ENDIF)" ';'
  214            | alt_if_stmt_without_else "else (T_ELSE)" ':' inner_statement_list "endif (T_ENDIF)" ';'

  215 parameter_list: non_empty_parameter_list
  216               | %empty

  217 non_empty_parameter_list: parameter
  218                         | non_empty_parameter_list ',' parameter

  219 parameter: optional_type is_reference is_variadic "variable (T_VARIABLE)"
  220          | optional_type is_reference is_variadic "variable (T_VARIABLE)" '=' expr

  221 optional_type: %empty
  222              | type_expr

  223 type_expr: type
  224          | '?' type

  225 type: "array (T_ARRAY)"
  226     | "callable (T_CALLABLE)"
  227     | name

  228 return_type: %empty
  229            | ':' type_expr

  230 argument_list: '(' ')'
  231              | '(' non_empty_argument_list ')'

  232 non_empty_argument_list: argument
  233                        | non_empty_argument_list ',' argument

  234 argument: expr
  235         | "... (T_ELLIPSIS)" expr

  236 global_var_list: global_var_list ',' global_var
  237                | global_var

  238 global_var: simple_variable

  239 static_var_list: static_var_list ',' static_var
  240                | static_var

  241 static_var: "variable (T_VARIABLE)"
  242           | "variable (T_VARIABLE)" '=' expr

  243 class_statement_list: class_statement_list class_statement
  244                     | %empty

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

  249 name_list: name
  250          | name_list ',' name

  251 trait_adaptations: ';'
  252                  | '{' '}'
  253                  | '{' trait_adaptation_list '}'

  254 trait_adaptation_list: trait_adaptation
  255                      | trait_adaptation_list trait_adaptation

  256 trait_adaptation: trait_precedence ';'
  257                 | trait_alias ';'

  258 trait_precedence: absolute_trait_method_reference "insteadof (T_INSTEADOF)" name_list

  259 trait_alias: trait_method_reference "as (T_AS)" "identifier (T_STRING)"
  260            | trait_method_reference "as (T_AS)" reserved_non_modifiers
  261            | trait_method_reference "as (T_AS)" member_modifier identifier
  262            | trait_method_reference "as (T_AS)" member_modifier

  263 trait_method_reference: identifier
  264                       | absolute_trait_method_reference

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

  266 method_body: ';'
  267            | '{' inner_statement_list '}'

  268 variable_modifiers: non_empty_member_modifiers
  269                   | "var (T_VAR)"

  270 method_modifiers: %empty
  271                 | non_empty_member_modifiers

  272 non_empty_member_modifiers: member_modifier
  273                           | non_empty_member_modifiers member_modifier

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

  280 property_list: property_list ',' property
  281              | property

  282 property: "variable (T_VARIABLE)" backup_doc_comment
  283         | "variable (T_VARIABLE)" '=' expr backup_doc_comment

  284 class_const_list: class_const_list ',' class_const_decl
  285                 | class_const_decl

  286 class_const_decl: identifier '=' expr backup_doc_comment

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

  288 echo_expr_list: echo_expr_list ',' echo_expr
  289               | echo_expr

  290 echo_expr: expr

  291 for_exprs: %empty
  292          | non_empty_for_exprs

  293 non_empty_for_exprs: non_empty_for_exprs ',' expr
  294                    | expr

  295 @8: %empty

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

  297 new_expr: "new (T_NEW)" class_name_reference ctor_arguments
  298         | "new (T_NEW)" anonymous_class

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

  375 function: "function (T_FUNCTION)"

  376 backup_doc_comment: %empty

  377 backup_fn_flags: %empty

  378 returns_ref: %empty
  379            | '&'

  380 lexical_vars: %empty
  381             | "use (T_USE)" '(' lexical_var_list ')'

  382 lexical_var_list: lexical_var_list ',' lexical_var
  383                 | lexical_var

  384 lexical_var: "variable (T_VARIABLE)"
  385            | '&' "variable (T_VARIABLE)"

  386 function_call: name argument_list
  387              | class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list
  388              | variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list
  389              | callable_expr argument_list

  390 class_name: "static (T_STATIC)"
  391           | name

  392 class_name_reference: class_name
  393                     | new_variable

  394 exit_expr: %empty
  395          | '(' optional_expr ')'

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

  399 ctor_arguments: %empty
  400               | argument_list

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

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

  420 constant: name
  421         | class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier
  422         | variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier

  423 expr: variable
  424     | expr_without_variable

  425 optional_expr: %empty
  426              | expr

  427 variable_class_name: dereferencable

  428 dereferencable: variable
  429               | '(' expr ')'
  430               | dereferencable_scalar

  431 callable_expr: callable_variable
  432              | '(' expr ')'
  433              | dereferencable_scalar

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

  440 variable: callable_variable
  441         | static_member
  442         | dereferencable "-> (T_OBJECT_OPERATOR)" property_name

  443 simple_variable: "variable (T_VARIABLE)"
  444                | '$' '{' expr '}'
  445                | '$' simple_variable

  446 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable
  447              | variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable

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

  454 member_name: identifier
  455            | '{' expr '}'
  456            | simple_variable

  457 property_name: "identifier (T_STRING)"
  458              | '{' expr '}'
  459              | simple_variable

  460 array_pair_list: non_empty_array_pair_list

  461 possible_array_pair: %empty
  462                    | array_pair

  463 non_empty_array_pair_list: non_empty_array_pair_list ',' possible_array_pair
  464                          | possible_array_pair

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

  471 encaps_list: encaps_list encaps_var
  472            | encaps_list "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"
  473            | encaps_var
  474            | "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" encaps_var

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

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

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

  493 isset_variables: isset_variable
  494                | isset_variables ',' isset_variable

  495 isset_variable: expr


Terminals, with rules where they appear

"end of file" (0) 0
'!' (33) 339
'"' (34) 416
'$' (36) 444 445
'%' (37) 334
'&' (38) 165 187 302 326 379 385 467 468
'(' (40) 90 128 132 133 134 135 144 145 146 148 155 163 188 207 208
    211 212 230 231 248 299 351 373 374 381 395 401 429 432 469 470
    486 487 490
')' (41) 90 128 132 133 134 135 144 145 146 148 155 163 188 207 208
    211 212 230 231 248 299 351 373 374 381 395 401 429 432 469 470
    486 487 490
'*' (42) 331
'+' (43) 329 337
',' (44) 107 109 111 119 161 218 233 236 239 250 280 284 288 293 382
    463 494
'-' (45) 330 338 484
'.' (46) 328
'/' (47) 333
':' (58) 153 191 193 195 198 199 203 206 211 212 214 229 353 354
';' (59) 90 91 96 97 98 99 100 128 133 134 136 137 138 139 140 141
    143 144 149 151 152 191 193 195 197 198 199 204 206 213 214 245
    246 251 256 257 266
'<' (60) 345
'=' (61) 220 242 283 286 287 299 300 301 302
'>' (62) 347
'?' (63) 224 353 354
'@' (64) 365
'[' (91) 189 300 402 435 436 449 476 480
']' (93) 189 300 402 435 436 449 476 480
'^' (94) 327
'`' (96) 367
'{' (123) 93 95 103 104 105 106 129 150 155 159 163 169 171 177 179
    196 197 252 253 267 296 373 374 437 444 450 455 458
'|' (124) 157 325
'}' (125) 93 95 103 104 105 106 129 150 155 159 163 169 171 177 179
    196 197 252 253 267 296 373 374 437 444 450 455 458 478 479 480
    481
'~' (126) 340
error (256)
"include (T_INCLUDE)" (258) 2 488
"include_once (T_INCLUDE_ONCE)" (259) 3 489
"eval (T_EVAL)" (260) 4 490
"require (T_REQUIRE)" (261) 5 491
"require_once (T_REQUIRE_ONCE)" (262) 6 492
"or (T_LOGICAL_OR)" (263) 7 322
"xor (T_LOGICAL_XOR)" (264) 8 324
"and (T_LOGICAL_AND)" (265) 9 323
"print (T_PRINT)" (266) 45 368
"yield (T_YIELD)" (267) 46 369 370 371
"=> (T_DOUBLE_ARROW)" (268) 146 371 465 467 469
"yield from (T_YIELD_FROM)" (269) 372
"+= (T_PLUS_EQUAL)" (270) 304
"-= (T_MINUS_EQUAL)" (271) 305
"*= (T_MUL_EQUAL)" (272) 306
"/= (T_DIV_EQUAL)" (273) 308
".= (T_CONCAT_EQUAL)" (274) 309
"%= (T_MOD_EQUAL)" (275) 310
"&= (T_AND_EQUAL)" (276) 311
"|= (T_OR_EQUAL)" (277) 312
"^= (T_XOR_EQUAL)" (278) 313
"<<= (T_SL_EQUAL)" (279) 314
">>= (T_SR_EQUAL)" (280) 315
"**= (T_POW_EQUAL)" (281) 307
"?? (T_COALESCE)" (282) 355
"|| (T_BOOLEAN_OR)" (283) 320
"&& (T_BOOLEAN_AND)" (284) 321
"== (T_IS_EQUAL)" (285) 343
"!= (T_IS_NOT_EQUAL)" (286) 344
"=== (T_IS_IDENTICAL)" (287) 341
"!== (T_IS_NOT_IDENTICAL)" (288) 342
"<=> (T_SPACESHIP)" (289) 349
"<= (T_IS_SMALLER_OR_EQUAL)" (290) 346
">= (T_IS_GREATER_OR_EQUAL)" (291) 348
"<< (T_SL)" (292) 335
">> (T_SR)" (293) 336
"instanceof (T_INSTANCEOF)" (294) 10 350
"++ (T_INC)" (295) 316 317
"-- (T_DEC)" (296) 318 319
"(int) (T_INT_CAST)" (297) 357
"(double) (T_DOUBLE_CAST)" (298) 358
"(string) (T_STRING_CAST)" (299) 359
"(array) (T_ARRAY_CAST)" (300) 360
"(object) (T_OBJECT_CAST)" (301) 361
"(bool) (T_BOOL_CAST)" (302) 362
"(unset) (T_UNSET_CAST)" (303) 363
"** (T_POW)" (304) 332
"new (T_NEW)" (305) 11 297 298
"clone (T_CLONE)" (306) 12 303
T_NOELSE (307)
"elseif (T_ELSEIF)" (308) 15 208 212
"else (T_ELSE)" (309) 16 210 214
"endif (T_ENDIF)" (310) 17 213 214
"static (T_STATIC)" (311) 70 140 277 374 390
"abstract (T_ABSTRACT)" (312) 71 174 278
"final (T_FINAL)" (313) 72 175 279
"private (T_PRIVATE)" (314) 73 276
"protected (T_PROTECTED)" (315) 74 275
"public (T_PUBLIC)" (316) 75 274
"integer number (T_LNUMBER)" (317) 404
"floating-point number (T_DNUMBER)" (318) 405
"identifier (T_STRING)" (319) 76 80 81 116 152 153 163 169 171 177
    179 259 287 457 477 482
"variable (T_VARIABLE)" (320) 155 219 220 241 242 282 283 384 385 443
    475 476 477 485
T_INLINE_HTML (321) 142
"quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" (322) 397
    414 472 474
"quoted-string (T_CONSTANT_ENCAPSED_STRING)" (323) 403
"variable name (T_STRING_VARNAME)" (324) 479 480
"number (T_NUM_STRING)" (325) 483 484
"exit (T_EXIT)" (326) 13 364
"if (T_IF)" (327) 14 207 211
"echo (T_ECHO)" (328) 18 141
"do (T_DO)" (329) 19 133
"while (T_WHILE)" (330) 20 132 133
"endwhile (T_ENDWHILE)" (331) 21 206
"for (T_FOR)" (332) 22 134
"endfor (T_ENDFOR)" (333) 23 191
"foreach (T_FOREACH)" (334) 24 145 146
"endforeach (T_ENDFOREACH)" (335) 25 193
"declare (T_DECLARE)" (336) 26 148
"enddeclare (T_ENDDECLARE)" (337) 27 195
"as (T_AS)" (338) 28 116 145 146 259 260 261 262
"switch (T_SWITCH)" (339) 48 135
"endswitch (T_ENDSWITCH)" (340) 49 198 199
"case (T_CASE)" (341) 50 201
"default (T_DEFAULT)" (342) 51 202
"break (T_BREAK)" (343) 52 136
"continue (T_CONTINUE)" (344) 40 137
"goto (T_GOTO)" (345) 41 152
"function (T_FUNCTION)" (346) 42 101 375
"const (T_CONST)" (347) 43 100 102 246
"return (T_RETURN)" (348) 44 138
"try (T_TRY)" (349) 29 150
"catch (T_CATCH)" (350) 30 155
"finally (T_FINALLY)" (351) 31 159
"throw (T_THROW)" (352) 32 151
"use (T_USE)" (353) 33 96 97 98 99 247 381
"insteadof (T_INSTEADOF)" (354) 34 258
"global (T_GLOBAL)" (355) 35 139
"var (T_VAR)" (356) 36 269
"unset (T_UNSET)" (357) 37 144
"isset (T_ISSET)" (358) 38 486
"empty (T_EMPTY)" (359) 39 487
"__halt_compiler (T_HALT_COMPILER)" (360) 90 128
"class (T_CLASS)" (361) 60 169 171 296
"trait (T_TRAIT)" (362) 58 177
"interface (T_INTERFACE)" (363) 59 179
"extends (T_EXTENDS)" (364) 55 181 183
"implements (T_IMPLEMENTS)" (365) 56 185
"-> (T_OBJECT_OPERATOR)" (366) 438 442 451 477
"list (T_LIST)" (367) 47 188 299 469 470
"array (T_ARRAY)" (368) 53 225 401
"callable (T_CALLABLE)" (369) 54 226
"__LINE__ (T_LINE)" (370) 65 406
"__FILE__ (T_FILE)" (371) 66 407
"__DIR__ (T_DIR)" (372) 67 408
"__CLASS__ (T_CLASS_C)" (373) 61 413
"__TRAIT__ (T_TRAIT_C)" (374) 62 409
"__METHOD__ (T_METHOD_C)" (375) 64 410
"__FUNCTION__ (T_FUNC_C)" (376) 63 411
"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) 414 415 417
"heredoc end (T_END_HEREDOC)" (384) 414 415 417
"${ (T_DOLLAR_OPEN_CURLY_BRACES)" (385) 478 479 480
"{$ (T_CURLY_OPEN)" (386) 481
":: (T_PAAMAYIM_NEKUDOTAYIM)" (387) 265 387 388 421 422 446 447 452
    453
"namespace (T_NAMESPACE)" (388) 57 83 91 93 95
"__NAMESPACE__ (T_NS_C)" (389) 68 412
"\\ (T_NS_SEPARATOR)" (390) 81 83 84 103 104 105 106 118
"... (T_ELLIPSIS)" (391) 167 235
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 260
semi_reserved (169)
    on left: 69 70 71 72 73 74 75, on right: 77
identifier (170)
    on left: 76 77, on right: 248 261 263 265 286 421 422 454
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 115
    116
name (173)
    on left: 82 83 84, on right: 156 157 181 227 249 250 265 386 391
    420
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 114
group_use_declaration (178)
    on left: 103 104, on right: 97
mixed_group_use_declaration (179)
    on left: 105 106, on right: 96
inline_use_declarations (180)
    on left: 107 108, on right: 105 106 107
unprefixed_use_declarations (181)
    on left: 109 110, on right: 103 104 109
use_declarations (182)
    on left: 111 112, on right: 98 99 111
inline_use_declaration (183)
    on left: 113 114, on right: 107 108
unprefixed_use_declaration (184)
    on left: 115 116, on right: 109 110 113 114 117 118
use_declaration (185)
    on left: 117 118, on right: 111 112
const_list (186)
    on left: 119 120, on right: 100 119 148
inner_statement_list (187)
    on left: 121 122, on right: 121 129 150 155 159 163 191 193 195
    201 202 206 211 212 214 267 373 374
inner_statement (188)
    on left: 123 124 125 126 127 128, on right: 121
statement (189)
    on left: 129 130 131 132 133 134 135 136 137 138 139 140 141 142
    143 144 145 146 148 149 150 151 152 153, on right: 85 123 133 190
    192 194 205 207 208 210
$@3 (190)
    on left: 147, on right: 148
catch_list (191)
    on left: 154 155, on right: 150 155
catch_name_list (192)
    on left: 156 157, on right: 155 157
finally_statement (193)
    on left: 158 159, on right: 150
unset_variables (194)
    on left: 160 161, on right: 144 161
unset_variable (195)
    on left: 162, on right: 160 161
function_declaration_statement (196)
    on left: 163, on right: 86 124
is_reference (197)
    on left: 164 165, on right: 219 220
is_variadic (198)
    on left: 166 167, on right: 219 220
class_declaration_statement (199)
    on left: 169 171, on right: 87 125
@4 (200)
    on left: 168, on right: 169
@5 (201)
    on left: 170, on right: 171
class_modifiers (202)
    on left: 172 173, on right: 169 173
class_modifier (203)
    on left: 174 175, on right: 172 173
trait_declaration_statement (204)
    on left: 177, on right: 88 126
@6 (205)
    on left: 176, on right: 177
interface_declaration_statement (206)
    on left: 179, on right: 89 127
@7 (207)
    on left: 178, on right: 179
extends_from (208)
    on left: 180 181, on right: 169 171 296
interface_extends_list (209)
    on left: 182 183, on right: 179
implements_list (210)
    on left: 184 185, on right: 169 171 296
foreach_variable (211)
    on left: 186 187 188 189, on right: 145 146
for_statement (212)
    on left: 190 191, on right: 134
foreach_statement (213)
    on left: 192 193, on right: 145 146
declare_statement (214)
    on left: 194 195, on right: 148
switch_case_list (215)
    on left: 196 197 198 199, on right: 135
case_list (216)
    on left: 200 201 202, on right: 196 197 198 199 201 202
case_separator (217)
    on left: 203 204, on right: 201 202
while_statement (218)
    on left: 205 206, on right: 132
if_stmt_without_else (219)
    on left: 207 208, on right: 208 209 210
if_stmt (220)
    on left: 209 210, on right: 130
alt_if_stmt_without_else (221)
    on left: 211 212, on right: 212 213 214
alt_if_stmt (222)
    on left: 213 214, on right: 131
parameter_list (223)
    on left: 215 216, on right: 163 248 373 374
non_empty_parameter_list (224)
    on left: 217 218, on right: 215 218
parameter (225)
    on left: 219 220, on right: 217 218
optional_type (226)
    on left: 221 222, on right: 219 220
type_expr (227)
    on left: 223 224, on right: 222 229
type (228)
    on left: 225 226 227, on right: 223 224
return_type (229)
    on left: 228 229, on right: 163 248 373 374
argument_list (230)
    on left: 230 231, on right: 386 387 388 389 400 438
non_empty_argument_list (231)
    on left: 232 233, on right: 231 233
argument (232)
    on left: 234 235, on right: 232 233
global_var_list (233)
    on left: 236 237, on right: 139 236
global_var (234)
    on left: 238, on right: 236 237
static_var_list (235)
    on left: 239 240, on right: 140 239
static_var (236)
    on left: 241 242, on right: 239 240
class_statement_list (237)
    on left: 243 244, on right: 169 171 177 179 243 296
class_statement (238)
    on left: 245 246 247 248, on right: 243
name_list (239)
    on left: 249 250, on right: 183 185 247 250 258
trait_adaptations (240)
    on left: 251 252 253, on right: 247
trait_adaptation_list (241)
    on left: 254 255, on right: 253 255
trait_adaptation (242)
    on left: 256 257, on right: 254 255
trait_precedence (243)
    on left: 258, on right: 256
trait_alias (244)
    on left: 259 260 261 262, on right: 257
trait_method_reference (245)
    on left: 263 264, on right: 259 260 261 262
absolute_trait_method_reference (246)
    on left: 265, on right: 258 264
method_body (247)
    on left: 266 267, on right: 248
variable_modifiers (248)
    on left: 268 269, on right: 245
method_modifiers (249)
    on left: 270 271, on right: 246 248
non_empty_member_modifiers (250)
    on left: 272 273, on right: 268 271 273
member_modifier (251)
    on left: 274 275 276 277 278 279, on right: 261 262 272 273
property_list (252)
    on left: 280 281, on right: 245 280
property (253)
    on left: 282 283, on right: 280 281
class_const_list (254)
    on left: 284 285, on right: 246 284
class_const_decl (255)
    on left: 286, on right: 284 285
const_decl (256)
    on left: 287, on right: 119 120
echo_expr_list (257)
    on left: 288 289, on right: 141 288
echo_expr (258)
    on left: 290, on right: 288 289
for_exprs (259)
    on left: 291 292, on right: 134
non_empty_for_exprs (260)
    on left: 293 294, on right: 292 293
anonymous_class (261)
    on left: 296, on right: 298
@8 (262)
    on left: 295, on right: 296
new_expr (263)
    on left: 297 298, on right: 352
expr_without_variable (264)
    on left: 299 300 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, on right:
    424
function (265)
    on left: 375, on right: 163 248 373 374
backup_doc_comment (266)
    on left: 376, on right: 163 169 171 177 179 248 282 283 286 287
    296 373 374
backup_fn_flags (267)
    on left: 377, on right: 163 248 373 374
returns_ref (268)
    on left: 378 379, on right: 163 248 373 374
lexical_vars (269)
    on left: 380 381, on right: 373 374
lexical_var_list (270)
    on left: 382 383, on right: 381 382
lexical_var (271)
    on left: 384 385, on right: 382 383
function_call (272)
    on left: 386 387 388 389, on right: 439
class_name (273)
    on left: 390 391, on right: 387 392 421 446 452
class_name_reference (274)
    on left: 392 393, on right: 297 350
exit_expr (275)
    on left: 394 395, on right: 364
backticks_expr (276)
    on left: 396 397 398, on right: 367
ctor_arguments (277)
    on left: 399 400, on right: 296 297
dereferencable_scalar (278)
    on left: 401 402 403, on right: 418 430 433
scalar (279)
    on left: 404 405 406 407 408 409 410 411 412 413 414 415 416 417
    418 419, on right: 366
constant (280)
    on left: 420 421 422, on right: 419 436
expr (281)
    on left: 423 424, on right: 132 133 135 143 145 146 151 201 207
    208 211 212 220 234 235 242 283 286 287 290 293 294 299 300 301
    303 304 305 306 307 308 309 310 311 312 313 314 315 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 353 354 355
    357 358 359 360 361 362 363 365 368 370 371 372 426 429 432 437
    444 450 455 458 465 466 467 469 478 480 487 488 489 490 491 492
    495
optional_expr (282)
    on left: 425 426, on right: 136 137 138 395 435 436 449
variable_class_name (283)
    on left: 427, on right: 388 422 447
dereferencable (284)
    on left: 428 429 430, on right: 427 435 437 438 442
callable_expr (285)
    on left: 431 432 433, on right: 389
callable_variable (286)
    on left: 434 435 436 437 438 439, on right: 431 440
variable (287)
    on left: 440 441 442, on right: 162 186 187 301 302 304 305 306
    307 308 309 310 311 312 313 314 315 316 317 318 319 423 428 467
    468 481
simple_variable (288)
    on left: 443 444 445, on right: 238 434 445 446 447 448 452 453
    456 459
static_member (289)
    on left: 446 447, on right: 441
new_variable (290)
    on left: 448 449 450 451 452 453, on right: 393 449 450 451 453
member_name (291)
    on left: 454 455 456, on right: 387 388
property_name (292)
    on left: 457 458 459, on right: 438 442 451
array_pair_list (293)
    on left: 460, on right: 188 189 299 300 401 402 469 470
possible_array_pair (294)
    on left: 461 462, on right: 463 464
non_empty_array_pair_list (295)
    on left: 463 464, on right: 460 463
array_pair (296)
    on left: 465 466 467 468 469 470, on right: 462
encaps_list (297)
    on left: 471 472 473 474, on right: 398 416 417 471 472
encaps_var (298)
    on left: 475 476 477 478 479 480 481, on right: 471 473 474
encaps_var_offset (299)
    on left: 482 483 484 485, on right: 476
internal_functions_in_yacc (300)
    on left: 486 487 488 489 490 491 492, on right: 356
isset_variables (301)
    on left: 493 494, on right: 486 494
isset_variable (302)
    on left: 495, on right: 493 494


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

  488 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

  489 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

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

    '('  shift, and go to state 120


State 7

  491 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

  492 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

  368 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

  369 expr_without_variable: "yield (T_YIELD)" .
  370                      | "yield (T_YIELD)" . expr
  371                      | "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 369 (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

  372 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

  337 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

  338 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

  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 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

  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 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

  317 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

  319 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

  357 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

  358 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

  359 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

  360 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

  361 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

  362 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

  363 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

  365 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

  300 expr_without_variable: '[' . array_pair_list ']' '=' expr
  402 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 461 (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

  297 new_expr: "new (T_NEW)" . class_name_reference ctor_arguments
  298         | "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

  303 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

  140 statement: "static (T_STATIC)" . static_var_list ';'
  374 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
  390 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 390 (class_name)

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


State 30

  174 class_modifier: "abstract (T_ABSTRACT)" .

    $default  reduce using rule 174 (class_modifier)


State 31

  175 class_modifier: "final (T_FINAL)" .

    $default  reduce using rule 175 (class_modifier)


State 32

  404 scalar: "integer number (T_LNUMBER)" .

    $default  reduce using rule 404 (scalar)


State 33

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

    $default  reduce using rule 405 (scalar)


State 34

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

    ':'  shift, and go to state 164

    $default  reduce using rule 80 (namespace_name)


State 35

  443 simple_variable: "variable (T_VARIABLE)" .

    $default  reduce using rule 443 (simple_variable)


State 36

  142 statement: T_INLINE_HTML .

    $default  reduce using rule 142 (statement)


State 37

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

    $default  reduce using rule 403 (dereferencable_scalar)


State 38

  364 expr_without_variable: "exit (T_EXIT)" . exit_expr

    '('  shift, and go to state 165

    $default  reduce using rule 394 (exit_expr)

    exit_expr  go to state 166


State 39

  207 if_stmt_without_else: "if (T_IF)" . '(' expr ')' statement
  211 alt_if_stmt_without_else: "if (T_IF)" . '(' expr ')' ':' inner_statement_list

    '('  shift, and go to state 167


State 40

  141 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

  133 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

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

    '('  shift, and go to state 172


State 43

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

    '('  shift, and go to state 173


State 44

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

    '('  shift, and go to state 174


State 45

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

    '('  shift, and go to state 175


State 46

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

    '('  shift, and go to state 176


State 47

  136 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 425 (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

  137 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 425 (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

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

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


State 50

  375 function: "function (T_FUNCTION)" .

    $default  reduce using rule 375 (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

  138 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 425 (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

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

    '{'  shift, and go to state 185


State 54

  151 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

  139 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

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

    '('  shift, and go to state 199


State 58

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

    '('  shift, and go to state 200


State 59

  487 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

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

    $default  reduce using rule 170 (@5)

    @5  go to state 203


State 62

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

    $default  reduce using rule 176 (@6)

    @6  go to state 204


State 63

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

    $default  reduce using rule 178 (@7)

    @7  go to state 205


State 64

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

    '('  shift, and go to state 206


State 65

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

    '('  shift, and go to state 207


State 66

  406 scalar: "__LINE__ (T_LINE)" .

    $default  reduce using rule 406 (scalar)


State 67

  407 scalar: "__FILE__ (T_FILE)" .

    $default  reduce using rule 407 (scalar)


State 68

  408 scalar: "__DIR__ (T_DIR)" .

    $default  reduce using rule 408 (scalar)


State 69

  413 scalar: "__CLASS__ (T_CLASS_C)" .

    $default  reduce using rule 413 (scalar)


State 70

  409 scalar: "__TRAIT__ (T_TRAIT_C)" .

    $default  reduce using rule 409 (scalar)


State 71

  410 scalar: "__METHOD__ (T_METHOD_C)" .

    $default  reduce using rule 410 (scalar)


State 72

  411 scalar: "__FUNCTION__ (T_FUNC_C)" .

    $default  reduce using rule 411 (scalar)


State 73

  414 scalar: "heredoc start (T_START_HEREDOC)" . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" "heredoc end (T_END_HEREDOC)"
  415       | "heredoc start (T_START_HEREDOC)" . "heredoc end (T_END_HEREDOC)"
  417       | "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

  412 scalar: "__NAMESPACE__ (T_NS_C)" .

    $default  reduce using rule 412 (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

  351 expr_without_variable: '(' . expr ')'
  429 dereferencable: '(' . expr ')'
  432 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

  149 statement: ';' .

    $default  reduce using rule 149 (statement)


State 79

  129 statement: '{' . inner_statement_list '}'

    $default  reduce using rule 122 (inner_statement_list)

    inner_statement_list  go to state 220


State 80

  367 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 396 (backticks_expr)

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


State 81

  416 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

  444 simple_variable: '$' . '{' expr '}'
  445                | '$' . 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

  386 function_call: name . argument_list
  391 class_name: name .
  420 constant: name .

    '('  shift, and go to state 229

    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 391 (class_name)
    $default                       reduce using rule 420 (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

  169 class_declaration_statement: class_modifiers . "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}'
  173 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

  172 class_modifiers: class_modifier .

    $default  reduce using rule 172 (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

  208 if_stmt_without_else: if_stmt_without_else . "elseif (T_ELSEIF)" '(' expr ')' statement
  209 if_stmt: if_stmt_without_else .
  210        | 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 209 (if_stmt)


State 94

  130 statement: if_stmt .

    $default  reduce using rule 130 (statement)


State 95

  212 alt_if_stmt_without_else: alt_if_stmt_without_else . "elseif (T_ELSEIF)" '(' expr ')' ':' inner_statement_list
  213 alt_if_stmt: alt_if_stmt_without_else . "endif (T_ENDIF)" ';'
  214            | 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

  131 statement: alt_if_stmt .

    $default  reduce using rule 131 (statement)


State 97

  352 expr_without_variable: new_expr .

    $default  reduce using rule 352 (expr_without_variable)


State 98

  424 expr: expr_without_variable .

    $default  reduce using rule 424 (expr)


State 99

  163 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
  373 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 378 (returns_ref)

    returns_ref  go to state 239


State 100

  439 callable_variable: function_call .

    $default  reduce using rule 439 (callable_variable)


State 101

  387 function_call: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list
  421 constant: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier
  446 static_member: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable

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


State 102

  418 scalar: dereferencable_scalar .
  430 dereferencable: dereferencable_scalar .
  433 callable_expr: dereferencable_scalar .

    '['                            reduce using rule 430 (dereferencable)
    "-> (T_OBJECT_OPERATOR)"       reduce using rule 430 (dereferencable)
    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 430 (dereferencable)
    '('                            reduce using rule 433 (callable_expr)
    '{'                            reduce using rule 430 (dereferencable)
    $default                       reduce using rule 418 (scalar)


State 103

  366 expr_without_variable: scalar .

    $default  reduce using rule 366 (expr_without_variable)


State 104

  419 scalar: constant .
  436 callable_variable: constant . '[' optional_expr ']'

    '['  shift, and go to state 241

    $default  reduce using rule 419 (scalar)


State 105

  143 statement: expr . ';'
  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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

  388 function_call: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list
  422 constant: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier
  447 static_member: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable

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


State 107

  427 variable_class_name: dereferencable .
  435 callable_variable: dereferencable . '[' optional_expr ']'
  437                  | dereferencable . '{' expr '}'
  438                  | dereferencable . "-> (T_OBJECT_OPERATOR)" property_name argument_list
  442 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 427 (variable_class_name)


State 108

  389 function_call: callable_expr . argument_list

    '('  shift, and go to state 229

    argument_list  go to state 276


State 109

  431 callable_expr: callable_variable .
  440 variable: callable_variable .

    '('       reduce using rule 431 (callable_expr)
    $default  reduce using rule 440 (variable)


State 110

  301 expr_without_variable: variable . '=' expr
  302                      | variable . '=' '&' variable
  304                      | variable . "+= (T_PLUS_EQUAL)" expr
  305                      | variable . "-= (T_MINUS_EQUAL)" expr
  306                      | variable . "*= (T_MUL_EQUAL)" expr
  307                      | variable . "**= (T_POW_EQUAL)" expr
  308                      | variable . "/= (T_DIV_EQUAL)" expr
  309                      | variable . ".= (T_CONCAT_EQUAL)" expr
  310                      | variable . "%= (T_MOD_EQUAL)" expr
  311                      | variable . "&= (T_AND_EQUAL)" expr
  312                      | variable . "|= (T_OR_EQUAL)" expr
  313                      | variable . "^= (T_XOR_EQUAL)" expr
  314                      | variable . "<<= (T_SL_EQUAL)" expr
  315                      | variable . ">>= (T_SR_EQUAL)" expr
  316                      | variable . "++ (T_INC)"
  318                      | variable . "-- (T_DEC)"
  423 expr: variable .
  428 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 428 (dereferencable)
    "-> (T_OBJECT_OPERATOR)"       reduce using rule 428 (dereferencable)
    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 428 (dereferencable)
    '{'                            reduce using rule 428 (dereferencable)
    $default                       reduce using rule 423 (expr)


State 111

  434 callable_variable: simple_variable .

    $default  reduce using rule 434 (callable_variable)


State 112

  441 variable: static_member .

    $default  reduce using rule 441 (variable)


State 113

  356 expr_without_variable: internal_functions_in_yacc .

    $default  reduce using rule 356 (expr_without_variable)


State 114

  374 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
  390 class_name: "static (T_STATIC)" .

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

    $default  reduce using rule 390 (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

  373 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 378 (returns_ref)

    returns_ref  go to state 292


State 118

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


State 119

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


State 120

  490 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

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


State 122

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


State 123

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


State 124

  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | expr . "?? (T_COALESCE)" expr
  370                      | "yield (T_YIELD)" expr .
  371                      | "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 370 (expr_without_variable)


State 125

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


State 126

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

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

    $default  reduce using rule 337 (expr_without_variable)


State 127

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

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

    $default  reduce using rule 338 (expr_without_variable)


State 128

  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  339                      | '!' expr .
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 339 (expr_without_variable)


State 129

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

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

    $default  reduce using rule 340 (expr_without_variable)


State 130

  402 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 461 (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

  390 class_name: "static (T_STATIC)" .

    $default  reduce using rule 390 (class_name)


State 132

  429 dereferencable: '(' . expr ')'
  432 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

  430 dereferencable: dereferencable_scalar .
  433 callable_expr: dereferencable_scalar .

    '('       reduce using rule 433 (callable_expr)
    $default  reduce using rule 430 (dereferencable)


State 134

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

    '['  shift, and go to state 241


State 135

  317 expr_without_variable: "++ (T_INC)" variable .
  428 dereferencable: variable .

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


State 136

  319 expr_without_variable: "-- (T_DEC)" variable .
  428 dereferencable: variable .

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


State 137

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

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

    $default  reduce using rule 357 (expr_without_variable)


State 138

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

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

    $default  reduce using rule 358 (expr_without_variable)


State 139

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

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

    $default  reduce using rule 359 (expr_without_variable)


State 140

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

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

    $default  reduce using rule 360 (expr_without_variable)


State 141

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

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

    $default  reduce using rule 361 (expr_without_variable)


State 142

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

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

    $default  reduce using rule 362 (expr_without_variable)


State 143

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

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

    $default  reduce using rule 363 (expr_without_variable)


State 144

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

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

    $default  reduce using rule 365 (expr_without_variable)


State 145

  468 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

  299 expr_without_variable: "list (T_LIST)" . '(' array_pair_list ')' '=' expr
  470 array_pair: "list (T_LIST)" . '(' array_pair_list ')'

    '('  shift, and go to state 298


State 147

  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | expr . "?? (T_COALESCE)" expr
  465 array_pair: expr . "=> (T_DOUBLE_ARROW)" expr
  466           | expr .
  467           | expr . "=> (T_DOUBLE_ARROW)" '&' variable
  469           | 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 466 (array_pair)


State 148

  300 expr_without_variable: '[' array_pair_list . ']' '=' expr
  402 dereferencable_scalar: '[' array_pair_list . ']'

    ']'  shift, and go to state 300


State 149

  464 non_empty_array_pair_list: possible_array_pair .

    $default  reduce using rule 464 (non_empty_array_pair_list)


State 150

  460 array_pair_list: non_empty_array_pair_list .
  463 non_empty_array_pair_list: non_empty_array_pair_list . ',' possible_array_pair

    ','  shift, and go to state 301

    $default  reduce using rule 460 (array_pair_list)


State 151

  462 possible_array_pair: array_pair .

    $default  reduce using rule 462 (possible_array_pair)


State 152

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

    $default  reduce using rule 295 (@8)

    @8  go to state 302


State 153

  391 class_name: name .

    $default  reduce using rule 391 (class_name)


State 154

  298 new_expr: "new (T_NEW)" anonymous_class .

    $default  reduce using rule 298 (new_expr)


State 155

  392 class_name_reference: class_name .
  452 new_variable: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable

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

    $default  reduce using rule 392 (class_name_reference)


State 156

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

    '('  shift, and go to state 229

    $default  reduce using rule 399 (ctor_arguments)

    argument_list   go to state 304
    ctor_arguments  go to state 305


State 157

  448 new_variable: simple_variable .

    $default  reduce using rule 448 (new_variable)


State 158

  393 class_name_reference: new_variable .
  449 new_variable: new_variable . '[' optional_expr ']'
  450             | new_variable . '{' expr '}'
  451             | new_variable . "-> (T_OBJECT_OPERATOR)" property_name
  453             | 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 393 (class_name_reference)


State 159

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

    $default  reduce using rule 303 (expr_without_variable)


State 160

  241 static_var: "variable (T_VARIABLE)" .
  242           | "variable (T_VARIABLE)" . '=' expr

    '='  shift, and go to state 310

    $default  reduce using rule 241 (static_var)


State 161

  140 statement: "static (T_STATIC)" static_var_list . ';'
  239 static_var_list: static_var_list . ',' static_var

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


State 162

  240 static_var_list: static_var .

    $default  reduce using rule 240 (static_var_list)


State 163

  374 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 378 (returns_ref)

    returns_ref  go to state 313


State 164

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

    $default  reduce using rule 153 (statement)


State 165

  395 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 425 (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

  364 expr_without_variable: "exit (T_EXIT)" exit_expr .

    $default  reduce using rule 364 (expr_without_variable)


State 167

  207 if_stmt_without_else: "if (T_IF)" '(' . expr ')' statement
  211 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

  141 statement: "echo (T_ECHO)" echo_expr_list . ';'
  288 echo_expr_list: echo_expr_list . ',' echo_expr

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


State 169

  289 echo_expr_list: echo_expr .

    $default  reduce using rule 289 (echo_expr_list)


State 170

  290 echo_expr: expr .
  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 290 (echo_expr)


State 171

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

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


State 172

  132 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

  134 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 291 (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

  145 statement: "foreach (T_FOREACH)" '(' . expr "as (T_AS)" foreach_variable ')' foreach_statement
  146          | "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

  148 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

  135 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

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


State 178

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

    ';'  shift, and go to state 326


State 179

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

    ';'  shift, and go to state 327


State 180

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

    ';'  shift, and go to state 328


State 181

  287 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 . ';'
  119 const_list: const_list . ',' const_decl

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


State 183

  120 const_list: const_decl .

    $default  reduce using rule 120 (const_list)


State 184

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

    ';'  shift, and go to state 332


State 185

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

    $default  reduce using rule 122 (inner_statement_list)

    inner_statement_list  go to state 333


State 186

  151 statement: "throw (T_THROW)" expr . ';'
  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 '}'
  118 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 '}'
  115 unprefixed_use_declaration: namespace_name .
  116                           | 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 115 (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 . ';'
  111 use_declarations: use_declarations . ',' use_declaration

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


State 194

  117 use_declaration: unprefixed_use_declaration .

    $default  reduce using rule 117 (use_declaration)


State 195

  112 use_declarations: use_declaration .

    $default  reduce using rule 112 (use_declarations)


State 196

  139 statement: "global (T_GLOBAL)" global_var_list . ';'
  236 global_var_list: global_var_list . ',' global_var

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


State 197

  237 global_var_list: global_var .

    $default  reduce using rule 237 (global_var_list)


State 198

  238 global_var: simple_variable .

    $default  reduce using rule 238 (global_var)


State 199

  144 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

  486 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

  487 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

  171 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

  177 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

  179 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

  299 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 461 (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

  401 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 461 (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

  475 encaps_var: "variable (T_VARIABLE)" .
  476           | "variable (T_VARIABLE)" . '[' encaps_var_offset ']'
  477           | "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 475 (encaps_var)


State 209

  414 scalar: "heredoc start (T_START_HEREDOC)" "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . "heredoc end (T_END_HEREDOC)"
  474 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

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

    $default  reduce using rule 415 (scalar)


State 211

  478 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" . expr '}'
  479           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" . "variable name (T_STRING_VARNAME)" '}'
  480           | "${ (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

  481 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

  417 scalar: "heredoc start (T_START_HEREDOC)" encaps_list . "heredoc end (T_END_HEREDOC)"
  471 encaps_list: encaps_list . encaps_var
  472            | 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

  473 encaps_list: encaps_var .

    $default  reduce using rule 473 (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

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

  121 inner_statement_list: inner_statement_list . inner_statement
  129 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

  397 backticks_expr: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" .
  474 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 397 (backticks_expr)

    encaps_var  go to state 364


State 222

  367 expr_without_variable: '`' backticks_expr . '`'

    '`'  shift, and go to state 384


State 223

  398 backticks_expr: encaps_list .
  471 encaps_list: encaps_list . encaps_var
  472            | 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 398 (backticks_expr)

    encaps_var  go to state 370


State 224

  474 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

  416 scalar: '"' encaps_list . '"'
  471 encaps_list: encaps_list . encaps_var
  472            | 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

  444 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

  445 simple_variable: '$' simple_variable .

    $default  reduce using rule 445 (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

  230 argument_list: '(' . ')'
  231              | '(' . 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

  386 function_call: name argument_list .

    $default  reduce using rule 386 (function_call)


State 231

  169 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 168 (@4)

    @4  go to state 393


State 232

  173 class_modifiers: class_modifiers class_modifier .

    $default  reduce using rule 173 (class_modifiers)


State 233

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

    '('  shift, and go to state 394


State 234

  210 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

  212 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

  214 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

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

    ';'  shift, and go to state 398


State 238

  379 returns_ref: '&' .

    $default  reduce using rule 379 (returns_ref)


State 239

  163 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
  373 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 376 (backup_doc_comment)

    backup_doc_comment  go to state 400


State 240

  387 function_call: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . member_name argument_list
  421 constant: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . identifier
  446 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

  436 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 425 (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

  322 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

  324 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

  323 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

  353 expr_without_variable: expr '?' . expr ':' expr
  354                      | 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

  355 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

  320 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

  321 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

  325 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

  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 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

  326 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

  343 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

  344 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

  341 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

  342 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

  349 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

  345 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

  346 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

  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 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

  348 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

  335 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

  336 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

  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 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

  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 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

  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 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

  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 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

  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 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

  334 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

  350 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

  332 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

  143 statement: expr ';' .

    $default  reduce using rule 143 (statement)


State 272

  388 function_call: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . member_name argument_list
  422 constant: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . identifier
  447 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

  435 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 425 (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

  438 callable_variable: dereferencable "-> (T_OBJECT_OPERATOR)" . property_name argument_list
  442 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

  437 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

  389 function_call: callable_expr argument_list .

    $default  reduce using rule 389 (function_call)


State 277

  301 expr_without_variable: variable '=' . expr
  302                      | 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

  304 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

  305 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

  306 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

  308 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

  309 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

  310 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

  311 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

  312 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

  313 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

  314 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

  315 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

  307 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

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

    $default  reduce using rule 316 (expr_without_variable)


State 291

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

    $default  reduce using rule 318 (expr_without_variable)


State 292

  373 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 376 (backup_doc_comment)

    backup_doc_comment  go to state 400


State 293

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

  371 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

  402 dereferencable_scalar: '[' array_pair_list . ']'

    ']'  shift, and go to state 537


State 296

  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | expr . "?? (T_COALESCE)" expr
  429 dereferencable: '(' expr . ')'
  432 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

  428 dereferencable: variable .
  468 array_pair: '&' variable .

    ','       reduce using rule 468 (array_pair)
    ')'       reduce using rule 468 (array_pair)
    ']'       reduce using rule 468 (array_pair)
    $default  reduce using rule 428 (dereferencable)


State 298

  299 expr_without_variable: "list (T_LIST)" '(' . array_pair_list ')' '=' expr
  470 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 461 (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

  465 array_pair: expr "=> (T_DOUBLE_ARROW)" . expr
  467           | expr "=> (T_DOUBLE_ARROW)" . '&' variable
  469           | 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

  300 expr_without_variable: '[' array_pair_list ']' . '=' expr
  402 dereferencable_scalar: '[' array_pair_list ']' .

    '='  shift, and go to state 543

    $default  reduce using rule 402 (dereferencable_scalar)


State 301

  463 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 461 (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

  296 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 399 (ctor_arguments)

    argument_list   go to state 304
    ctor_arguments  go to state 545


State 303

  452 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

  400 ctor_arguments: argument_list .

    $default  reduce using rule 400 (ctor_arguments)


State 305

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

    $default  reduce using rule 297 (new_expr)


State 306

  449 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 425 (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

  451 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

  453 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

  450 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

  242 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

  239 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

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

    $default  reduce using rule 140 (statement)


State 313

  374 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 (backup_doc_comment)

    backup_doc_comment  go to state 553


State 314

  395 exit_expr: '(' optional_expr . ')'

    ')'  shift, and go to state 554


State 315

  207 if_stmt_without_else: "if (T_IF)" '(' expr . ')' statement
  211 alt_if_stmt_without_else: "if (T_IF)" '(' expr . ')' ':' inner_statement_list
  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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

  288 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

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

    $default  reduce using rule 141 (statement)


State 318

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

    '('  shift, and go to state 557


State 319

  132 statement: "while (T_WHILE)" '(' expr . ')' while_statement
  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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

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

    ';'  shift, and go to state 559


State 321

  292 for_exprs: non_empty_for_exprs .
  293 non_empty_for_exprs: non_empty_for_exprs . ',' expr

    ','  shift, and go to state 560

    $default  reduce using rule 292 (for_exprs)


State 322

  294 non_empty_for_exprs: expr .
  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 294 (non_empty_for_exprs)


State 323

  145 statement: "foreach (T_FOREACH)" '(' expr . "as (T_AS)" foreach_variable ')' foreach_statement
  146          | "foreach (T_FOREACH)" '(' expr . "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable ')' foreach_statement
  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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

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

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


State 325

  135 statement: "switch (T_SWITCH)" '(' expr . ')' switch_case_list
  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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

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

    $default  reduce using rule 136 (statement)


State 327

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

    $default  reduce using rule 137 (statement)


State 328

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

    $default  reduce using rule 152 (statement)


State 329

  287 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

  119 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

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

    $default  reduce using rule 138 (statement)


State 333

  121 inner_statement_list: inner_statement_list . inner_statement
  150 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

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

    $default  reduce using rule 151 (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 '}'
  115 unprefixed_use_declaration: namespace_name .
  116                           | 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 115 (unprefixed_use_declaration)


State 336

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

    $default  reduce using rule 118 (use_declaration)


State 337

  116 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 '}'

    "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 '}'
  118 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 '}'
  115 unprefixed_use_declaration: namespace_name .
  116                           | 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 115 (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 . ';'
  111 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

  111 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

  236 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

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

    $default  reduce using rule 139 (statement)


State 348

  144 statement: "unset (T_UNSET)" '(' unset_variables . ')' ';'
  161 unset_variables: unset_variables . ',' unset_variable

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


State 349

  160 unset_variables: unset_variable .

    $default  reduce using rule 160 (unset_variables)


State 350

  162 unset_variable: variable .
  428 dereferencable: variable .

    ','       reduce using rule 162 (unset_variable)
    ')'       reduce using rule 162 (unset_variable)
    $default  reduce using rule 428 (dereferencable)


State 351

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


State 352

  486 internal_functions_in_yacc: "isset (T_ISSET)" '(' isset_variables . ')'
  494 isset_variables: isset_variables . ',' isset_variable

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


State 353

  493 isset_variables: isset_variable .

    $default  reduce using rule 493 (isset_variables)


State 354

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

  171 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 180 (extends_from)

    extends_from  go to state 585


State 357

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

    $default  reduce using rule 376 (backup_doc_comment)

    backup_doc_comment  go to state 586


State 358

  179 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 182 (interface_extends_list)

    interface_extends_list  go to state 588


State 359

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

    ')'  shift, and go to state 589


State 360

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

    ')'  shift, and go to state 590


State 361

  476 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

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

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


State 363

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

    $default  reduce using rule 414 (scalar)


State 364

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

    $default  reduce using rule 474 (encaps_list)


State 365

  479 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" . '}'
  480           | "${ (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

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

  428 dereferencable: variable .
  481 encaps_var: "{$ (T_CURLY_OPEN)" variable . '}'

    '}'  shift, and go to state 600

    $default  reduce using rule 428 (dereferencable)


State 368

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

    $default  reduce using rule 472 (encaps_list)


State 369

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

    $default  reduce using rule 417 (scalar)


State 370

  471 encaps_list: encaps_list encaps_var .

    $default  reduce using rule 471 (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

  351 expr_without_variable: '(' expr ')' .
  429 dereferencable: '(' expr ')' .
  432 callable_expr: '(' expr ')' .

    '['                            reduce using rule 429 (dereferencable)
    "-> (T_OBJECT_OPERATOR)"       reduce using rule 429 (dereferencable)
    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 429 (dereferencable)
    '('                            reduce using rule 432 (callable_expr)
    '{'                            reduce using rule 429 (dereferencable)
    $default                       reduce using rule 351 (expr_without_variable)


State 376

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

    '('  shift, and go to state 603


State 377

  129 statement: '{' inner_statement_list '}' .

    $default  reduce using rule 129 (statement)


State 378

  121 inner_statement_list: inner_statement_list inner_statement .

    $default  reduce using rule 121 (inner_statement_list)


State 379

  123 inner_statement: statement .

    $default  reduce using rule 123 (inner_statement)


State 380

  124 inner_statement: function_declaration_statement .

    $default  reduce using rule 124 (inner_statement)


State 381

  125 inner_statement: class_declaration_statement .

    $default  reduce using rule 125 (inner_statement)


State 382

  126 inner_statement: trait_declaration_statement .

    $default  reduce using rule 126 (inner_statement)


State 383

  127 inner_statement: interface_declaration_statement .

    $default  reduce using rule 127 (inner_statement)


State 384

  367 expr_without_variable: '`' backticks_expr '`' .

    $default  reduce using rule 367 (expr_without_variable)


State 385

  416 scalar: '"' encaps_list '"' .

    $default  reduce using rule 416 (scalar)


State 386

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

  235 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

  230 argument_list: '(' ')' .

    $default  reduce using rule 230 (argument_list)


State 390

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

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


State 391

  232 non_empty_argument_list: argument .

    $default  reduce using rule 232 (non_empty_argument_list)


State 392

  234 argument: expr .
  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 234 (argument)


State 393

  169 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

  208 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

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

    $default  reduce using rule 210 (if_stmt)


State 396

  212 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

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

    $default  reduce using rule 122 (inner_statement_list)

    inner_statement_list  go to state 611


State 398

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

    $default  reduce using rule 213 (alt_if_stmt)


State 399

  163 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 376 (backup_doc_comment)

    backup_doc_comment  go to state 612


State 400

  373 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

  455 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

  421 constant: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier .
  454 member_name: identifier .

    '('       reduce using rule 454 (member_name)
    $default  reduce using rule 421 (constant)


State 479

  446 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable .
  456 member_name: simple_variable .

    '('       reduce using rule 456 (member_name)
    $default  reduce using rule 446 (static_member)


State 480

  387 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

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

    ']'  shift, and go to state 616


State 482

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


State 483

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


State 484

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


State 485

  354 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

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

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

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


State 489

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


State 490

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


State 491

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


State 492

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


State 493

  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  343                      | expr "== (T_IS_EQUAL)" expr .
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 494

  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  344                      | expr "!= (T_IS_NOT_EQUAL)" expr .
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 495

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


State 496

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


State 497

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


State 498

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


State 499

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


State 500

  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  347                      | expr '>' expr .
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 501

  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  348                      | expr ">= (T_IS_GREATER_OR_EQUAL)" expr .
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 502

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


State 503

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


State 504

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


State 505

  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  330                      | expr '-' expr .
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 506

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


State 507

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


State 508

  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  333                      | expr '/' expr .
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 509

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


State 510

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

    $default  reduce using rule 350 (expr_without_variable)


State 511

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

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

    $default  reduce using rule 332 (expr_without_variable)


State 512

  422 constant: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier .
  454 member_name: identifier .

    '('       reduce using rule 454 (member_name)
    $default  reduce using rule 422 (constant)


State 513

  447 static_member: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable .
  456 member_name: simple_variable .

    '('       reduce using rule 456 (member_name)
    $default  reduce using rule 447 (static_member)


State 514

  388 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

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

    ']'  shift, and go to state 620


State 516

  457 property_name: "identifier (T_STRING)" .

    $default  reduce using rule 457 (property_name)


State 517

  458 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

  459 property_name: simple_variable .

    $default  reduce using rule 459 (property_name)


State 519

  438 callable_variable: dereferencable "-> (T_OBJECT_OPERATOR)" property_name . argument_list
  442 variable: dereferencable "-> (T_OBJECT_OPERATOR)" property_name .

    '('  shift, and go to state 229

    $default  reduce using rule 442 (variable)

    argument_list  go to state 622


State 520

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

  302 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

  301 expr_without_variable: variable '=' expr .
  320                      | expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 523

  304 expr_without_variable: variable "+= (T_PLUS_EQUAL)" expr .
  320                      | expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 304 (expr_without_variable)


State 524

  305 expr_without_variable: variable "-= (T_MINUS_EQUAL)" expr .
  320                      | expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 305 (expr_without_variable)


State 525

  306 expr_without_variable: variable "*= (T_MUL_EQUAL)" expr .
  320                      | expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 526

  308 expr_without_variable: variable "/= (T_DIV_EQUAL)" expr .
  320                      | expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 527

  309 expr_without_variable: variable ".= (T_CONCAT_EQUAL)" expr .
  320                      | expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 528

  310 expr_without_variable: variable "%= (T_MOD_EQUAL)" expr .
  320                      | expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 529

  311 expr_without_variable: variable "&= (T_AND_EQUAL)" expr .
  320                      | expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 530

  312 expr_without_variable: variable "|= (T_OR_EQUAL)" expr .
  320                      | expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 531

  313 expr_without_variable: variable "^= (T_XOR_EQUAL)" expr .
  320                      | expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 532

  314 expr_without_variable: variable "<<= (T_SL_EQUAL)" expr .
  320                      | expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 533

  315 expr_without_variable: variable ">>= (T_SR_EQUAL)" expr .
  320                      | expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 534

  307 expr_without_variable: variable "**= (T_POW_EQUAL)" expr .
  320                      | expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 535

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

    $default  reduce using rule 490 (internal_functions_in_yacc)


State 536

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


State 537

  402 dereferencable_scalar: '[' array_pair_list ']' .

    $default  reduce using rule 402 (dereferencable_scalar)


State 538

  429 dereferencable: '(' expr ')' .
  432 callable_expr: '(' expr ')' .

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


State 539

  299 expr_without_variable: "list (T_LIST)" '(' array_pair_list . ')' '=' expr
  470 array_pair: "list (T_LIST)" '(' array_pair_list . ')'

    ')'  shift, and go to state 625


State 540

  467 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

  299 expr_without_variable: "list (T_LIST)" . '(' array_pair_list ')' '=' expr
  469 array_pair: expr "=> (T_DOUBLE_ARROW)" "list (T_LIST)" . '(' array_pair_list ')'

    '('  shift, and go to state 627


State 542

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


State 543

  300 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

  463 non_empty_array_pair_list: non_empty_array_pair_list ',' possible_array_pair .

    $default  reduce using rule 463 (non_empty_array_pair_list)


State 545

  296 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 180 (extends_from)

    extends_from  go to state 629


State 546

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

    $default  reduce using rule 452 (new_variable)


State 547

  449 new_variable: new_variable '[' optional_expr . ']'

    ']'  shift, and go to state 630


State 548

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

    $default  reduce using rule 451 (new_variable)


State 549

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

    $default  reduce using rule 453 (new_variable)


State 550

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

  242 static_var: "variable (T_VARIABLE)" '=' expr .
  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 242 (static_var)


State 552

  239 static_var_list: static_var_list ',' static_var .

    $default  reduce using rule 239 (static_var_list)


State 553

  374 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

  395 exit_expr: '(' optional_expr ')' .

    $default  reduce using rule 395 (exit_expr)


State 555

  207 if_stmt_without_else: "if (T_IF)" '(' expr ')' . statement
  211 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

  288 echo_expr_list: echo_expr_list ',' echo_expr .

    $default  reduce using rule 288 (echo_expr_list)


State 557

  133 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

  132 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

  134 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 291 (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

  293 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

  145 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" . foreach_variable ')' foreach_statement
  146          | "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

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

    $default  reduce using rule 147 ($@3)

    $@3  go to state 646


State 563

  135 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

  287 const_decl: "identifier (T_STRING)" '=' expr . backup_doc_comment
  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 376 (backup_doc_comment)

    backup_doc_comment  go to state 650


State 565

  119 const_list: const_list ',' const_decl .

    $default  reduce using rule 119 (const_list)


State 566

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

    $default  reduce using rule 154 (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 '}'

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


State 568

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

    $default  reduce using rule 116 (unprefixed_use_declaration)


State 569

  105 mixed_group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' . inline_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

    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 '}'
  115 unprefixed_use_declaration: namespace_name .
  116                           | 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 115 (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 '}'

    "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

  118 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)"
  115 unprefixed_use_declaration: namespace_name .
  116                           | 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 115 (unprefixed_use_declaration)


State 576

  111 use_declarations: use_declarations ',' use_declaration .

    $default  reduce using rule 111 (use_declarations)


State 577

  236 global_var_list: global_var_list ',' global_var .

    $default  reduce using rule 236 (global_var_list)


State 578

  161 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

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

    ';'  shift, and go to state 660


State 580

  494 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

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

    $default  reduce using rule 486 (internal_functions_in_yacc)


State 582

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

    $default  reduce using rule 487 (internal_functions_in_yacc)


State 583

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

    $default  reduce using rule 90 (top_statement)


State 584

  181 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

  171 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 184 (implements_list)

    implements_list  go to state 664


State 586

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

    '{'  shift, and go to state 665


State 587

  183 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

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

    $default  reduce using rule 376 (backup_doc_comment)

    backup_doc_comment  go to state 668


State 589

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

    '='  shift, and go to state 669


State 590

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

    $default  reduce using rule 401 (dereferencable_scalar)


State 591

  484 encaps_var_offset: '-' . "number (T_NUM_STRING)"

    "number (T_NUM_STRING)"  shift, and go to state 670


State 592

  482 encaps_var_offset: "identifier (T_STRING)" .

    $default  reduce using rule 482 (encaps_var_offset)


State 593

  485 encaps_var_offset: "variable (T_VARIABLE)" .

    $default  reduce using rule 485 (encaps_var_offset)


State 594

  483 encaps_var_offset: "number (T_NUM_STRING)" .

    $default  reduce using rule 483 (encaps_var_offset)


State 595

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

    ']'  shift, and go to state 671


State 596

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

    $default  reduce using rule 477 (encaps_var)


State 597

  480 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

  479 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '}' .

    $default  reduce using rule 479 (encaps_var)


State 599

  478 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" expr '}' .

    $default  reduce using rule 478 (encaps_var)


State 600

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

    $default  reduce using rule 481 (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

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

    ')'  shift, and go to state 675


State 604

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

    $default  reduce using rule 444 (simple_variable)


State 605

  235 argument: "... (T_ELLIPSIS)" expr .
  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 235 (argument)


State 606

  233 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

  231 argument_list: '(' non_empty_argument_list ')' .

    $default  reduce using rule 231 (argument_list)


State 608

  169 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 180 (extends_from)

    extends_from  go to state 677


State 609

  208 if_stmt_without_else: if_stmt_without_else "elseif (T_ELSEIF)" '(' expr . ')' statement
  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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

  212 alt_if_stmt_without_else: alt_if_stmt_without_else "elseif (T_ELSEIF)" '(' expr . ')' ':' inner_statement_list
  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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

  121 inner_statement_list: inner_statement_list . inner_statement
  214 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

  163 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

  373 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 216 (parameter_list)
    $default  reduce using rule 221 (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

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

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

    $default  reduce using rule 387 (function_call)


State 616

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

    $default  reduce using rule 436 (callable_variable)


State 617

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


State 618

  353 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

  388 function_call: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list .

    $default  reduce using rule 388 (function_call)


State 620

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

    $default  reduce using rule 435 (callable_variable)


State 621

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

  438 callable_variable: dereferencable "-> (T_OBJECT_OPERATOR)" property_name argument_list .

    $default  reduce using rule 438 (callable_variable)


State 623

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

    $default  reduce using rule 437 (callable_variable)


State 624

  302 expr_without_variable: variable '=' '&' variable .
  428 dereferencable: variable .

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


State 625

  299 expr_without_variable: "list (T_LIST)" '(' array_pair_list ')' . '=' expr
  470 array_pair: "list (T_LIST)" '(' array_pair_list ')' .

    '='  shift, and go to state 669

    $default  reduce using rule 470 (array_pair)


State 626

  428 dereferencable: variable .
  467 array_pair: expr "=> (T_DOUBLE_ARROW)" '&' variable .

    ','       reduce using rule 467 (array_pair)
    ')'       reduce using rule 467 (array_pair)
    ']'       reduce using rule 467 (array_pair)
    $default  reduce using rule 428 (dereferencable)


State 627

  299 expr_without_variable: "list (T_LIST)" '(' . array_pair_list ')' '=' expr
  469 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 461 (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

  300 expr_without_variable: '[' array_pair_list ']' '=' expr .
  320                      | expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 300 (expr_without_variable)


State 629

  296 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 184 (implements_list)

    implements_list  go to state 696


State 630

  449 new_variable: new_variable '[' optional_expr ']' .

    $default  reduce using rule 449 (new_variable)


State 631

  450 new_variable: new_variable '{' expr '}' .

    $default  reduce using rule 450 (new_variable)


State 632

  374 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 216 (parameter_list)
    $default  reduce using rule 221 (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

  211 alt_if_stmt_without_else: "if (T_IF)" '(' expr ')' ':' . inner_statement_list

    $default  reduce using rule 122 (inner_statement_list)

    inner_statement_list  go to state 698


State 634

  207 if_stmt_without_else: "if (T_IF)" '(' expr ')' statement .

    $default  reduce using rule 207 (if_stmt_without_else)


State 635

  133 statement: "do (T_DO)" statement "while (T_WHILE)" '(' expr . ')' ';'
  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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

  206 while_statement: ':' . inner_statement_list "endwhile (T_ENDWHILE)" ';'

    $default  reduce using rule 122 (inner_statement_list)

    inner_statement_list  go to state 700


State 637

  205 while_statement: statement .

    $default  reduce using rule 205 (while_statement)


State 638

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

    $default  reduce using rule 132 (statement)


State 639

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

    ';'  shift, and go to state 701


State 640

  293 non_empty_for_exprs: non_empty_for_exprs ',' expr .
  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 293 (non_empty_for_exprs)


State 641

  187 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

  189 foreach_variable: '[' . array_pair_list ']'
  402 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 461 (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

  188 foreach_variable: "list (T_LIST)" . '(' array_pair_list ')'

    '('  shift, and go to state 704


State 644

  145 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable . ')' foreach_statement
  146          | "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

  186 foreach_variable: variable .
  428 dereferencable: variable .

    "=> (T_DOUBLE_ARROW)"  reduce using rule 186 (foreach_variable)
    ')'                    reduce using rule 186 (foreach_variable)
    $default               reduce using rule 428 (dereferencable)


State 646

  148 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

  198 switch_case_list: ':' . case_list "endswitch (T_ENDSWITCH)" ';'
  199                 | ':' . ';' case_list "endswitch (T_ENDSWITCH)" ';'

    ';'  shift, and go to state 710

    $default  reduce using rule 200 (case_list)

    case_list  go to state 711


State 648

  196 switch_case_list: '{' . case_list '}'
  197                 | '{' . ';' case_list '}'

    ';'  shift, and go to state 712

    $default  reduce using rule 200 (case_list)

    case_list  go to state 713


State 649

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

    $default  reduce using rule 135 (statement)


State 650

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

    $default  reduce using rule 287 (const_decl)


State 651

  150 statement: "try (T_TRY)" '{' inner_statement_list '}' catch_list . finally_statement
  155 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 158 (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 '}'

    "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

  114 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 . '}'
  107 inline_use_declarations: inline_use_declarations . ',' inline_use_declaration

    ','  shift, and go to state 719
    '}'  shift, and go to state 720


State 655

  108 inline_use_declarations: inline_use_declaration .

    $default  reduce using rule 108 (inline_use_declarations)


State 656

  113 inline_use_declaration: unprefixed_use_declaration .

    $default  reduce using rule 113 (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 '}'

    "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 '}'

    "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

  161 unset_variables: unset_variables ',' unset_variable .

    $default  reduce using rule 161 (unset_variables)


State 660

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

    $default  reduce using rule 144 (statement)


State 661

  494 isset_variables: isset_variables ',' isset_variable .

    $default  reduce using rule 494 (isset_variables)


State 662

  181 extends_from: "extends (T_EXTENDS)" name .

    $default  reduce using rule 181 (extends_from)


State 663

  185 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

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

    $default  reduce using rule 376 (backup_doc_comment)

    backup_doc_comment  go to state 725


State 665

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

    $default  reduce using rule 244 (class_statement_list)

    class_statement_list  go to state 726


State 666

  249 name_list: name .

    $default  reduce using rule 249 (name_list)


State 667

  183 interface_extends_list: "extends (T_EXTENDS)" name_list .
  250 name_list: name_list . ',' name

    ','  shift, and go to state 727

    $default  reduce using rule 183 (interface_extends_list)


State 668

  179 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

  299 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

  484 encaps_var_offset: '-' "number (T_NUM_STRING)" .

    $default  reduce using rule 484 (encaps_var_offset)


State 671

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

    $default  reduce using rule 476 (encaps_var)


State 672

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

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

    ';'  shift, and go to state 732


State 676

  233 non_empty_argument_list: non_empty_argument_list ',' argument .

    $default  reduce using rule 233 (non_empty_argument_list)


State 677

  169 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 184 (implements_list)

    implements_list  go to state 733


State 678

  208 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

  212 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

  214 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

  163 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 216 (parameter_list)
    $default  reduce using rule 221 (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

  224 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

  225 type: "array (T_ARRAY)" .

    $default  reduce using rule 225 (type)


State 684

  226 type: "callable (T_CALLABLE)" .

    $default  reduce using rule 226 (type)


State 685

  227 type: name .

    $default  reduce using rule 227 (type)


State 686

  373 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

  215 parameter_list: non_empty_parameter_list .
  218 non_empty_parameter_list: non_empty_parameter_list . ',' parameter

    ','  shift, and go to state 740

    $default  reduce using rule 215 (parameter_list)


State 688

  217 non_empty_parameter_list: parameter .

    $default  reduce using rule 217 (non_empty_parameter_list)


State 689

  219 parameter: optional_type . is_reference is_variadic "variable (T_VARIABLE)"
  220          | optional_type . is_reference is_variadic "variable (T_VARIABLE)" '=' expr

    '&'  shift, and go to state 741

    $default  reduce using rule 164 (is_reference)

    is_reference  go to state 742


State 690

  222 optional_type: type_expr .

    $default  reduce using rule 222 (optional_type)


State 691

  223 type_expr: type .

    $default  reduce using rule 223 (type_expr)


State 692

  455 member_name: '{' expr '}' .

    $default  reduce using rule 455 (member_name)


State 693

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


State 694

  458 property_name: '{' expr '}' .

    $default  reduce using rule 458 (property_name)


State 695

  299 expr_without_variable: "list (T_LIST)" '(' array_pair_list . ')' '=' expr
  469 array_pair: expr "=> (T_DOUBLE_ARROW)" "list (T_LIST)" '(' array_pair_list . ')'

    ')'  shift, and go to state 743


State 696

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

    $default  reduce using rule 376 (backup_doc_comment)

    backup_doc_comment  go to state 744


State 697

  374 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

  121 inner_statement_list: inner_statement_list . inner_statement
  211 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 211 (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

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

    ';'  shift, and go to state 746


State 700

  121 inner_statement_list: inner_statement_list . inner_statement
  206 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

  134 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 291 (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

  187 foreach_variable: '&' variable .
  428 dereferencable: variable .

    "=> (T_DOUBLE_ARROW)"  reduce using rule 187 (foreach_variable)
    ')'                    reduce using rule 187 (foreach_variable)
    $default               reduce using rule 428 (dereferencable)


State 703

  189 foreach_variable: '[' array_pair_list . ']'
  402 dereferencable_scalar: '[' array_pair_list . ']'

    ']'  shift, and go to state 749


State 704

  188 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 461 (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

  146 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

  145 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

  195 declare_statement: ':' . inner_statement_list "enddeclare (T_ENDDECLARE)" ';'

    $default  reduce using rule 122 (inner_statement_list)

    inner_statement_list  go to state 755


State 708

  194 declare_statement: statement .

    $default  reduce using rule 194 (declare_statement)


State 709

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

    $default  reduce using rule 148 (statement)


State 710

  199 switch_case_list: ':' ';' . case_list "endswitch (T_ENDSWITCH)" ';'

    $default  reduce using rule 200 (case_list)

    case_list  go to state 756


State 711

  198 switch_case_list: ':' case_list . "endswitch (T_ENDSWITCH)" ';'
  201 case_list: case_list . "case (T_CASE)" expr case_separator inner_statement_list
  202          | 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

  197 switch_case_list: '{' ';' . case_list '}'

    $default  reduce using rule 200 (case_list)

    case_list  go to state 760


State 713

  196 switch_case_list: '{' case_list . '}'
  201 case_list: case_list . "case (T_CASE)" expr case_separator inner_statement_list
  202          | 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

  155 catch_list: catch_list "catch (T_CATCH)" . '(' catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list '}'

    '('  shift, and go to state 762


State 715

  159 finally_statement: "finally (T_FINALLY)" . '{' inner_statement_list '}'

    '{'  shift, and go to state 763


State 716

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

    $default  reduce using rule 150 (statement)


State 717

  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations . '}'
  107 inline_use_declarations: inline_use_declarations . ',' inline_use_declaration

    ','  shift, and go to state 719
    '}'  shift, and go to state 764


State 718

  114 inline_use_declaration: use_type unprefixed_use_declaration .

    $default  reduce using rule 114 (inline_use_declaration)


State 719

  107 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

    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 '}' .

    $default  reduce using rule 105 (mixed_group_use_declaration)


State 721

  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' . unprefixed_use_declarations '}'

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

    namespace_name               go to state 575
    unprefixed_use_declarations  go to state 766
    unprefixed_use_declaration   go to state 723


State 722

  103 group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations . '}'
  109 unprefixed_use_declarations: unprefixed_use_declarations . ',' unprefixed_use_declaration

    ','  shift, and go to state 767
    '}'  shift, and go to state 768


State 723

  110 unprefixed_use_declarations: unprefixed_use_declaration .

    $default  reduce using rule 110 (unprefixed_use_declarations)


State 724

  185 implements_list: "implements (T_IMPLEMENTS)" name_list .
  250 name_list: name_list . ',' name

    ','  shift, and go to state 727

    $default  reduce using rule 185 (implements_list)


State 725

  171 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 769


State 726

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

    "static (T_STATIC)"        shift, and go to state 770
    "abstract (T_ABSTRACT)"    shift, and go to state 771
    "final (T_FINAL)"          shift, and go to state 772
    "private (T_PRIVATE)"      shift, and go to state 773
    "protected (T_PROTECTED)"  shift, and go to state 774
    "public (T_PUBLIC)"        shift, and go to state 775
    "use (T_USE)"              shift, and go to state 776
    "var (T_VAR)"              shift, and go to state 777
    '}'                        shift, and go to state 778

    $default  reduce using rule 270 (method_modifiers)

    class_statement             go to state 779
    variable_modifiers          go to state 780
    method_modifiers            go to state 781
    non_empty_member_modifiers  go to state 782
    member_modifier             go to state 783


State 727

  250 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 784


State 728

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

    $default  reduce using rule 244 (class_statement_list)

    class_statement_list  go to state 785


State 729

  299 expr_without_variable: "list (T_LIST)" '(' array_pair_list ')' '=' expr .
  320                      | expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 299 (expr_without_variable)


State 730

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

    '}'  shift, and go to state 786


State 731

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

    $default  reduce using rule 93 (top_statement)


State 732

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

    $default  reduce using rule 128 (inner_statement)


State 733

  169 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 376 (backup_doc_comment)

    backup_doc_comment  go to state 787


State 734

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

    $default  reduce using rule 208 (if_stmt_without_else)


State 735

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

    $default  reduce using rule 122 (inner_statement_list)

    inner_statement_list  go to state 788


State 736

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

    $default  reduce using rule 214 (alt_if_stmt)


State 737

  163 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 789


State 738

  224 type_expr: '?' type .

    $default  reduce using rule 224 (type_expr)


State 739

  373 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 790

    $default  reduce using rule 380 (lexical_vars)

    lexical_vars  go to state 791


State 740

  218 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 221 (optional_type)

    namespace_name  go to state 83
    name            go to state 685
    parameter       go to state 792
    optional_type   go to state 689
    type_expr       go to state 690
    type            go to state 691


State 741

  165 is_reference: '&' .

    $default  reduce using rule 165 (is_reference)


State 742

  219 parameter: optional_type is_reference . is_variadic "variable (T_VARIABLE)"
  220          | optional_type is_reference . is_variadic "variable (T_VARIABLE)" '=' expr

    "... (T_ELLIPSIS)"  shift, and go to state 793

    $default  reduce using rule 166 (is_variadic)

    is_variadic  go to state 794


State 743

  299 expr_without_variable: "list (T_LIST)" '(' array_pair_list ')' . '=' expr
  469 array_pair: expr "=> (T_DOUBLE_ARROW)" "list (T_LIST)" '(' array_pair_list ')' .

    '='  shift, and go to state 669

    $default  reduce using rule 469 (array_pair)


State 744

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

    '{'  shift, and go to state 795


State 745

  374 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 790

    $default  reduce using rule 380 (lexical_vars)

    lexical_vars  go to state 796


State 746

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

    $default  reduce using rule 133 (statement)


State 747

  206 while_statement: ':' inner_statement_list "endwhile (T_ENDWHILE)" . ';'

    ';'  shift, and go to state 797


State 748

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

    ')'  shift, and go to state 798


State 749

  189 foreach_variable: '[' array_pair_list ']' .
  402 dereferencable_scalar: '[' array_pair_list ']' .

    "=> (T_DOUBLE_ARROW)"  reduce using rule 189 (foreach_variable)
    ')'                    reduce using rule 189 (foreach_variable)
    $default               reduce using rule 402 (dereferencable_scalar)


State 750

  188 foreach_variable: "list (T_LIST)" '(' array_pair_list . ')'

    ')'  shift, and go to state 799


State 751

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

    ')'  shift, and go to state 800


State 752

  193 foreach_statement: ':' . inner_statement_list "endforeach (T_ENDFOREACH)" ';'

    $default  reduce using rule 122 (inner_statement_list)

    inner_statement_list  go to state 801


State 753

  192 foreach_statement: statement .

    $default  reduce using rule 192 (foreach_statement)


State 754

  145 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable ')' foreach_statement .

    $default  reduce using rule 145 (statement)


State 755

  121 inner_statement_list: inner_statement_list . inner_statement
  195 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 802
    "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

  199 switch_case_list: ':' ';' case_list . "endswitch (T_ENDSWITCH)" ';'
  201 case_list: case_list . "case (T_CASE)" expr case_separator inner_statement_list
  202          | case_list . "default (T_DEFAULT)" case_separator inner_statement_list

    "endswitch (T_ENDSWITCH)"  shift, and go to state 803
    "case (T_CASE)"            shift, and go to state 758
    "default (T_DEFAULT)"      shift, and go to state 759


State 757

  198 switch_case_list: ':' case_list "endswitch (T_ENDSWITCH)" . ';'

    ';'  shift, and go to state 804


State 758

  201 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 805
    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

  202 case_list: case_list "default (T_DEFAULT)" . case_separator inner_statement_list

    ':'  shift, and go to state 806
    ';'  shift, and go to state 807

    case_separator  go to state 808


State 760

  197 switch_case_list: '{' ';' case_list . '}'
  201 case_list: case_list . "case (T_CASE)" expr case_separator inner_statement_list
  202          | 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 809


State 761

  196 switch_case_list: '{' case_list '}' .

    $default  reduce using rule 196 (switch_case_list)


State 762

  155 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 810
    catch_name_list  go to state 811


State 763

  159 finally_statement: "finally (T_FINALLY)" '{' . inner_statement_list '}'

    $default  reduce using rule 122 (inner_statement_list)

    inner_statement_list  go to state 812


State 764

  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations '}' .

    $default  reduce using rule 106 (mixed_group_use_declaration)


State 765

  107 inline_use_declarations: inline_use_declarations ',' inline_use_declaration .

    $default  reduce using rule 107 (inline_use_declarations)


State 766

  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations . '}'
  109 unprefixed_use_declarations: unprefixed_use_declarations . ',' unprefixed_use_declaration

    ','  shift, and go to state 767
    '}'  shift, and go to state 813


State 767

  109 unprefixed_use_declarations: unprefixed_use_declarations ',' . unprefixed_use_declaration

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

    namespace_name              go to state 575
    unprefixed_use_declaration  go to state 814


State 768

  103 group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations '}' .

    $default  reduce using rule 103 (group_use_declaration)


State 769

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

    $default  reduce using rule 244 (class_statement_list)

    class_statement_list  go to state 815


State 770

  277 member_modifier: "static (T_STATIC)" .

    $default  reduce using rule 277 (member_modifier)


State 771

  278 member_modifier: "abstract (T_ABSTRACT)" .

    $default  reduce using rule 278 (member_modifier)


State 772

  279 member_modifier: "final (T_FINAL)" .

    $default  reduce using rule 279 (member_modifier)


State 773

  276 member_modifier: "private (T_PRIVATE)" .

    $default  reduce using rule 276 (member_modifier)


State 774

  275 member_modifier: "protected (T_PROTECTED)" .

    $default  reduce using rule 275 (member_modifier)


State 775

  274 member_modifier: "public (T_PUBLIC)" .

    $default  reduce using rule 274 (member_modifier)


State 776

  247 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 816


State 777

  269 variable_modifiers: "var (T_VAR)" .

    $default  reduce using rule 269 (variable_modifiers)


State 778

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

    $default  reduce using rule 177 (trait_declaration_statement)


State 779

  243 class_statement_list: class_statement_list class_statement .

    $default  reduce using rule 243 (class_statement_list)


State 780

  245 class_statement: variable_modifiers . property_list ';'

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

    property_list  go to state 818
    property       go to state 819


State 781

  246 class_statement: method_modifiers . "const (T_CONST)" class_const_list ';'
  248                | 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 820

    function  go to state 821


State 782

  268 variable_modifiers: non_empty_member_modifiers .
  271 method_modifiers: non_empty_member_modifiers .
  273 non_empty_member_modifiers: non_empty_member_modifiers . member_modifier

    "static (T_STATIC)"        shift, and go to state 770
    "abstract (T_ABSTRACT)"    shift, and go to state 771
    "final (T_FINAL)"          shift, and go to state 772
    "private (T_PRIVATE)"      shift, and go to state 773
    "protected (T_PROTECTED)"  shift, and go to state 774
    "public (T_PUBLIC)"        shift, and go to state 775

    "variable (T_VARIABLE)"  reduce using rule 268 (variable_modifiers)
    $default                 reduce using rule 271 (method_modifiers)

    member_modifier  go to state 822


State 783

  272 non_empty_member_modifiers: member_modifier .

    $default  reduce using rule 272 (non_empty_member_modifiers)


State 784

  250 name_list: name_list ',' name .

    $default  reduce using rule 250 (name_list)


State 785

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

    "static (T_STATIC)"        shift, and go to state 770
    "abstract (T_ABSTRACT)"    shift, and go to state 771
    "final (T_FINAL)"          shift, and go to state 772
    "private (T_PRIVATE)"      shift, and go to state 773
    "protected (T_PROTECTED)"  shift, and go to state 774
    "public (T_PUBLIC)"        shift, and go to state 775
    "use (T_USE)"              shift, and go to state 776
    "var (T_VAR)"              shift, and go to state 777
    '}'                        shift, and go to state 823

    $default  reduce using rule 270 (method_modifiers)

    class_statement             go to state 779
    variable_modifiers          go to state 780
    method_modifiers            go to state 781
    non_empty_member_modifiers  go to state 782
    member_modifier             go to state 783


State 786

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

    $default  reduce using rule 480 (encaps_var)


State 787

  169 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 824


State 788

  121 inner_statement_list: inner_statement_list . inner_statement
  212 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 212 (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 789

  163 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 825

    $default  reduce using rule 228 (return_type)

    return_type  go to state 826


State 790

  381 lexical_vars: "use (T_USE)" . '(' lexical_var_list ')'

    '('  shift, and go to state 827


State 791

  373 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 825

    $default  reduce using rule 228 (return_type)

    return_type  go to state 828


State 792

  218 non_empty_parameter_list: non_empty_parameter_list ',' parameter .

    $default  reduce using rule 218 (non_empty_parameter_list)


State 793

  167 is_variadic: "... (T_ELLIPSIS)" .

    $default  reduce using rule 167 (is_variadic)


State 794

  219 parameter: optional_type is_reference is_variadic . "variable (T_VARIABLE)"
  220          | optional_type is_reference is_variadic . "variable (T_VARIABLE)" '=' expr

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


State 795

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

    $default  reduce using rule 244 (class_statement_list)

    class_statement_list  go to state 830


State 796

  374 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 825

    $default  reduce using rule 228 (return_type)

    return_type  go to state 831


State 797

  206 while_statement: ':' inner_statement_list "endwhile (T_ENDWHILE)" ';' .

    $default  reduce using rule 206 (while_statement)


State 798

  134 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 832
    '+'                                           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 833
    for_statement               go to state 834
    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 799

  188 foreach_variable: "list (T_LIST)" '(' array_pair_list ')' .

    $default  reduce using rule 188 (foreach_variable)


State 800

  146 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 835
    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 801

  121 inner_statement_list: inner_statement_list . inner_statement
  193 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 836
    "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 802

  195 declare_statement: ':' inner_statement_list "enddeclare (T_ENDDECLARE)" . ';'

    ';'  shift, and go to state 837


State 803

  199 switch_case_list: ':' ';' case_list "endswitch (T_ENDSWITCH)" . ';'

    ';'  shift, and go to state 838


State 804

  198 switch_case_list: ':' case_list "endswitch (T_ENDSWITCH)" ';' .

    $default  reduce using rule 198 (switch_case_list)


State 805

  201 case_list: case_list "case (T_CASE)" expr . case_separator inner_statement_list
  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 806
    "?? (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 807

    case_separator  go to state 839


State 806

  203 case_separator: ':' .

    $default  reduce using rule 203 (case_separator)


State 807

  204 case_separator: ';' .

    $default  reduce using rule 204 (case_separator)


State 808

  202 case_list: case_list "default (T_DEFAULT)" case_separator . inner_statement_list

    $default  reduce using rule 122 (inner_statement_list)

    inner_statement_list  go to state 840


State 809

  197 switch_case_list: '{' ';' case_list '}' .

    $default  reduce using rule 197 (switch_case_list)


State 810

  156 catch_name_list: name .

    $default  reduce using rule 156 (catch_name_list)


State 811

  155 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list . "variable (T_VARIABLE)" ')' '{' inner_statement_list '}'
  157 catch_name_list: catch_name_list . '|' name

    '|'                      shift, and go to state 841
    "variable (T_VARIABLE)"  shift, and go to state 842


State 812

  121 inner_statement_list: inner_statement_list . inner_statement
  159 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 843
    '`'                                           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 813

  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations '}' .

    $default  reduce using rule 104 (group_use_declaration)


State 814

  109 unprefixed_use_declarations: unprefixed_use_declarations ',' unprefixed_use_declaration .

    $default  reduce using rule 109 (unprefixed_use_declarations)


State 815

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

    "static (T_STATIC)"        shift, and go to state 770
    "abstract (T_ABSTRACT)"    shift, and go to state 771
    "final (T_FINAL)"          shift, and go to state 772
    "private (T_PRIVATE)"      shift, and go to state 773
    "protected (T_PROTECTED)"  shift, and go to state 774
    "public (T_PUBLIC)"        shift, and go to state 775
    "use (T_USE)"              shift, and go to state 776
    "var (T_VAR)"              shift, and go to state 777
    '}'                        shift, and go to state 844

    $default  reduce using rule 270 (method_modifiers)

    class_statement             go to state 779
    variable_modifiers          go to state 780
    method_modifiers            go to state 781
    non_empty_member_modifiers  go to state 782
    member_modifier             go to state 783


State 816

  247 class_statement: "use (T_USE)" name_list . trait_adaptations
  250 name_list: name_list . ',' name

    ','  shift, and go to state 727
    ';'  shift, and go to state 845
    '{'  shift, and go to state 846

    trait_adaptations  go to state 847


State 817

  282 property: "variable (T_VARIABLE)" . backup_doc_comment
  283         | "variable (T_VARIABLE)" . '=' expr backup_doc_comment

    '='  shift, and go to state 848

    $default  reduce using rule 376 (backup_doc_comment)

    backup_doc_comment  go to state 849


State 818

  245 class_statement: variable_modifiers property_list . ';'
  280 property_list: property_list . ',' property

    ','  shift, and go to state 850
    ';'  shift, and go to state 851


State 819

  281 property_list: property .

    $default  reduce using rule 281 (property_list)


State 820

  246 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 852
    class_const_list        go to state 853
    class_const_decl        go to state 854


State 821

  248 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 378 (returns_ref)

    returns_ref  go to state 855


State 822

  273 non_empty_member_modifiers: non_empty_member_modifiers member_modifier .

    $default  reduce using rule 273 (non_empty_member_modifiers)


State 823

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

    $default  reduce using rule 179 (interface_declaration_statement)


State 824

  169 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 244 (class_statement_list)

    class_statement_list  go to state 856


State 825

  229 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 857
    type            go to state 691


State 826

  163 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 377 (backup_fn_flags)

    backup_fn_flags  go to state 858


State 827

  381 lexical_vars: "use (T_USE)" '(' . lexical_var_list ')'

    '&'                      shift, and go to state 859
    "variable (T_VARIABLE)"  shift, and go to state 860

    lexical_var_list  go to state 861
    lexical_var       go to state 862


State 828

  373 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 377 (backup_fn_flags)

    backup_fn_flags  go to state 863


State 829

  219 parameter: optional_type is_reference is_variadic "variable (T_VARIABLE)" .
  220          | optional_type is_reference is_variadic "variable (T_VARIABLE)" . '=' expr

    '='  shift, and go to state 864

    $default  reduce using rule 219 (parameter)


State 830

  243 class_statement_list: class_statement_list . class_statement
  296 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 770
    "abstract (T_ABSTRACT)"    shift, and go to state 771
    "final (T_FINAL)"          shift, and go to state 772
    "private (T_PRIVATE)"      shift, and go to state 773
    "protected (T_PROTECTED)"  shift, and go to state 774
    "public (T_PUBLIC)"        shift, and go to state 775
    "use (T_USE)"              shift, and go to state 776
    "var (T_VAR)"              shift, and go to state 777
    '}'                        shift, and go to state 865

    $default  reduce using rule 270 (method_modifiers)

    class_statement             go to state 779
    variable_modifiers          go to state 780
    method_modifiers            go to state 781
    non_empty_member_modifiers  go to state 782
    member_modifier             go to state 783


State 831

  374 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 377 (backup_fn_flags)

    backup_fn_flags  go to state 866


State 832

  191 for_statement: ':' . inner_statement_list "endfor (T_ENDFOR)" ';'

    $default  reduce using rule 122 (inner_statement_list)

    inner_statement_list  go to state 867


State 833

  190 for_statement: statement .

    $default  reduce using rule 190 (for_statement)


State 834

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

    $default  reduce using rule 134 (statement)


State 835

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

    $default  reduce using rule 146 (statement)


State 836

  193 foreach_statement: ':' inner_statement_list "endforeach (T_ENDFOREACH)" . ';'

    ';'  shift, and go to state 868


State 837

  195 declare_statement: ':' inner_statement_list "enddeclare (T_ENDDECLARE)" ';' .

    $default  reduce using rule 195 (declare_statement)


State 838

  199 switch_case_list: ':' ';' case_list "endswitch (T_ENDSWITCH)" ';' .

    $default  reduce using rule 199 (switch_case_list)


State 839

  201 case_list: case_list "case (T_CASE)" expr case_separator . inner_statement_list

    $default  reduce using rule 122 (inner_statement_list)

    inner_statement_list  go to state 869


State 840

  121 inner_statement_list: inner_statement_list . inner_statement
  202 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 202 (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 841

  157 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 870


State 842

  155 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" . ')' '{' inner_statement_list '}'

    ')'  shift, and go to state 871


State 843

  159 finally_statement: "finally (T_FINALLY)" '{' inner_statement_list '}' .

    $default  reduce using rule 159 (finally_statement)


State 844

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

    $default  reduce using rule 171 (class_declaration_statement)


State 845

  251 trait_adaptations: ';' .

    $default  reduce using rule 251 (trait_adaptations)


State 846

  252 trait_adaptations: '{' . '}'
  253                  | '{' . 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 872
    "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 873
    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 474
    "\\ (T_NS_SEPARATOR)"            shift, and go to state 76
    '}'                              shift, and go to state 874

    reserved_non_modifiers           go to state 476
    semi_reserved                    go to state 477
    identifier                       go to state 875
    namespace_name                   go to state 83
    name                             go to state 876
    trait_adaptation_list            go to state 877
    trait_adaptation                 go to state 878
    trait_precedence                 go to state 879
    trait_alias                      go to state 880
    trait_method_reference           go to state 881
    absolute_trait_method_reference  go to state 882


State 847

  247 class_statement: "use (T_USE)" name_list trait_adaptations .

    $default  reduce using rule 247 (class_statement)


State 848

  283 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 883
    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 849

  282 property: "variable (T_VARIABLE)" backup_doc_comment .

    $default  reduce using rule 282 (property)


State 850

  280 property_list: property_list ',' . property

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

    property  go to state 884


State 851

  245 class_statement: variable_modifiers property_list ';' .

    $default  reduce using rule 245 (class_statement)


State 852

  286 class_const_decl: identifier . '=' expr backup_doc_comment

    '='  shift, and go to state 885


State 853

  246 class_statement: method_modifiers "const (T_CONST)" class_const_list . ';'
  284 class_const_list: class_const_list . ',' class_const_decl

    ','  shift, and go to state 886
    ';'  shift, and go to state 887


State 854

  285 class_const_list: class_const_decl .

    $default  reduce using rule 285 (class_const_list)


State 855

  248 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 888


State 856

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

    "static (T_STATIC)"        shift, and go to state 770
    "abstract (T_ABSTRACT)"    shift, and go to state 771
    "final (T_FINAL)"          shift, and go to state 772
    "private (T_PRIVATE)"      shift, and go to state 773
    "protected (T_PROTECTED)"  shift, and go to state 774
    "public (T_PUBLIC)"        shift, and go to state 775
    "use (T_USE)"              shift, and go to state 776
    "var (T_VAR)"              shift, and go to state 777
    '}'                        shift, and go to state 889

    $default  reduce using rule 270 (method_modifiers)

    class_statement             go to state 779
    variable_modifiers          go to state 780
    method_modifiers            go to state 781
    non_empty_member_modifiers  go to state 782
    member_modifier             go to state 783


State 857

  229 return_type: ':' type_expr .

    $default  reduce using rule 229 (return_type)


State 858

  163 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 890


State 859

  385 lexical_var: '&' . "variable (T_VARIABLE)"

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


State 860

  384 lexical_var: "variable (T_VARIABLE)" .

    $default  reduce using rule 384 (lexical_var)


State 861

  381 lexical_vars: "use (T_USE)" '(' lexical_var_list . ')'
  382 lexical_var_list: lexical_var_list . ',' lexical_var

    ','  shift, and go to state 892
    ')'  shift, and go to state 893


State 862

  383 lexical_var_list: lexical_var .

    $default  reduce using rule 383 (lexical_var_list)


State 863

  373 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 894


State 864

  220 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 895
    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 865

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

    $default  reduce using rule 296 (anonymous_class)


State 866

  374 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 896


State 867

  121 inner_statement_list: inner_statement_list . inner_statement
  191 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 897
    "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 868

  193 foreach_statement: ':' inner_statement_list "endforeach (T_ENDFOREACH)" ';' .

    $default  reduce using rule 193 (foreach_statement)


State 869

  121 inner_statement_list: inner_statement_list . inner_statement
  201 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 201 (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 870

  157 catch_name_list: catch_name_list '|' name .

    $default  reduce using rule 157 (catch_name_list)


State 871

  155 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' . '{' inner_statement_list '}'

    '{'  shift, and go to state 898


State 872

   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 873

   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 874

  252 trait_adaptations: '{' '}' .

    $default  reduce using rule 252 (trait_adaptations)


State 875

  263 trait_method_reference: identifier .

    $default  reduce using rule 263 (trait_method_reference)


State 876

  265 absolute_trait_method_reference: name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier

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


State 877

  253 trait_adaptations: '{' trait_adaptation_list . '}'
  255 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 872
    "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 873
    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 474
    "\\ (T_NS_SEPARATOR)"            shift, and go to state 76
    '}'                              shift, and go to state 900

    reserved_non_modifiers           go to state 476
    semi_reserved                    go to state 477
    identifier                       go to state 875
    namespace_name                   go to state 83
    name                             go to state 876
    trait_adaptation                 go to state 901
    trait_precedence                 go to state 879
    trait_alias                      go to state 880
    trait_method_reference           go to state 881
    absolute_trait_method_reference  go to state 882


State 878

  254 trait_adaptation_list: trait_adaptation .

    $default  reduce using rule 254 (trait_adaptation_list)


State 879

  256 trait_adaptation: trait_precedence . ';'

    ';'  shift, and go to state 902


State 880

  257 trait_adaptation: trait_alias . ';'

    ';'  shift, and go to state 903


State 881

  259 trait_alias: trait_method_reference . "as (T_AS)" "identifier (T_STRING)"
  260            | trait_method_reference . "as (T_AS)" reserved_non_modifiers
  261            | trait_method_reference . "as (T_AS)" member_modifier identifier
  262            | trait_method_reference . "as (T_AS)" member_modifier

    "as (T_AS)"  shift, and go to state 904


State 882

  258 trait_precedence: absolute_trait_method_reference . "insteadof (T_INSTEADOF)" name_list
  264 trait_method_reference: absolute_trait_method_reference .

    "insteadof (T_INSTEADOF)"  shift, and go to state 905

    $default  reduce using rule 264 (trait_method_reference)


State 883

  283 property: "variable (T_VARIABLE)" '=' expr . backup_doc_comment
  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 376 (backup_doc_comment)

    backup_doc_comment  go to state 906


State 884

  280 property_list: property_list ',' property .

    $default  reduce using rule 280 (property_list)


State 885

  286 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 907
    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 886

  284 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 852
    class_const_decl        go to state 908


State 887

  246 class_statement: method_modifiers "const (T_CONST)" class_const_list ';' .

    $default  reduce using rule 246 (class_statement)


State 888

  248 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 376 (backup_doc_comment)

    backup_doc_comment  go to state 909


State 889

  169 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 169 (class_declaration_statement)


State 890

  163 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 122 (inner_statement_list)

    inner_statement_list  go to state 910


State 891

  385 lexical_var: '&' "variable (T_VARIABLE)" .

    $default  reduce using rule 385 (lexical_var)


State 892

  382 lexical_var_list: lexical_var_list ',' . lexical_var

    '&'                      shift, and go to state 859
    "variable (T_VARIABLE)"  shift, and go to state 860

    lexical_var  go to state 911


State 893

  381 lexical_vars: "use (T_USE)" '(' lexical_var_list ')' .

    $default  reduce using rule 381 (lexical_vars)


State 894

  373 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 122 (inner_statement_list)

    inner_statement_list  go to state 912


State 895

  220 parameter: optional_type is_reference is_variadic "variable (T_VARIABLE)" '=' expr .
  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 220 (parameter)


State 896

  374 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 122 (inner_statement_list)

    inner_statement_list  go to state 913


State 897

  191 for_statement: ':' inner_statement_list "endfor (T_ENDFOR)" . ';'

    ';'  shift, and go to state 914


State 898

  155 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' '{' . inner_statement_list '}'

    $default  reduce using rule 122 (inner_statement_list)

    inner_statement_list  go to state 915


State 899

  265 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 916


State 900

  253 trait_adaptations: '{' trait_adaptation_list '}' .

    $default  reduce using rule 253 (trait_adaptations)


State 901

  255 trait_adaptation_list: trait_adaptation_list trait_adaptation .

    $default  reduce using rule 255 (trait_adaptation_list)


State 902

  256 trait_adaptation: trait_precedence ';' .

    $default  reduce using rule 256 (trait_adaptation)


State 903

  257 trait_adaptation: trait_alias ';' .

    $default  reduce using rule 257 (trait_adaptation)


State 904

  259 trait_alias: trait_method_reference "as (T_AS)" . "identifier (T_STRING)"
  260            | trait_method_reference "as (T_AS)" . reserved_non_modifiers
  261            | trait_method_reference "as (T_AS)" . member_modifier identifier
  262            | 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 770
    "abstract (T_ABSTRACT)"          shift, and go to state 771
    "final (T_FINAL)"                shift, and go to state 772
    "private (T_PRIVATE)"            shift, and go to state 773
    "protected (T_PROTECTED)"        shift, and go to state 774
    "public (T_PUBLIC)"              shift, and go to state 775
    "identifier (T_STRING)"          shift, and go to state 917
    "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 918
    member_modifier         go to state 919


State 905

  258 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 920


State 906

  283 property: "variable (T_VARIABLE)" '=' expr backup_doc_comment .

    $default  reduce using rule 283 (property)


State 907

  286 class_const_decl: identifier '=' expr . backup_doc_comment
  320 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" expr
  321                      | expr . "&& (T_BOOLEAN_AND)" expr
  322                      | expr . "or (T_LOGICAL_OR)" expr
  323                      | expr . "and (T_LOGICAL_AND)" expr
  324                      | expr . "xor (T_LOGICAL_XOR)" expr
  325                      | expr . '|' expr
  326                      | expr . '&' expr
  327                      | expr . '^' expr
  328                      | expr . '.' expr
  329                      | expr . '+' expr
  330                      | expr . '-' expr
  331                      | expr . '*' expr
  332                      | expr . "** (T_POW)" expr
  333                      | expr . '/' expr
  334                      | expr . '%' expr
  335                      | expr . "<< (T_SL)" expr
  336                      | expr . ">> (T_SR)" expr
  341                      | expr . "=== (T_IS_IDENTICAL)" expr
  342                      | expr . "!== (T_IS_NOT_IDENTICAL)" expr
  343                      | expr . "== (T_IS_EQUAL)" expr
  344                      | expr . "!= (T_IS_NOT_EQUAL)" expr
  345                      | expr . '<' expr
  346                      | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
  347                      | expr . '>' expr
  348                      | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
  349                      | expr . "<=> (T_SPACESHIP)" expr
  350                      | expr . "instanceof (T_INSTANCEOF)" class_name_reference
  353                      | expr . '?' expr ':' expr
  354                      | expr . '?' ':' expr
  355                      | 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 376 (backup_doc_comment)

    backup_doc_comment  go to state 921


State 908

  284 class_const_list: class_const_list ',' class_const_decl .

    $default  reduce using rule 284 (class_const_list)


State 909

  248 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 922


State 910

  121 inner_statement_list: inner_statement_list . inner_statement
  163 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 923
    '`'                                           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 911

  382 lexical_var_list: lexical_var_list ',' lexical_var .

    $default  reduce using rule 382 (lexical_var_list)


State 912

  121 inner_statement_list: inner_statement_list . inner_statement
  373 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 924
    '`'                                           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 913

  121 inner_statement_list: inner_statement_list . inner_statement
  374 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 925
    '`'                                           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 914

  191 for_statement: ':' inner_statement_list "endfor (T_ENDFOR)" ';' .

    $default  reduce using rule 191 (for_statement)


State 915

  121 inner_statement_list: inner_statement_list . inner_statement
  155 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 926
    '`'                                           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 916

  265 absolute_trait_method_reference: name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier .

    $default  reduce using rule 265 (absolute_trait_method_reference)


State 917

  259 trait_alias: trait_method_reference "as (T_AS)" "identifier (T_STRING)" .

    $default  reduce using rule 259 (trait_alias)


State 918

  260 trait_alias: trait_method_reference "as (T_AS)" reserved_non_modifiers .

    $default  reduce using rule 260 (trait_alias)


State 919

  261 trait_alias: trait_method_reference "as (T_AS)" member_modifier . identifier
  262            | 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 262 (trait_alias)

    reserved_non_modifiers  go to state 476
    semi_reserved           go to state 477
    identifier              go to state 927


State 920

  250 name_list: name_list . ',' name
  258 trait_precedence: absolute_trait_method_reference "insteadof (T_INSTEADOF)" name_list .

    ','  shift, and go to state 727

    $default  reduce using rule 258 (trait_precedence)


State 921

  286 class_const_decl: identifier '=' expr backup_doc_comment .

    $default  reduce using rule 286 (class_const_decl)


State 922

  248 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 216 (parameter_list)
    $default  reduce using rule 221 (optional_type)

    namespace_name            go to state 83
    name                      go to state 685
    parameter_list            go to state 928
    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 923

  163 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 377 (backup_fn_flags)

    backup_fn_flags  go to state 929


State 924

  373 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 377 (backup_fn_flags)

    backup_fn_flags  go to state 930


State 925

  374 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 377 (backup_fn_flags)

    backup_fn_flags  go to state 931


State 926

  155 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list '}' .

    $default  reduce using rule 155 (catch_list)


State 927

  261 trait_alias: trait_method_reference "as (T_AS)" member_modifier identifier .

    $default  reduce using rule 261 (trait_alias)


State 928

  248 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 932


State 929

  163 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 163 (function_declaration_statement)


State 930

  373 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 373 (expr_without_variable)


State 931

  374 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 374 (expr_without_variable)


State 932

  248 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 825

    $default  reduce using rule 228 (return_type)

    return_type  go to state 933


State 933

  248 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 377 (backup_fn_flags)

    backup_fn_flags  go to state 934


State 934

  248 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 935
    '{'  shift, and go to state 936

    method_body  go to state 937


State 935

  266 method_body: ';' .

    $default  reduce using rule 266 (method_body)


State 936

  267 method_body: '{' . inner_statement_list '}'

    $default  reduce using rule 122 (inner_statement_list)

    inner_statement_list  go to state 938


State 937

  248 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 377 (backup_fn_flags)

    backup_fn_flags  go to state 939


State 938

  121 inner_statement_list: inner_statement_list . inner_statement
  267 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 940
    '`'                                           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 939

  248 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 248 (class_statement)


State 940

  267 method_body: '{' inner_statement_list '}' .

    $default  reduce using rule 267 (method_body)