1Terminals unused in grammar
2
3   "comment (T_COMMENT)"
4   "doc comment (T_DOC_COMMENT)"
5   "open tag (T_OPEN_TAG)"
6   "open tag with echo (T_OPEN_TAG_WITH_ECHO)"
7   "close tag (T_CLOSE_TAG)"
8   "whitespace (T_WHITESPACE)"
9   T_ERROR
10
11
12Grammar
13
14    0 $accept: start "end of file"
15
16    1 start: top_statement_list
17
18    2 reserved_non_modifiers: "include (T_INCLUDE)"
19    3                       | "include_once (T_INCLUDE_ONCE)"
20    4                       | "eval (T_EVAL)"
21    5                       | "require (T_REQUIRE)"
22    6                       | "require_once (T_REQUIRE_ONCE)"
23    7                       | "or (T_LOGICAL_OR)"
24    8                       | "xor (T_LOGICAL_XOR)"
25    9                       | "and (T_LOGICAL_AND)"
26   10                       | "instanceof (T_INSTANCEOF)"
27   11                       | "new (T_NEW)"
28   12                       | "clone (T_CLONE)"
29   13                       | "exit (T_EXIT)"
30   14                       | "if (T_IF)"
31   15                       | "elseif (T_ELSEIF)"
32   16                       | "else (T_ELSE)"
33   17                       | "endif (T_ENDIF)"
34   18                       | "echo (T_ECHO)"
35   19                       | "do (T_DO)"
36   20                       | "while (T_WHILE)"
37   21                       | "endwhile (T_ENDWHILE)"
38   22                       | "for (T_FOR)"
39   23                       | "endfor (T_ENDFOR)"
40   24                       | "foreach (T_FOREACH)"
41   25                       | "endforeach (T_ENDFOREACH)"
42   26                       | "declare (T_DECLARE)"
43   27                       | "enddeclare (T_ENDDECLARE)"
44   28                       | "as (T_AS)"
45   29                       | "try (T_TRY)"
46   30                       | "catch (T_CATCH)"
47   31                       | "finally (T_FINALLY)"
48   32                       | "throw (T_THROW)"
49   33                       | "use (T_USE)"
50   34                       | "insteadof (T_INSTEADOF)"
51   35                       | "global (T_GLOBAL)"
52   36                       | "var (T_VAR)"
53   37                       | "unset (T_UNSET)"
54   38                       | "isset (T_ISSET)"
55   39                       | "empty (T_EMPTY)"
56   40                       | "continue (T_CONTINUE)"
57   41                       | "goto (T_GOTO)"
58   42                       | "function (T_FUNCTION)"
59   43                       | "const (T_CONST)"
60   44                       | "return (T_RETURN)"
61   45                       | "print (T_PRINT)"
62   46                       | "yield (T_YIELD)"
63   47                       | "list (T_LIST)"
64   48                       | "switch (T_SWITCH)"
65   49                       | "endswitch (T_ENDSWITCH)"
66   50                       | "case (T_CASE)"
67   51                       | "default (T_DEFAULT)"
68   52                       | "break (T_BREAK)"
69   53                       | "array (T_ARRAY)"
70   54                       | "callable (T_CALLABLE)"
71   55                       | "extends (T_EXTENDS)"
72   56                       | "implements (T_IMPLEMENTS)"
73   57                       | "namespace (T_NAMESPACE)"
74   58                       | "trait (T_TRAIT)"
75   59                       | "interface (T_INTERFACE)"
76   60                       | "class (T_CLASS)"
77   61                       | "__CLASS__ (T_CLASS_C)"
78   62                       | "__TRAIT__ (T_TRAIT_C)"
79   63                       | "__FUNCTION__ (T_FUNC_C)"
80   64                       | "__METHOD__ (T_METHOD_C)"
81   65                       | "__LINE__ (T_LINE)"
82   66                       | "__FILE__ (T_FILE)"
83   67                       | "__DIR__ (T_DIR)"
84   68                       | "__NAMESPACE__ (T_NS_C)"
85
86   69 semi_reserved: reserved_non_modifiers
87   70              | "static (T_STATIC)"
88   71              | "abstract (T_ABSTRACT)"
89   72              | "final (T_FINAL)"
90   73              | "private (T_PRIVATE)"
91   74              | "protected (T_PROTECTED)"
92   75              | "public (T_PUBLIC)"
93
94   76 identifier: "identifier (T_STRING)"
95   77           | semi_reserved
96
97   78 top_statement_list: top_statement_list top_statement
98   79                   | %empty
99
100   80 namespace_name: "identifier (T_STRING)"
101   81               | namespace_name "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
102
103   82 name: namespace_name
104   83     | "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" namespace_name
105   84     | "\\ (T_NS_SEPARATOR)" namespace_name
106
107   85 top_statement: statement
108   86              | function_declaration_statement
109   87              | class_declaration_statement
110   88              | trait_declaration_statement
111   89              | interface_declaration_statement
112   90              | "__halt_compiler (T_HALT_COMPILER)" '(' ')' ';'
113   91              | "namespace (T_NAMESPACE)" namespace_name ';'
114
115   92 $@1: %empty
116
117   93 top_statement: "namespace (T_NAMESPACE)" namespace_name $@1 '{' top_statement_list '}'
118
119   94 $@2: %empty
120
121   95 top_statement: "namespace (T_NAMESPACE)" $@2 '{' top_statement_list '}'
122   96              | "use (T_USE)" mixed_group_use_declaration ';'
123   97              | "use (T_USE)" use_type group_use_declaration ';'
124   98              | "use (T_USE)" use_declarations ';'
125   99              | "use (T_USE)" use_type use_declarations ';'
126  100              | "const (T_CONST)" const_list ';'
127
128  101 use_type: "function (T_FUNCTION)"
129  102         | "const (T_CONST)"
130
131  103 group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}'
132  104                      | "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}'
133
134  105 mixed_group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}'
135  106                            | "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}'
136
137  107 possible_comma: %empty
138  108               | ','
139
140  109 inline_use_declarations: inline_use_declarations ',' inline_use_declaration
141  110                        | inline_use_declaration
142
143  111 unprefixed_use_declarations: unprefixed_use_declarations ',' unprefixed_use_declaration
144  112                            | unprefixed_use_declaration
145
146  113 use_declarations: use_declarations ',' use_declaration
147  114                 | use_declaration
148
149  115 inline_use_declaration: unprefixed_use_declaration
150  116                       | use_type unprefixed_use_declaration
151
152  117 unprefixed_use_declaration: namespace_name
153  118                           | namespace_name "as (T_AS)" "identifier (T_STRING)"
154
155  119 use_declaration: unprefixed_use_declaration
156  120                | "\\ (T_NS_SEPARATOR)" unprefixed_use_declaration
157
158  121 const_list: const_list ',' const_decl
159  122           | const_decl
160
161  123 inner_statement_list: inner_statement_list inner_statement
162  124                     | %empty
163
164  125 inner_statement: statement
165  126                | function_declaration_statement
166  127                | class_declaration_statement
167  128                | trait_declaration_statement
168  129                | interface_declaration_statement
169  130                | "__halt_compiler (T_HALT_COMPILER)" '(' ')' ';'
170
171  131 statement: '{' inner_statement_list '}'
172  132          | if_stmt
173  133          | alt_if_stmt
174  134          | "while (T_WHILE)" '(' expr ')' while_statement
175  135          | "do (T_DO)" statement "while (T_WHILE)" '(' expr ')' ';'
176  136          | "for (T_FOR)" '(' for_exprs ';' for_exprs ';' for_exprs ')' for_statement
177  137          | "switch (T_SWITCH)" '(' expr ')' switch_case_list
178  138          | "break (T_BREAK)" optional_expr ';'
179  139          | "continue (T_CONTINUE)" optional_expr ';'
180  140          | "return (T_RETURN)" optional_expr ';'
181  141          | "global (T_GLOBAL)" global_var_list ';'
182  142          | "static (T_STATIC)" static_var_list ';'
183  143          | "echo (T_ECHO)" echo_expr_list ';'
184  144          | T_INLINE_HTML
185  145          | expr ';'
186  146          | "unset (T_UNSET)" '(' unset_variables possible_comma ')' ';'
187  147          | "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable ')' foreach_statement
188  148          | "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable ')' foreach_statement
189
190  149 $@3: %empty
191
192  150 statement: "declare (T_DECLARE)" '(' const_list ')' $@3 declare_statement
193  151          | ';'
194  152          | "try (T_TRY)" '{' inner_statement_list '}' catch_list finally_statement
195  153          | "throw (T_THROW)" expr ';'
196  154          | "goto (T_GOTO)" "identifier (T_STRING)" ';'
197  155          | "identifier (T_STRING)" ':'
198
199  156 catch_list: %empty
200  157           | catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list '}'
201
202  158 catch_name_list: name
203  159                | catch_name_list '|' name
204
205  160 finally_statement: %empty
206  161                  | "finally (T_FINALLY)" '{' inner_statement_list '}'
207
208  162 unset_variables: unset_variable
209  163                | unset_variables ',' unset_variable
210
211  164 unset_variable: variable
212
213  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
214
215  166 is_reference: %empty
216  167             | '&'
217
218  168 is_variadic: %empty
219  169            | "... (T_ELLIPSIS)"
220
221  170 @4: %empty
222
223  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}'
224
225  172 @5: %empty
226
227  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}'
228
229  174 class_modifiers: class_modifier
230  175                | class_modifiers class_modifier
231
232  176 class_modifier: "abstract (T_ABSTRACT)"
233  177               | "final (T_FINAL)"
234
235  178 @6: %empty
236
237  179 trait_declaration_statement: "trait (T_TRAIT)" @6 "identifier (T_STRING)" backup_doc_comment '{' class_statement_list '}'
238
239  180 @7: %empty
240
241  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 "identifier (T_STRING)" interface_extends_list backup_doc_comment '{' class_statement_list '}'
242
243  182 extends_from: %empty
244  183             | "extends (T_EXTENDS)" name
245
246  184 interface_extends_list: %empty
247  185                       | "extends (T_EXTENDS)" name_list
248
249  186 implements_list: %empty
250  187                | "implements (T_IMPLEMENTS)" name_list
251
252  188 foreach_variable: variable
253  189                 | '&' variable
254  190                 | "list (T_LIST)" '(' array_pair_list ')'
255  191                 | '[' array_pair_list ']'
256
257  192 for_statement: statement
258  193              | ':' inner_statement_list "endfor (T_ENDFOR)" ';'
259
260  194 foreach_statement: statement
261  195                  | ':' inner_statement_list "endforeach (T_ENDFOREACH)" ';'
262
263  196 declare_statement: statement
264  197                  | ':' inner_statement_list "enddeclare (T_ENDDECLARE)" ';'
265
266  198 switch_case_list: '{' case_list '}'
267  199                 | '{' ';' case_list '}'
268  200                 | ':' case_list "endswitch (T_ENDSWITCH)" ';'
269  201                 | ':' ';' case_list "endswitch (T_ENDSWITCH)" ';'
270
271  202 case_list: %empty
272  203          | case_list "case (T_CASE)" expr case_separator inner_statement_list
273  204          | case_list "default (T_DEFAULT)" case_separator inner_statement_list
274
275  205 case_separator: ':'
276  206               | ';'
277
278  207 while_statement: statement
279  208                | ':' inner_statement_list "endwhile (T_ENDWHILE)" ';'
280
281  209 if_stmt_without_else: "if (T_IF)" '(' expr ')' statement
282  210                     | if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' statement
283
284  211 if_stmt: if_stmt_without_else
285  212        | if_stmt_without_else "else (T_ELSE)" statement
286
287  213 alt_if_stmt_without_else: "if (T_IF)" '(' expr ')' ':' inner_statement_list
288  214                         | alt_if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' ':' inner_statement_list
289
290  215 alt_if_stmt: alt_if_stmt_without_else "endif (T_ENDIF)" ';'
291  216            | alt_if_stmt_without_else "else (T_ELSE)" ':' inner_statement_list "endif (T_ENDIF)" ';'
292
293  217 parameter_list: non_empty_parameter_list
294  218               | %empty
295
296  219 non_empty_parameter_list: parameter
297  220                         | non_empty_parameter_list ',' parameter
298
299  221 parameter: optional_type is_reference is_variadic "variable (T_VARIABLE)"
300  222          | optional_type is_reference is_variadic "variable (T_VARIABLE)" '=' expr
301
302  223 optional_type: %empty
303  224              | type_expr
304
305  225 type_expr: type
306  226          | '?' type
307
308  227 type: "array (T_ARRAY)"
309  228     | "callable (T_CALLABLE)"
310  229     | name
311
312  230 return_type: %empty
313  231            | ':' type_expr
314
315  232 argument_list: '(' ')'
316  233              | '(' non_empty_argument_list possible_comma ')'
317
318  234 non_empty_argument_list: argument
319  235                        | non_empty_argument_list ',' argument
320
321  236 argument: expr
322  237         | "... (T_ELLIPSIS)" expr
323
324  238 global_var_list: global_var_list ',' global_var
325  239                | global_var
326
327  240 global_var: simple_variable
328
329  241 static_var_list: static_var_list ',' static_var
330  242                | static_var
331
332  243 static_var: "variable (T_VARIABLE)"
333  244           | "variable (T_VARIABLE)" '=' expr
334
335  245 class_statement_list: class_statement_list class_statement
336  246                     | %empty
337
338  247 class_statement: variable_modifiers property_list ';'
339  248                | method_modifiers "const (T_CONST)" class_const_list ';'
340  249                | "use (T_USE)" name_list trait_adaptations
341  250                | method_modifiers function returns_ref identifier backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags
342
343  251 name_list: name
344  252          | name_list ',' name
345
346  253 trait_adaptations: ';'
347  254                  | '{' '}'
348  255                  | '{' trait_adaptation_list '}'
349
350  256 trait_adaptation_list: trait_adaptation
351  257                      | trait_adaptation_list trait_adaptation
352
353  258 trait_adaptation: trait_precedence ';'
354  259                 | trait_alias ';'
355
356  260 trait_precedence: absolute_trait_method_reference "insteadof (T_INSTEADOF)" name_list
357
358  261 trait_alias: trait_method_reference "as (T_AS)" "identifier (T_STRING)"
359  262            | trait_method_reference "as (T_AS)" reserved_non_modifiers
360  263            | trait_method_reference "as (T_AS)" member_modifier identifier
361  264            | trait_method_reference "as (T_AS)" member_modifier
362
363  265 trait_method_reference: identifier
364  266                       | absolute_trait_method_reference
365
366  267 absolute_trait_method_reference: name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier
367
368  268 method_body: ';'
369  269            | '{' inner_statement_list '}'
370
371  270 variable_modifiers: non_empty_member_modifiers
372  271                   | "var (T_VAR)"
373
374  272 method_modifiers: %empty
375  273                 | non_empty_member_modifiers
376
377  274 non_empty_member_modifiers: member_modifier
378  275                           | non_empty_member_modifiers member_modifier
379
380  276 member_modifier: "public (T_PUBLIC)"
381  277                | "protected (T_PROTECTED)"
382  278                | "private (T_PRIVATE)"
383  279                | "static (T_STATIC)"
384  280                | "abstract (T_ABSTRACT)"
385  281                | "final (T_FINAL)"
386
387  282 property_list: property_list ',' property
388  283              | property
389
390  284 property: "variable (T_VARIABLE)" backup_doc_comment
391  285         | "variable (T_VARIABLE)" '=' expr backup_doc_comment
392
393  286 class_const_list: class_const_list ',' class_const_decl
394  287                 | class_const_decl
395
396  288 class_const_decl: identifier '=' expr backup_doc_comment
397
398  289 const_decl: "identifier (T_STRING)" '=' expr backup_doc_comment
399
400  290 echo_expr_list: echo_expr_list ',' echo_expr
401  291               | echo_expr
402
403  292 echo_expr: expr
404
405  293 for_exprs: %empty
406  294          | non_empty_for_exprs
407
408  295 non_empty_for_exprs: non_empty_for_exprs ',' expr
409  296                    | expr
410
411  297 @8: %empty
412
413  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments extends_from implements_list backup_doc_comment '{' class_statement_list '}'
414
415  299 new_expr: "new (T_NEW)" class_name_reference ctor_arguments
416  300         | "new (T_NEW)" anonymous_class
417
418  301 expr: variable
419  302     | "list (T_LIST)" '(' array_pair_list ')' '=' expr
420  303     | '[' array_pair_list ']' '=' expr
421  304     | variable '=' expr
422  305     | variable '=' '&' variable
423  306     | "clone (T_CLONE)" expr
424  307     | variable "+= (T_PLUS_EQUAL)" expr
425  308     | variable "-= (T_MINUS_EQUAL)" expr
426  309     | variable "*= (T_MUL_EQUAL)" expr
427  310     | variable "**= (T_POW_EQUAL)" expr
428  311     | variable "/= (T_DIV_EQUAL)" expr
429  312     | variable ".= (T_CONCAT_EQUAL)" expr
430  313     | variable "%= (T_MOD_EQUAL)" expr
431  314     | variable "&= (T_AND_EQUAL)" expr
432  315     | variable "|= (T_OR_EQUAL)" expr
433  316     | variable "^= (T_XOR_EQUAL)" expr
434  317     | variable "<<= (T_SL_EQUAL)" expr
435  318     | variable ">>= (T_SR_EQUAL)" expr
436  319     | variable "++ (T_INC)"
437  320     | "++ (T_INC)" variable
438  321     | variable "-- (T_DEC)"
439  322     | "-- (T_DEC)" variable
440  323     | expr "|| (T_BOOLEAN_OR)" expr
441  324     | expr "&& (T_BOOLEAN_AND)" expr
442  325     | expr "or (T_LOGICAL_OR)" expr
443  326     | expr "and (T_LOGICAL_AND)" expr
444  327     | expr "xor (T_LOGICAL_XOR)" expr
445  328     | expr '|' expr
446  329     | expr '&' expr
447  330     | expr '^' expr
448  331     | expr '.' expr
449  332     | expr '+' expr
450  333     | expr '-' expr
451  334     | expr '*' expr
452  335     | expr "** (T_POW)" expr
453  336     | expr '/' expr
454  337     | expr '%' expr
455  338     | expr "<< (T_SL)" expr
456  339     | expr ">> (T_SR)" expr
457  340     | '+' expr
458  341     | '-' expr
459  342     | '!' expr
460  343     | '~' expr
461  344     | expr "=== (T_IS_IDENTICAL)" expr
462  345     | expr "!== (T_IS_NOT_IDENTICAL)" expr
463  346     | expr "== (T_IS_EQUAL)" expr
464  347     | expr "!= (T_IS_NOT_EQUAL)" expr
465  348     | expr '<' expr
466  349     | expr "<= (T_IS_SMALLER_OR_EQUAL)" expr
467  350     | expr '>' expr
468  351     | expr ">= (T_IS_GREATER_OR_EQUAL)" expr
469  352     | expr "<=> (T_SPACESHIP)" expr
470  353     | expr "instanceof (T_INSTANCEOF)" class_name_reference
471  354     | '(' expr ')'
472  355     | new_expr
473  356     | expr '?' expr ':' expr
474  357     | expr '?' ':' expr
475  358     | expr "?? (T_COALESCE)" expr
476  359     | internal_functions_in_yacc
477  360     | "(int) (T_INT_CAST)" expr
478  361     | "(double) (T_DOUBLE_CAST)" expr
479  362     | "(string) (T_STRING_CAST)" expr
480  363     | "(array) (T_ARRAY_CAST)" expr
481  364     | "(object) (T_OBJECT_CAST)" expr
482  365     | "(bool) (T_BOOL_CAST)" expr
483  366     | "(unset) (T_UNSET_CAST)" expr
484  367     | "exit (T_EXIT)" exit_expr
485  368     | '@' expr
486  369     | scalar
487  370     | '`' backticks_expr '`'
488  371     | "print (T_PRINT)" expr
489  372     | "yield (T_YIELD)"
490  373     | "yield (T_YIELD)" expr
491  374     | "yield (T_YIELD)" expr "=> (T_DOUBLE_ARROW)" expr
492  375     | "yield from (T_YIELD_FROM)" expr
493  376     | function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
494  377     | "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
495
496  378 function: "function (T_FUNCTION)"
497
498  379 backup_doc_comment: %empty
499
500  380 backup_fn_flags: %empty
501
502  381 returns_ref: %empty
503  382            | '&'
504
505  383 lexical_vars: %empty
506  384             | "use (T_USE)" '(' lexical_var_list ')'
507
508  385 lexical_var_list: lexical_var_list ',' lexical_var
509  386                 | lexical_var
510
511  387 lexical_var: "variable (T_VARIABLE)"
512  388            | '&' "variable (T_VARIABLE)"
513
514  389 function_call: name argument_list
515  390              | class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list
516  391              | variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list
517  392              | callable_expr argument_list
518
519  393 class_name: "static (T_STATIC)"
520  394           | name
521
522  395 class_name_reference: class_name
523  396                     | new_variable
524
525  397 exit_expr: %empty
526  398          | '(' optional_expr ')'
527
528  399 backticks_expr: %empty
529  400               | "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"
530  401               | encaps_list
531
532  402 ctor_arguments: %empty
533  403               | argument_list
534
535  404 dereferencable_scalar: "array (T_ARRAY)" '(' array_pair_list ')'
536  405                      | '[' array_pair_list ']'
537  406                      | "quoted-string (T_CONSTANT_ENCAPSED_STRING)"
538
539  407 scalar: "integer number (T_LNUMBER)"
540  408       | "floating-point number (T_DNUMBER)"
541  409       | "__LINE__ (T_LINE)"
542  410       | "__FILE__ (T_FILE)"
543  411       | "__DIR__ (T_DIR)"
544  412       | "__TRAIT__ (T_TRAIT_C)"
545  413       | "__METHOD__ (T_METHOD_C)"
546  414       | "__FUNCTION__ (T_FUNC_C)"
547  415       | "__NAMESPACE__ (T_NS_C)"
548  416       | "__CLASS__ (T_CLASS_C)"
549  417       | "heredoc start (T_START_HEREDOC)" "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" "heredoc end (T_END_HEREDOC)"
550  418       | "heredoc start (T_START_HEREDOC)" "heredoc end (T_END_HEREDOC)"
551  419       | '"' encaps_list '"'
552  420       | "heredoc start (T_START_HEREDOC)" encaps_list "heredoc end (T_END_HEREDOC)"
553  421       | dereferencable_scalar
554  422       | constant
555
556  423 constant: name
557  424         | class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier
558  425         | variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier
559
560  426 optional_expr: %empty
561  427              | expr
562
563  428 variable_class_name: dereferencable
564
565  429 dereferencable: variable
566  430               | '(' expr ')'
567  431               | dereferencable_scalar
568
569  432 callable_expr: callable_variable
570  433              | '(' expr ')'
571  434              | dereferencable_scalar
572
573  435 callable_variable: simple_variable
574  436                  | dereferencable '[' optional_expr ']'
575  437                  | constant '[' optional_expr ']'
576  438                  | dereferencable '{' expr '}'
577  439                  | dereferencable "-> (T_OBJECT_OPERATOR)" property_name argument_list
578  440                  | function_call
579
580  441 variable: callable_variable
581  442         | static_member
582  443         | dereferencable "-> (T_OBJECT_OPERATOR)" property_name
583
584  444 simple_variable: "variable (T_VARIABLE)"
585  445                | '$' '{' expr '}'
586  446                | '$' simple_variable
587
588  447 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable
589  448              | variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable
590
591  449 new_variable: simple_variable
592  450             | new_variable '[' optional_expr ']'
593  451             | new_variable '{' expr '}'
594  452             | new_variable "-> (T_OBJECT_OPERATOR)" property_name
595  453             | class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable
596  454             | new_variable ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable
597
598  455 member_name: identifier
599  456            | '{' expr '}'
600  457            | simple_variable
601
602  458 property_name: "identifier (T_STRING)"
603  459              | '{' expr '}'
604  460              | simple_variable
605
606  461 array_pair_list: non_empty_array_pair_list
607
608  462 possible_array_pair: %empty
609  463                    | array_pair
610
611  464 non_empty_array_pair_list: non_empty_array_pair_list ',' possible_array_pair
612  465                          | possible_array_pair
613
614  466 array_pair: expr "=> (T_DOUBLE_ARROW)" expr
615  467           | expr
616  468           | expr "=> (T_DOUBLE_ARROW)" '&' variable
617  469           | '&' variable
618  470           | expr "=> (T_DOUBLE_ARROW)" "list (T_LIST)" '(' array_pair_list ')'
619  471           | "list (T_LIST)" '(' array_pair_list ')'
620
621  472 encaps_list: encaps_list encaps_var
622  473            | encaps_list "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"
623  474            | encaps_var
624  475            | "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" encaps_var
625
626  476 encaps_var: "variable (T_VARIABLE)"
627  477           | "variable (T_VARIABLE)" '[' encaps_var_offset ']'
628  478           | "variable (T_VARIABLE)" "-> (T_OBJECT_OPERATOR)" "identifier (T_STRING)"
629  479           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" expr '}'
630  480           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '}'
631  481           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' expr ']' '}'
632  482           | "{$ (T_CURLY_OPEN)" variable '}'
633
634  483 encaps_var_offset: "identifier (T_STRING)"
635  484                  | "number (T_NUM_STRING)"
636  485                  | '-' "number (T_NUM_STRING)"
637  486                  | "variable (T_VARIABLE)"
638
639  487 internal_functions_in_yacc: "isset (T_ISSET)" '(' isset_variables possible_comma ')'
640  488                           | "empty (T_EMPTY)" '(' expr ')'
641  489                           | "include (T_INCLUDE)" expr
642  490                           | "include_once (T_INCLUDE_ONCE)" expr
643  491                           | "eval (T_EVAL)" '(' expr ')'
644  492                           | "require (T_REQUIRE)" expr
645  493                           | "require_once (T_REQUIRE_ONCE)" expr
646
647  494 isset_variables: isset_variable
648  495                | isset_variables ',' isset_variable
649
650  496 isset_variable: expr
651
652
653Terminals, with rules where they appear
654
655"end of file" (0) 0
656'!' (33) 342
657'"' (34) 419
658'$' (36) 445 446
659'%' (37) 337
660'&' (38) 167 189 305 329 382 388 468 469
661'(' (40) 90 130 134 135 136 137 146 147 148 150 157 165 190 209 210
662    213 214 232 233 250 302 354 376 377 384 398 404 430 433 470 471
663    487 488 491
664')' (41) 90 130 134 135 136 137 146 147 148 150 157 165 190 209 210
665    213 214 232 233 250 302 354 376 377 384 398 404 430 433 470 471
666    487 488 491
667'*' (42) 334
668'+' (43) 332 340
669',' (44) 108 109 111 113 121 163 220 235 238 241 252 282 286 290 295
670    385 464 495
671'-' (45) 333 341 485
672'.' (46) 331
673'/' (47) 336
674':' (58) 155 193 195 197 200 201 205 208 213 214 216 231 356 357
675';' (59) 90 91 96 97 98 99 100 130 135 136 138 139 140 141 142 143
676    145 146 151 153 154 193 195 197 199 200 201 206 208 215 216 247
677    248 253 258 259 268
678'<' (60) 348
679'=' (61) 222 244 285 288 289 302 303 304 305
680'>' (62) 350
681'?' (63) 226 356 357
682'@' (64) 368
683'[' (91) 191 303 405 436 437 450 477 481
684']' (93) 191 303 405 436 437 450 477 481
685'^' (94) 330
686'`' (96) 370
687'{' (123) 93 95 103 104 105 106 131 152 157 161 165 171 173 179 181
688    198 199 254 255 269 298 376 377 438 445 451 456 459
689'|' (124) 159 328
690'}' (125) 93 95 103 104 105 106 131 152 157 161 165 171 173 179 181
691    198 199 254 255 269 298 376 377 438 445 451 456 459 479 480 481
692    482
693'~' (126) 343
694error (256)
695"include (T_INCLUDE)" (258) 2 489
696"include_once (T_INCLUDE_ONCE)" (259) 3 490
697"eval (T_EVAL)" (260) 4 491
698"require (T_REQUIRE)" (261) 5 492
699"require_once (T_REQUIRE_ONCE)" (262) 6 493
700"or (T_LOGICAL_OR)" (263) 7 325
701"xor (T_LOGICAL_XOR)" (264) 8 327
702"and (T_LOGICAL_AND)" (265) 9 326
703"print (T_PRINT)" (266) 45 371
704"yield (T_YIELD)" (267) 46 372 373 374
705"=> (T_DOUBLE_ARROW)" (268) 148 374 466 468 470
706"yield from (T_YIELD_FROM)" (269) 375
707"+= (T_PLUS_EQUAL)" (270) 307
708"-= (T_MINUS_EQUAL)" (271) 308
709"*= (T_MUL_EQUAL)" (272) 309
710"/= (T_DIV_EQUAL)" (273) 311
711".= (T_CONCAT_EQUAL)" (274) 312
712"%= (T_MOD_EQUAL)" (275) 313
713"&= (T_AND_EQUAL)" (276) 314
714"|= (T_OR_EQUAL)" (277) 315
715"^= (T_XOR_EQUAL)" (278) 316
716"<<= (T_SL_EQUAL)" (279) 317
717">>= (T_SR_EQUAL)" (280) 318
718"**= (T_POW_EQUAL)" (281) 310
719"?? (T_COALESCE)" (282) 358
720"|| (T_BOOLEAN_OR)" (283) 323
721"&& (T_BOOLEAN_AND)" (284) 324
722"== (T_IS_EQUAL)" (285) 346
723"!= (T_IS_NOT_EQUAL)" (286) 347
724"=== (T_IS_IDENTICAL)" (287) 344
725"!== (T_IS_NOT_IDENTICAL)" (288) 345
726"<=> (T_SPACESHIP)" (289) 352
727"<= (T_IS_SMALLER_OR_EQUAL)" (290) 349
728">= (T_IS_GREATER_OR_EQUAL)" (291) 351
729"<< (T_SL)" (292) 338
730">> (T_SR)" (293) 339
731"instanceof (T_INSTANCEOF)" (294) 10 353
732"++ (T_INC)" (295) 319 320
733"-- (T_DEC)" (296) 321 322
734"(int) (T_INT_CAST)" (297) 360
735"(double) (T_DOUBLE_CAST)" (298) 361
736"(string) (T_STRING_CAST)" (299) 362
737"(array) (T_ARRAY_CAST)" (300) 363
738"(object) (T_OBJECT_CAST)" (301) 364
739"(bool) (T_BOOL_CAST)" (302) 365
740"(unset) (T_UNSET_CAST)" (303) 366
741"** (T_POW)" (304) 335
742"new (T_NEW)" (305) 11 299 300
743"clone (T_CLONE)" (306) 12 306
744T_NOELSE (307)
745"elseif (T_ELSEIF)" (308) 15 210 214
746"else (T_ELSE)" (309) 16 212 216
747"endif (T_ENDIF)" (310) 17 215 216
748"static (T_STATIC)" (311) 70 142 279 377 393
749"abstract (T_ABSTRACT)" (312) 71 176 280
750"final (T_FINAL)" (313) 72 177 281
751"private (T_PRIVATE)" (314) 73 278
752"protected (T_PROTECTED)" (315) 74 277
753"public (T_PUBLIC)" (316) 75 276
754"integer number (T_LNUMBER)" (317) 407
755"floating-point number (T_DNUMBER)" (318) 408
756"identifier (T_STRING)" (319) 76 80 81 118 154 155 165 171 173 179
757    181 261 289 458 478 483
758"variable (T_VARIABLE)" (320) 157 221 222 243 244 284 285 387 388 444
759    476 477 478 486
760T_INLINE_HTML (321) 144
761"quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" (322) 400
762    417 473 475
763"quoted-string (T_CONSTANT_ENCAPSED_STRING)" (323) 406
764"variable name (T_STRING_VARNAME)" (324) 480 481
765"number (T_NUM_STRING)" (325) 484 485
766"exit (T_EXIT)" (326) 13 367
767"if (T_IF)" (327) 14 209 213
768"echo (T_ECHO)" (328) 18 143
769"do (T_DO)" (329) 19 135
770"while (T_WHILE)" (330) 20 134 135
771"endwhile (T_ENDWHILE)" (331) 21 208
772"for (T_FOR)" (332) 22 136
773"endfor (T_ENDFOR)" (333) 23 193
774"foreach (T_FOREACH)" (334) 24 147 148
775"endforeach (T_ENDFOREACH)" (335) 25 195
776"declare (T_DECLARE)" (336) 26 150
777"enddeclare (T_ENDDECLARE)" (337) 27 197
778"as (T_AS)" (338) 28 118 147 148 261 262 263 264
779"switch (T_SWITCH)" (339) 48 137
780"endswitch (T_ENDSWITCH)" (340) 49 200 201
781"case (T_CASE)" (341) 50 203
782"default (T_DEFAULT)" (342) 51 204
783"break (T_BREAK)" (343) 52 138
784"continue (T_CONTINUE)" (344) 40 139
785"goto (T_GOTO)" (345) 41 154
786"function (T_FUNCTION)" (346) 42 101 378
787"const (T_CONST)" (347) 43 100 102 248
788"return (T_RETURN)" (348) 44 140
789"try (T_TRY)" (349) 29 152
790"catch (T_CATCH)" (350) 30 157
791"finally (T_FINALLY)" (351) 31 161
792"throw (T_THROW)" (352) 32 153
793"use (T_USE)" (353) 33 96 97 98 99 249 384
794"insteadof (T_INSTEADOF)" (354) 34 260
795"global (T_GLOBAL)" (355) 35 141
796"var (T_VAR)" (356) 36 271
797"unset (T_UNSET)" (357) 37 146
798"isset (T_ISSET)" (358) 38 487
799"empty (T_EMPTY)" (359) 39 488
800"__halt_compiler (T_HALT_COMPILER)" (360) 90 130
801"class (T_CLASS)" (361) 60 171 173 298
802"trait (T_TRAIT)" (362) 58 179
803"interface (T_INTERFACE)" (363) 59 181
804"extends (T_EXTENDS)" (364) 55 183 185
805"implements (T_IMPLEMENTS)" (365) 56 187
806"-> (T_OBJECT_OPERATOR)" (366) 439 443 452 478
807"list (T_LIST)" (367) 47 190 302 470 471
808"array (T_ARRAY)" (368) 53 227 404
809"callable (T_CALLABLE)" (369) 54 228
810"__LINE__ (T_LINE)" (370) 65 409
811"__FILE__ (T_FILE)" (371) 66 410
812"__DIR__ (T_DIR)" (372) 67 411
813"__CLASS__ (T_CLASS_C)" (373) 61 416
814"__TRAIT__ (T_TRAIT_C)" (374) 62 412
815"__METHOD__ (T_METHOD_C)" (375) 64 413
816"__FUNCTION__ (T_FUNC_C)" (376) 63 414
817"comment (T_COMMENT)" (377)
818"doc comment (T_DOC_COMMENT)" (378)
819"open tag (T_OPEN_TAG)" (379)
820"open tag with echo (T_OPEN_TAG_WITH_ECHO)" (380)
821"close tag (T_CLOSE_TAG)" (381)
822"whitespace (T_WHITESPACE)" (382)
823"heredoc start (T_START_HEREDOC)" (383) 417 418 420
824"heredoc end (T_END_HEREDOC)" (384) 417 418 420
825"${ (T_DOLLAR_OPEN_CURLY_BRACES)" (385) 479 480 481
826"{$ (T_CURLY_OPEN)" (386) 482
827":: (T_PAAMAYIM_NEKUDOTAYIM)" (387) 267 390 391 424 425 447 448 453
828    454
829"namespace (T_NAMESPACE)" (388) 57 83 91 93 95
830"__NAMESPACE__ (T_NS_C)" (389) 68 415
831"\\ (T_NS_SEPARATOR)" (390) 81 83 84 103 104 105 106 120
832"... (T_ELLIPSIS)" (391) 169 237
833T_ERROR (392)
834
835
836Nonterminals, with rules where they appear
837
838$accept (166)
839    on left: 0
840start (167)
841    on left: 1, on right: 0
842reserved_non_modifiers (168)
843    on left: 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
844    23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
845    44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
846    65 66 67 68, on right: 69 262
847semi_reserved (169)
848    on left: 69 70 71 72 73 74 75, on right: 77
849identifier (170)
850    on left: 76 77, on right: 250 263 265 267 288 424 425 455
851top_statement_list (171)
852    on left: 78 79, on right: 1 78 93 95
853namespace_name (172)
854    on left: 80 81, on right: 81 82 83 84 91 93 103 104 105 106 117
855    118
856name (173)
857    on left: 82 83 84, on right: 158 159 183 229 251 252 267 389 394
858    423
859top_statement (174)
860    on left: 85 86 87 88 89 90 91 93 95 96 97 98 99 100, on right:
861    78
862$@1 (175)
863    on left: 92, on right: 93
864$@2 (176)
865    on left: 94, on right: 95
866use_type (177)
867    on left: 101 102, on right: 97 99 116
868group_use_declaration (178)
869    on left: 103 104, on right: 97
870mixed_group_use_declaration (179)
871    on left: 105 106, on right: 96
872possible_comma (180)
873    on left: 107 108, on right: 103 104 105 106 146 233 487
874inline_use_declarations (181)
875    on left: 109 110, on right: 105 106 109
876unprefixed_use_declarations (182)
877    on left: 111 112, on right: 103 104 111
878use_declarations (183)
879    on left: 113 114, on right: 98 99 113
880inline_use_declaration (184)
881    on left: 115 116, on right: 109 110
882unprefixed_use_declaration (185)
883    on left: 117 118, on right: 111 112 115 116 119 120
884use_declaration (186)
885    on left: 119 120, on right: 113 114
886const_list (187)
887    on left: 121 122, on right: 100 121 150
888inner_statement_list (188)
889    on left: 123 124, on right: 123 131 152 157 161 165 193 195 197
890    203 204 208 213 214 216 269 376 377
891inner_statement (189)
892    on left: 125 126 127 128 129 130, on right: 123
893statement (190)
894    on left: 131 132 133 134 135 136 137 138 139 140 141 142 143 144
895    145 146 147 148 150 151 152 153 154 155, on right: 85 125 135 192
896    194 196 207 209 210 212
897$@3 (191)
898    on left: 149, on right: 150
899catch_list (192)
900    on left: 156 157, on right: 152 157
901catch_name_list (193)
902    on left: 158 159, on right: 157 159
903finally_statement (194)
904    on left: 160 161, on right: 152
905unset_variables (195)
906    on left: 162 163, on right: 146 163
907unset_variable (196)
908    on left: 164, on right: 162 163
909function_declaration_statement (197)
910    on left: 165, on right: 86 126
911is_reference (198)
912    on left: 166 167, on right: 221 222
913is_variadic (199)
914    on left: 168 169, on right: 221 222
915class_declaration_statement (200)
916    on left: 171 173, on right: 87 127
917@4 (201)
918    on left: 170, on right: 171
919@5 (202)
920    on left: 172, on right: 173
921class_modifiers (203)
922    on left: 174 175, on right: 171 175
923class_modifier (204)
924    on left: 176 177, on right: 174 175
925trait_declaration_statement (205)
926    on left: 179, on right: 88 128
927@6 (206)
928    on left: 178, on right: 179
929interface_declaration_statement (207)
930    on left: 181, on right: 89 129
931@7 (208)
932    on left: 180, on right: 181
933extends_from (209)
934    on left: 182 183, on right: 171 173 298
935interface_extends_list (210)
936    on left: 184 185, on right: 181
937implements_list (211)
938    on left: 186 187, on right: 171 173 298
939foreach_variable (212)
940    on left: 188 189 190 191, on right: 147 148
941for_statement (213)
942    on left: 192 193, on right: 136
943foreach_statement (214)
944    on left: 194 195, on right: 147 148
945declare_statement (215)
946    on left: 196 197, on right: 150
947switch_case_list (216)
948    on left: 198 199 200 201, on right: 137
949case_list (217)
950    on left: 202 203 204, on right: 198 199 200 201 203 204
951case_separator (218)
952    on left: 205 206, on right: 203 204
953while_statement (219)
954    on left: 207 208, on right: 134
955if_stmt_without_else (220)
956    on left: 209 210, on right: 210 211 212
957if_stmt (221)
958    on left: 211 212, on right: 132
959alt_if_stmt_without_else (222)
960    on left: 213 214, on right: 214 215 216
961alt_if_stmt (223)
962    on left: 215 216, on right: 133
963parameter_list (224)
964    on left: 217 218, on right: 165 250 376 377
965non_empty_parameter_list (225)
966    on left: 219 220, on right: 217 220
967parameter (226)
968    on left: 221 222, on right: 219 220
969optional_type (227)
970    on left: 223 224, on right: 221 222
971type_expr (228)
972    on left: 225 226, on right: 224 231
973type (229)
974    on left: 227 228 229, on right: 225 226
975return_type (230)
976    on left: 230 231, on right: 165 250 376 377
977argument_list (231)
978    on left: 232 233, on right: 389 390 391 392 403 439
979non_empty_argument_list (232)
980    on left: 234 235, on right: 233 235
981argument (233)
982    on left: 236 237, on right: 234 235
983global_var_list (234)
984    on left: 238 239, on right: 141 238
985global_var (235)
986    on left: 240, on right: 238 239
987static_var_list (236)
988    on left: 241 242, on right: 142 241
989static_var (237)
990    on left: 243 244, on right: 241 242
991class_statement_list (238)
992    on left: 245 246, on right: 171 173 179 181 245 298
993class_statement (239)
994    on left: 247 248 249 250, on right: 245
995name_list (240)
996    on left: 251 252, on right: 185 187 249 252 260
997trait_adaptations (241)
998    on left: 253 254 255, on right: 249
999trait_adaptation_list (242)
1000    on left: 256 257, on right: 255 257
1001trait_adaptation (243)
1002    on left: 258 259, on right: 256 257
1003trait_precedence (244)
1004    on left: 260, on right: 258
1005trait_alias (245)
1006    on left: 261 262 263 264, on right: 259
1007trait_method_reference (246)
1008    on left: 265 266, on right: 261 262 263 264
1009absolute_trait_method_reference (247)
1010    on left: 267, on right: 260 266
1011method_body (248)
1012    on left: 268 269, on right: 250
1013variable_modifiers (249)
1014    on left: 270 271, on right: 247
1015method_modifiers (250)
1016    on left: 272 273, on right: 248 250
1017non_empty_member_modifiers (251)
1018    on left: 274 275, on right: 270 273 275
1019member_modifier (252)
1020    on left: 276 277 278 279 280 281, on right: 263 264 274 275
1021property_list (253)
1022    on left: 282 283, on right: 247 282
1023property (254)
1024    on left: 284 285, on right: 282 283
1025class_const_list (255)
1026    on left: 286 287, on right: 248 286
1027class_const_decl (256)
1028    on left: 288, on right: 286 287
1029const_decl (257)
1030    on left: 289, on right: 121 122
1031echo_expr_list (258)
1032    on left: 290 291, on right: 143 290
1033echo_expr (259)
1034    on left: 292, on right: 290 291
1035for_exprs (260)
1036    on left: 293 294, on right: 136
1037non_empty_for_exprs (261)
1038    on left: 295 296, on right: 294 295
1039anonymous_class (262)
1040    on left: 298, on right: 300
1041@8 (263)
1042    on left: 297, on right: 298
1043new_expr (264)
1044    on left: 299 300, on right: 355
1045expr (265)
1046    on left: 301 302 303 304 305 306 307 308 309 310 311 312 313 314
1047    315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330
1048    331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346
1049    347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362
1050    363 364 365 366 367 368 369 370 371 372 373 374 375 376 377, on right:
1051    134 135 137 145 147 148 153 203 209 210 213 214 222 236 237 244
1052    285 288 289 292 295 296 302 303 304 306 307 308 309 310 311 312
1053    313 314 315 316 317 318 323 324 325 326 327 328 329 330 331 332
1054    333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348
1055    349 350 351 352 353 354 356 357 358 360 361 362 363 364 365 366
1056    368 371 373 374 375 427 430 433 438 445 451 456 459 466 467 468
1057    470 479 481 488 489 490 491 492 493 496
1058function (266)
1059    on left: 378, on right: 165 250 376 377
1060backup_doc_comment (267)
1061    on left: 379, on right: 165 171 173 179 181 250 284 285 288 289
1062    298 376 377
1063backup_fn_flags (268)
1064    on left: 380, on right: 165 250 376 377
1065returns_ref (269)
1066    on left: 381 382, on right: 165 250 376 377
1067lexical_vars (270)
1068    on left: 383 384, on right: 376 377
1069lexical_var_list (271)
1070    on left: 385 386, on right: 384 385
1071lexical_var (272)
1072    on left: 387 388, on right: 385 386
1073function_call (273)
1074    on left: 389 390 391 392, on right: 440
1075class_name (274)
1076    on left: 393 394, on right: 390 395 424 447 453
1077class_name_reference (275)
1078    on left: 395 396, on right: 299 353
1079exit_expr (276)
1080    on left: 397 398, on right: 367
1081backticks_expr (277)
1082    on left: 399 400 401, on right: 370
1083ctor_arguments (278)
1084    on left: 402 403, on right: 298 299
1085dereferencable_scalar (279)
1086    on left: 404 405 406, on right: 421 431 434
1087scalar (280)
1088    on left: 407 408 409 410 411 412 413 414 415 416 417 418 419 420
1089    421 422, on right: 369
1090constant (281)
1091    on left: 423 424 425, on right: 422 437
1092optional_expr (282)
1093    on left: 426 427, on right: 138 139 140 398 436 437 450
1094variable_class_name (283)
1095    on left: 428, on right: 391 425 448
1096dereferencable (284)
1097    on left: 429 430 431, on right: 428 436 438 439 443
1098callable_expr (285)
1099    on left: 432 433 434, on right: 392
1100callable_variable (286)
1101    on left: 435 436 437 438 439 440, on right: 432 441
1102variable (287)
1103    on left: 441 442 443, on right: 164 188 189 301 304 305 307 308
1104    309 310 311 312 313 314 315 316 317 318 319 320 321 322 429 468
1105    469 482
1106simple_variable (288)
1107    on left: 444 445 446, on right: 240 435 446 447 448 449 453 454
1108    457 460
1109static_member (289)
1110    on left: 447 448, on right: 442
1111new_variable (290)
1112    on left: 449 450 451 452 453 454, on right: 396 450 451 452 454
1113member_name (291)
1114    on left: 455 456 457, on right: 390 391
1115property_name (292)
1116    on left: 458 459 460, on right: 439 443 452
1117array_pair_list (293)
1118    on left: 461, on right: 190 191 302 303 404 405 470 471
1119possible_array_pair (294)
1120    on left: 462 463, on right: 464 465
1121non_empty_array_pair_list (295)
1122    on left: 464 465, on right: 461 464
1123array_pair (296)
1124    on left: 466 467 468 469 470 471, on right: 463
1125encaps_list (297)
1126    on left: 472 473 474 475, on right: 401 419 420 472 473
1127encaps_var (298)
1128    on left: 476 477 478 479 480 481 482, on right: 472 474 475
1129encaps_var_offset (299)
1130    on left: 483 484 485 486, on right: 477
1131internal_functions_in_yacc (300)
1132    on left: 487 488 489 490 491 492 493, on right: 359
1133isset_variables (301)
1134    on left: 494 495, on right: 487 495
1135isset_variable (302)
1136    on left: 496, on right: 494 495
1137
1138
1139State 0
1140
1141    0 $accept: . start "end of file"
1142
1143    $default  reduce using rule 79 (top_statement_list)
1144
1145    start               go to state 1
1146    top_statement_list  go to state 2
1147
1148
1149State 1
1150
1151    0 $accept: start . "end of file"
1152
1153    "end of file"  shift, and go to state 3
1154
1155
1156State 2
1157
1158    1 start: top_statement_list .
1159   78 top_statement_list: top_statement_list . top_statement
1160
1161    "include (T_INCLUDE)"                         shift, and go to state 4
1162    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
1163    "eval (T_EVAL)"                               shift, and go to state 6
1164    "require (T_REQUIRE)"                         shift, and go to state 7
1165    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
1166    "print (T_PRINT)"                             shift, and go to state 9
1167    "yield (T_YIELD)"                             shift, and go to state 10
1168    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
1169    '+'                                           shift, and go to state 12
1170    '-'                                           shift, and go to state 13
1171    '!'                                           shift, and go to state 14
1172    '~'                                           shift, and go to state 15
1173    "++ (T_INC)"                                  shift, and go to state 16
1174    "-- (T_DEC)"                                  shift, and go to state 17
1175    "(int) (T_INT_CAST)"                          shift, and go to state 18
1176    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
1177    "(string) (T_STRING_CAST)"                    shift, and go to state 20
1178    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
1179    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
1180    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
1181    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
1182    '@'                                           shift, and go to state 25
1183    '['                                           shift, and go to state 26
1184    "new (T_NEW)"                                 shift, and go to state 27
1185    "clone (T_CLONE)"                             shift, and go to state 28
1186    "static (T_STATIC)"                           shift, and go to state 29
1187    "abstract (T_ABSTRACT)"                       shift, and go to state 30
1188    "final (T_FINAL)"                             shift, and go to state 31
1189    "integer number (T_LNUMBER)"                  shift, and go to state 32
1190    "floating-point number (T_DNUMBER)"           shift, and go to state 33
1191    "identifier (T_STRING)"                       shift, and go to state 34
1192    "variable (T_VARIABLE)"                       shift, and go to state 35
1193    T_INLINE_HTML                                 shift, and go to state 36
1194    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
1195    "exit (T_EXIT)"                               shift, and go to state 38
1196    "if (T_IF)"                                   shift, and go to state 39
1197    "echo (T_ECHO)"                               shift, and go to state 40
1198    "do (T_DO)"                                   shift, and go to state 41
1199    "while (T_WHILE)"                             shift, and go to state 42
1200    "for (T_FOR)"                                 shift, and go to state 43
1201    "foreach (T_FOREACH)"                         shift, and go to state 44
1202    "declare (T_DECLARE)"                         shift, and go to state 45
1203    "switch (T_SWITCH)"                           shift, and go to state 46
1204    "break (T_BREAK)"                             shift, and go to state 47
1205    "continue (T_CONTINUE)"                       shift, and go to state 48
1206    "goto (T_GOTO)"                               shift, and go to state 49
1207    "function (T_FUNCTION)"                       shift, and go to state 50
1208    "const (T_CONST)"                             shift, and go to state 51
1209    "return (T_RETURN)"                           shift, and go to state 52
1210    "try (T_TRY)"                                 shift, and go to state 53
1211    "throw (T_THROW)"                             shift, and go to state 54
1212    "use (T_USE)"                                 shift, and go to state 55
1213    "global (T_GLOBAL)"                           shift, and go to state 56
1214    "unset (T_UNSET)"                             shift, and go to state 57
1215    "isset (T_ISSET)"                             shift, and go to state 58
1216    "empty (T_EMPTY)"                             shift, and go to state 59
1217    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 60
1218    "class (T_CLASS)"                             shift, and go to state 61
1219    "trait (T_TRAIT)"                             shift, and go to state 62
1220    "interface (T_INTERFACE)"                     shift, and go to state 63
1221    "list (T_LIST)"                               shift, and go to state 64
1222    "array (T_ARRAY)"                             shift, and go to state 65
1223    "__LINE__ (T_LINE)"                           shift, and go to state 66
1224    "__FILE__ (T_FILE)"                           shift, and go to state 67
1225    "__DIR__ (T_DIR)"                             shift, and go to state 68
1226    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
1227    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
1228    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
1229    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
1230    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
1231    "namespace (T_NAMESPACE)"                     shift, and go to state 74
1232    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
1233    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
1234    '('                                           shift, and go to state 77
1235    ';'                                           shift, and go to state 78
1236    '{'                                           shift, and go to state 79
1237    '`'                                           shift, and go to state 80
1238    '"'                                           shift, and go to state 81
1239    '$'                                           shift, and go to state 82
1240
1241    $default  reduce using rule 1 (start)
1242
1243    namespace_name                   go to state 83
1244    name                             go to state 84
1245    top_statement                    go to state 85
1246    statement                        go to state 86
1247    function_declaration_statement   go to state 87
1248    class_declaration_statement      go to state 88
1249    class_modifiers                  go to state 89
1250    class_modifier                   go to state 90
1251    trait_declaration_statement      go to state 91
1252    interface_declaration_statement  go to state 92
1253    if_stmt_without_else             go to state 93
1254    if_stmt                          go to state 94
1255    alt_if_stmt_without_else         go to state 95
1256    alt_if_stmt                      go to state 96
1257    new_expr                         go to state 97
1258    expr                             go to state 98
1259    function                         go to state 99
1260    function_call                    go to state 100
1261    class_name                       go to state 101
1262    dereferencable_scalar            go to state 102
1263    scalar                           go to state 103
1264    constant                         go to state 104
1265    variable_class_name              go to state 105
1266    dereferencable                   go to state 106
1267    callable_expr                    go to state 107
1268    callable_variable                go to state 108
1269    variable                         go to state 109
1270    simple_variable                  go to state 110
1271    static_member                    go to state 111
1272    internal_functions_in_yacc       go to state 112
1273
1274
1275State 3
1276
1277    0 $accept: start "end of file" .
1278
1279    $default  accept
1280
1281
1282State 4
1283
1284  489 internal_functions_in_yacc: "include (T_INCLUDE)" . expr
1285
1286    "include (T_INCLUDE)"                         shift, and go to state 4
1287    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
1288    "eval (T_EVAL)"                               shift, and go to state 6
1289    "require (T_REQUIRE)"                         shift, and go to state 7
1290    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
1291    "print (T_PRINT)"                             shift, and go to state 9
1292    "yield (T_YIELD)"                             shift, and go to state 10
1293    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
1294    '+'                                           shift, and go to state 12
1295    '-'                                           shift, and go to state 13
1296    '!'                                           shift, and go to state 14
1297    '~'                                           shift, and go to state 15
1298    "++ (T_INC)"                                  shift, and go to state 16
1299    "-- (T_DEC)"                                  shift, and go to state 17
1300    "(int) (T_INT_CAST)"                          shift, and go to state 18
1301    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
1302    "(string) (T_STRING_CAST)"                    shift, and go to state 20
1303    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
1304    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
1305    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
1306    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
1307    '@'                                           shift, and go to state 25
1308    '['                                           shift, and go to state 26
1309    "new (T_NEW)"                                 shift, and go to state 27
1310    "clone (T_CLONE)"                             shift, and go to state 28
1311    "static (T_STATIC)"                           shift, and go to state 113
1312    "integer number (T_LNUMBER)"                  shift, and go to state 32
1313    "floating-point number (T_DNUMBER)"           shift, and go to state 33
1314    "identifier (T_STRING)"                       shift, and go to state 114
1315    "variable (T_VARIABLE)"                       shift, and go to state 35
1316    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
1317    "exit (T_EXIT)"                               shift, and go to state 38
1318    "function (T_FUNCTION)"                       shift, and go to state 50
1319    "isset (T_ISSET)"                             shift, and go to state 58
1320    "empty (T_EMPTY)"                             shift, and go to state 59
1321    "list (T_LIST)"                               shift, and go to state 64
1322    "array (T_ARRAY)"                             shift, and go to state 65
1323    "__LINE__ (T_LINE)"                           shift, and go to state 66
1324    "__FILE__ (T_FILE)"                           shift, and go to state 67
1325    "__DIR__ (T_DIR)"                             shift, and go to state 68
1326    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
1327    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
1328    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
1329    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
1330    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
1331    "namespace (T_NAMESPACE)"                     shift, and go to state 115
1332    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
1333    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
1334    '('                                           shift, and go to state 77
1335    '`'                                           shift, and go to state 80
1336    '"'                                           shift, and go to state 81
1337    '$'                                           shift, and go to state 82
1338
1339    namespace_name              go to state 83
1340    name                        go to state 84
1341    new_expr                    go to state 97
1342    expr                        go to state 116
1343    function                    go to state 117
1344    function_call               go to state 100
1345    class_name                  go to state 101
1346    dereferencable_scalar       go to state 102
1347    scalar                      go to state 103
1348    constant                    go to state 104
1349    variable_class_name         go to state 105
1350    dereferencable              go to state 106
1351    callable_expr               go to state 107
1352    callable_variable           go to state 108
1353    variable                    go to state 109
1354    simple_variable             go to state 110
1355    static_member               go to state 111
1356    internal_functions_in_yacc  go to state 112
1357
1358
1359State 5
1360
1361  490 internal_functions_in_yacc: "include_once (T_INCLUDE_ONCE)" . expr
1362
1363    "include (T_INCLUDE)"                         shift, and go to state 4
1364    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
1365    "eval (T_EVAL)"                               shift, and go to state 6
1366    "require (T_REQUIRE)"                         shift, and go to state 7
1367    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
1368    "print (T_PRINT)"                             shift, and go to state 9
1369    "yield (T_YIELD)"                             shift, and go to state 10
1370    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
1371    '+'                                           shift, and go to state 12
1372    '-'                                           shift, and go to state 13
1373    '!'                                           shift, and go to state 14
1374    '~'                                           shift, and go to state 15
1375    "++ (T_INC)"                                  shift, and go to state 16
1376    "-- (T_DEC)"                                  shift, and go to state 17
1377    "(int) (T_INT_CAST)"                          shift, and go to state 18
1378    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
1379    "(string) (T_STRING_CAST)"                    shift, and go to state 20
1380    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
1381    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
1382    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
1383    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
1384    '@'                                           shift, and go to state 25
1385    '['                                           shift, and go to state 26
1386    "new (T_NEW)"                                 shift, and go to state 27
1387    "clone (T_CLONE)"                             shift, and go to state 28
1388    "static (T_STATIC)"                           shift, and go to state 113
1389    "integer number (T_LNUMBER)"                  shift, and go to state 32
1390    "floating-point number (T_DNUMBER)"           shift, and go to state 33
1391    "identifier (T_STRING)"                       shift, and go to state 114
1392    "variable (T_VARIABLE)"                       shift, and go to state 35
1393    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
1394    "exit (T_EXIT)"                               shift, and go to state 38
1395    "function (T_FUNCTION)"                       shift, and go to state 50
1396    "isset (T_ISSET)"                             shift, and go to state 58
1397    "empty (T_EMPTY)"                             shift, and go to state 59
1398    "list (T_LIST)"                               shift, and go to state 64
1399    "array (T_ARRAY)"                             shift, and go to state 65
1400    "__LINE__ (T_LINE)"                           shift, and go to state 66
1401    "__FILE__ (T_FILE)"                           shift, and go to state 67
1402    "__DIR__ (T_DIR)"                             shift, and go to state 68
1403    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
1404    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
1405    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
1406    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
1407    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
1408    "namespace (T_NAMESPACE)"                     shift, and go to state 115
1409    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
1410    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
1411    '('                                           shift, and go to state 77
1412    '`'                                           shift, and go to state 80
1413    '"'                                           shift, and go to state 81
1414    '$'                                           shift, and go to state 82
1415
1416    namespace_name              go to state 83
1417    name                        go to state 84
1418    new_expr                    go to state 97
1419    expr                        go to state 118
1420    function                    go to state 117
1421    function_call               go to state 100
1422    class_name                  go to state 101
1423    dereferencable_scalar       go to state 102
1424    scalar                      go to state 103
1425    constant                    go to state 104
1426    variable_class_name         go to state 105
1427    dereferencable              go to state 106
1428    callable_expr               go to state 107
1429    callable_variable           go to state 108
1430    variable                    go to state 109
1431    simple_variable             go to state 110
1432    static_member               go to state 111
1433    internal_functions_in_yacc  go to state 112
1434
1435
1436State 6
1437
1438  491 internal_functions_in_yacc: "eval (T_EVAL)" . '(' expr ')'
1439
1440    '('  shift, and go to state 119
1441
1442
1443State 7
1444
1445  492 internal_functions_in_yacc: "require (T_REQUIRE)" . expr
1446
1447    "include (T_INCLUDE)"                         shift, and go to state 4
1448    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
1449    "eval (T_EVAL)"                               shift, and go to state 6
1450    "require (T_REQUIRE)"                         shift, and go to state 7
1451    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
1452    "print (T_PRINT)"                             shift, and go to state 9
1453    "yield (T_YIELD)"                             shift, and go to state 10
1454    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
1455    '+'                                           shift, and go to state 12
1456    '-'                                           shift, and go to state 13
1457    '!'                                           shift, and go to state 14
1458    '~'                                           shift, and go to state 15
1459    "++ (T_INC)"                                  shift, and go to state 16
1460    "-- (T_DEC)"                                  shift, and go to state 17
1461    "(int) (T_INT_CAST)"                          shift, and go to state 18
1462    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
1463    "(string) (T_STRING_CAST)"                    shift, and go to state 20
1464    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
1465    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
1466    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
1467    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
1468    '@'                                           shift, and go to state 25
1469    '['                                           shift, and go to state 26
1470    "new (T_NEW)"                                 shift, and go to state 27
1471    "clone (T_CLONE)"                             shift, and go to state 28
1472    "static (T_STATIC)"                           shift, and go to state 113
1473    "integer number (T_LNUMBER)"                  shift, and go to state 32
1474    "floating-point number (T_DNUMBER)"           shift, and go to state 33
1475    "identifier (T_STRING)"                       shift, and go to state 114
1476    "variable (T_VARIABLE)"                       shift, and go to state 35
1477    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
1478    "exit (T_EXIT)"                               shift, and go to state 38
1479    "function (T_FUNCTION)"                       shift, and go to state 50
1480    "isset (T_ISSET)"                             shift, and go to state 58
1481    "empty (T_EMPTY)"                             shift, and go to state 59
1482    "list (T_LIST)"                               shift, and go to state 64
1483    "array (T_ARRAY)"                             shift, and go to state 65
1484    "__LINE__ (T_LINE)"                           shift, and go to state 66
1485    "__FILE__ (T_FILE)"                           shift, and go to state 67
1486    "__DIR__ (T_DIR)"                             shift, and go to state 68
1487    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
1488    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
1489    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
1490    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
1491    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
1492    "namespace (T_NAMESPACE)"                     shift, and go to state 115
1493    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
1494    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
1495    '('                                           shift, and go to state 77
1496    '`'                                           shift, and go to state 80
1497    '"'                                           shift, and go to state 81
1498    '$'                                           shift, and go to state 82
1499
1500    namespace_name              go to state 83
1501    name                        go to state 84
1502    new_expr                    go to state 97
1503    expr                        go to state 120
1504    function                    go to state 117
1505    function_call               go to state 100
1506    class_name                  go to state 101
1507    dereferencable_scalar       go to state 102
1508    scalar                      go to state 103
1509    constant                    go to state 104
1510    variable_class_name         go to state 105
1511    dereferencable              go to state 106
1512    callable_expr               go to state 107
1513    callable_variable           go to state 108
1514    variable                    go to state 109
1515    simple_variable             go to state 110
1516    static_member               go to state 111
1517    internal_functions_in_yacc  go to state 112
1518
1519
1520State 8
1521
1522  493 internal_functions_in_yacc: "require_once (T_REQUIRE_ONCE)" . expr
1523
1524    "include (T_INCLUDE)"                         shift, and go to state 4
1525    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
1526    "eval (T_EVAL)"                               shift, and go to state 6
1527    "require (T_REQUIRE)"                         shift, and go to state 7
1528    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
1529    "print (T_PRINT)"                             shift, and go to state 9
1530    "yield (T_YIELD)"                             shift, and go to state 10
1531    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
1532    '+'                                           shift, and go to state 12
1533    '-'                                           shift, and go to state 13
1534    '!'                                           shift, and go to state 14
1535    '~'                                           shift, and go to state 15
1536    "++ (T_INC)"                                  shift, and go to state 16
1537    "-- (T_DEC)"                                  shift, and go to state 17
1538    "(int) (T_INT_CAST)"                          shift, and go to state 18
1539    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
1540    "(string) (T_STRING_CAST)"                    shift, and go to state 20
1541    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
1542    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
1543    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
1544    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
1545    '@'                                           shift, and go to state 25
1546    '['                                           shift, and go to state 26
1547    "new (T_NEW)"                                 shift, and go to state 27
1548    "clone (T_CLONE)"                             shift, and go to state 28
1549    "static (T_STATIC)"                           shift, and go to state 113
1550    "integer number (T_LNUMBER)"                  shift, and go to state 32
1551    "floating-point number (T_DNUMBER)"           shift, and go to state 33
1552    "identifier (T_STRING)"                       shift, and go to state 114
1553    "variable (T_VARIABLE)"                       shift, and go to state 35
1554    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
1555    "exit (T_EXIT)"                               shift, and go to state 38
1556    "function (T_FUNCTION)"                       shift, and go to state 50
1557    "isset (T_ISSET)"                             shift, and go to state 58
1558    "empty (T_EMPTY)"                             shift, and go to state 59
1559    "list (T_LIST)"                               shift, and go to state 64
1560    "array (T_ARRAY)"                             shift, and go to state 65
1561    "__LINE__ (T_LINE)"                           shift, and go to state 66
1562    "__FILE__ (T_FILE)"                           shift, and go to state 67
1563    "__DIR__ (T_DIR)"                             shift, and go to state 68
1564    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
1565    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
1566    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
1567    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
1568    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
1569    "namespace (T_NAMESPACE)"                     shift, and go to state 115
1570    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
1571    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
1572    '('                                           shift, and go to state 77
1573    '`'                                           shift, and go to state 80
1574    '"'                                           shift, and go to state 81
1575    '$'                                           shift, and go to state 82
1576
1577    namespace_name              go to state 83
1578    name                        go to state 84
1579    new_expr                    go to state 97
1580    expr                        go to state 121
1581    function                    go to state 117
1582    function_call               go to state 100
1583    class_name                  go to state 101
1584    dereferencable_scalar       go to state 102
1585    scalar                      go to state 103
1586    constant                    go to state 104
1587    variable_class_name         go to state 105
1588    dereferencable              go to state 106
1589    callable_expr               go to state 107
1590    callable_variable           go to state 108
1591    variable                    go to state 109
1592    simple_variable             go to state 110
1593    static_member               go to state 111
1594    internal_functions_in_yacc  go to state 112
1595
1596
1597State 9
1598
1599  371 expr: "print (T_PRINT)" . expr
1600
1601    "include (T_INCLUDE)"                         shift, and go to state 4
1602    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
1603    "eval (T_EVAL)"                               shift, and go to state 6
1604    "require (T_REQUIRE)"                         shift, and go to state 7
1605    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
1606    "print (T_PRINT)"                             shift, and go to state 9
1607    "yield (T_YIELD)"                             shift, and go to state 10
1608    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
1609    '+'                                           shift, and go to state 12
1610    '-'                                           shift, and go to state 13
1611    '!'                                           shift, and go to state 14
1612    '~'                                           shift, and go to state 15
1613    "++ (T_INC)"                                  shift, and go to state 16
1614    "-- (T_DEC)"                                  shift, and go to state 17
1615    "(int) (T_INT_CAST)"                          shift, and go to state 18
1616    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
1617    "(string) (T_STRING_CAST)"                    shift, and go to state 20
1618    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
1619    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
1620    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
1621    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
1622    '@'                                           shift, and go to state 25
1623    '['                                           shift, and go to state 26
1624    "new (T_NEW)"                                 shift, and go to state 27
1625    "clone (T_CLONE)"                             shift, and go to state 28
1626    "static (T_STATIC)"                           shift, and go to state 113
1627    "integer number (T_LNUMBER)"                  shift, and go to state 32
1628    "floating-point number (T_DNUMBER)"           shift, and go to state 33
1629    "identifier (T_STRING)"                       shift, and go to state 114
1630    "variable (T_VARIABLE)"                       shift, and go to state 35
1631    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
1632    "exit (T_EXIT)"                               shift, and go to state 38
1633    "function (T_FUNCTION)"                       shift, and go to state 50
1634    "isset (T_ISSET)"                             shift, and go to state 58
1635    "empty (T_EMPTY)"                             shift, and go to state 59
1636    "list (T_LIST)"                               shift, and go to state 64
1637    "array (T_ARRAY)"                             shift, and go to state 65
1638    "__LINE__ (T_LINE)"                           shift, and go to state 66
1639    "__FILE__ (T_FILE)"                           shift, and go to state 67
1640    "__DIR__ (T_DIR)"                             shift, and go to state 68
1641    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
1642    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
1643    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
1644    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
1645    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
1646    "namespace (T_NAMESPACE)"                     shift, and go to state 115
1647    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
1648    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
1649    '('                                           shift, and go to state 77
1650    '`'                                           shift, and go to state 80
1651    '"'                                           shift, and go to state 81
1652    '$'                                           shift, and go to state 82
1653
1654    namespace_name              go to state 83
1655    name                        go to state 84
1656    new_expr                    go to state 97
1657    expr                        go to state 122
1658    function                    go to state 117
1659    function_call               go to state 100
1660    class_name                  go to state 101
1661    dereferencable_scalar       go to state 102
1662    scalar                      go to state 103
1663    constant                    go to state 104
1664    variable_class_name         go to state 105
1665    dereferencable              go to state 106
1666    callable_expr               go to state 107
1667    callable_variable           go to state 108
1668    variable                    go to state 109
1669    simple_variable             go to state 110
1670    static_member               go to state 111
1671    internal_functions_in_yacc  go to state 112
1672
1673
1674State 10
1675
1676  372 expr: "yield (T_YIELD)" .
1677  373     | "yield (T_YIELD)" . expr
1678  374     | "yield (T_YIELD)" . expr "=> (T_DOUBLE_ARROW)" expr
1679
1680    "include (T_INCLUDE)"                         shift, and go to state 4
1681    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
1682    "eval (T_EVAL)"                               shift, and go to state 6
1683    "require (T_REQUIRE)"                         shift, and go to state 7
1684    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
1685    "print (T_PRINT)"                             shift, and go to state 9
1686    "yield (T_YIELD)"                             shift, and go to state 10
1687    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
1688    '+'                                           shift, and go to state 12
1689    '-'                                           shift, and go to state 13
1690    '!'                                           shift, and go to state 14
1691    '~'                                           shift, and go to state 15
1692    "++ (T_INC)"                                  shift, and go to state 16
1693    "-- (T_DEC)"                                  shift, and go to state 17
1694    "(int) (T_INT_CAST)"                          shift, and go to state 18
1695    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
1696    "(string) (T_STRING_CAST)"                    shift, and go to state 20
1697    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
1698    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
1699    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
1700    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
1701    '@'                                           shift, and go to state 25
1702    '['                                           shift, and go to state 26
1703    "new (T_NEW)"                                 shift, and go to state 27
1704    "clone (T_CLONE)"                             shift, and go to state 28
1705    "static (T_STATIC)"                           shift, and go to state 113
1706    "integer number (T_LNUMBER)"                  shift, and go to state 32
1707    "floating-point number (T_DNUMBER)"           shift, and go to state 33
1708    "identifier (T_STRING)"                       shift, and go to state 114
1709    "variable (T_VARIABLE)"                       shift, and go to state 35
1710    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
1711    "exit (T_EXIT)"                               shift, and go to state 38
1712    "function (T_FUNCTION)"                       shift, and go to state 50
1713    "isset (T_ISSET)"                             shift, and go to state 58
1714    "empty (T_EMPTY)"                             shift, and go to state 59
1715    "list (T_LIST)"                               shift, and go to state 64
1716    "array (T_ARRAY)"                             shift, and go to state 65
1717    "__LINE__ (T_LINE)"                           shift, and go to state 66
1718    "__FILE__ (T_FILE)"                           shift, and go to state 67
1719    "__DIR__ (T_DIR)"                             shift, and go to state 68
1720    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
1721    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
1722    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
1723    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
1724    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
1725    "namespace (T_NAMESPACE)"                     shift, and go to state 115
1726    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
1727    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
1728    '('                                           shift, and go to state 77
1729    '`'                                           shift, and go to state 80
1730    '"'                                           shift, and go to state 81
1731    '$'                                           shift, and go to state 82
1732
1733    $default  reduce using rule 372 (expr)
1734
1735    namespace_name              go to state 83
1736    name                        go to state 84
1737    new_expr                    go to state 97
1738    expr                        go to state 123
1739    function                    go to state 117
1740    function_call               go to state 100
1741    class_name                  go to state 101
1742    dereferencable_scalar       go to state 102
1743    scalar                      go to state 103
1744    constant                    go to state 104
1745    variable_class_name         go to state 105
1746    dereferencable              go to state 106
1747    callable_expr               go to state 107
1748    callable_variable           go to state 108
1749    variable                    go to state 109
1750    simple_variable             go to state 110
1751    static_member               go to state 111
1752    internal_functions_in_yacc  go to state 112
1753
1754
1755State 11
1756
1757  375 expr: "yield from (T_YIELD_FROM)" . expr
1758
1759    "include (T_INCLUDE)"                         shift, and go to state 4
1760    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
1761    "eval (T_EVAL)"                               shift, and go to state 6
1762    "require (T_REQUIRE)"                         shift, and go to state 7
1763    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
1764    "print (T_PRINT)"                             shift, and go to state 9
1765    "yield (T_YIELD)"                             shift, and go to state 10
1766    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
1767    '+'                                           shift, and go to state 12
1768    '-'                                           shift, and go to state 13
1769    '!'                                           shift, and go to state 14
1770    '~'                                           shift, and go to state 15
1771    "++ (T_INC)"                                  shift, and go to state 16
1772    "-- (T_DEC)"                                  shift, and go to state 17
1773    "(int) (T_INT_CAST)"                          shift, and go to state 18
1774    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
1775    "(string) (T_STRING_CAST)"                    shift, and go to state 20
1776    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
1777    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
1778    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
1779    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
1780    '@'                                           shift, and go to state 25
1781    '['                                           shift, and go to state 26
1782    "new (T_NEW)"                                 shift, and go to state 27
1783    "clone (T_CLONE)"                             shift, and go to state 28
1784    "static (T_STATIC)"                           shift, and go to state 113
1785    "integer number (T_LNUMBER)"                  shift, and go to state 32
1786    "floating-point number (T_DNUMBER)"           shift, and go to state 33
1787    "identifier (T_STRING)"                       shift, and go to state 114
1788    "variable (T_VARIABLE)"                       shift, and go to state 35
1789    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
1790    "exit (T_EXIT)"                               shift, and go to state 38
1791    "function (T_FUNCTION)"                       shift, and go to state 50
1792    "isset (T_ISSET)"                             shift, and go to state 58
1793    "empty (T_EMPTY)"                             shift, and go to state 59
1794    "list (T_LIST)"                               shift, and go to state 64
1795    "array (T_ARRAY)"                             shift, and go to state 65
1796    "__LINE__ (T_LINE)"                           shift, and go to state 66
1797    "__FILE__ (T_FILE)"                           shift, and go to state 67
1798    "__DIR__ (T_DIR)"                             shift, and go to state 68
1799    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
1800    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
1801    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
1802    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
1803    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
1804    "namespace (T_NAMESPACE)"                     shift, and go to state 115
1805    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
1806    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
1807    '('                                           shift, and go to state 77
1808    '`'                                           shift, and go to state 80
1809    '"'                                           shift, and go to state 81
1810    '$'                                           shift, and go to state 82
1811
1812    namespace_name              go to state 83
1813    name                        go to state 84
1814    new_expr                    go to state 97
1815    expr                        go to state 124
1816    function                    go to state 117
1817    function_call               go to state 100
1818    class_name                  go to state 101
1819    dereferencable_scalar       go to state 102
1820    scalar                      go to state 103
1821    constant                    go to state 104
1822    variable_class_name         go to state 105
1823    dereferencable              go to state 106
1824    callable_expr               go to state 107
1825    callable_variable           go to state 108
1826    variable                    go to state 109
1827    simple_variable             go to state 110
1828    static_member               go to state 111
1829    internal_functions_in_yacc  go to state 112
1830
1831
1832State 12
1833
1834  340 expr: '+' . expr
1835
1836    "include (T_INCLUDE)"                         shift, and go to state 4
1837    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
1838    "eval (T_EVAL)"                               shift, and go to state 6
1839    "require (T_REQUIRE)"                         shift, and go to state 7
1840    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
1841    "print (T_PRINT)"                             shift, and go to state 9
1842    "yield (T_YIELD)"                             shift, and go to state 10
1843    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
1844    '+'                                           shift, and go to state 12
1845    '-'                                           shift, and go to state 13
1846    '!'                                           shift, and go to state 14
1847    '~'                                           shift, and go to state 15
1848    "++ (T_INC)"                                  shift, and go to state 16
1849    "-- (T_DEC)"                                  shift, and go to state 17
1850    "(int) (T_INT_CAST)"                          shift, and go to state 18
1851    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
1852    "(string) (T_STRING_CAST)"                    shift, and go to state 20
1853    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
1854    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
1855    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
1856    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
1857    '@'                                           shift, and go to state 25
1858    '['                                           shift, and go to state 26
1859    "new (T_NEW)"                                 shift, and go to state 27
1860    "clone (T_CLONE)"                             shift, and go to state 28
1861    "static (T_STATIC)"                           shift, and go to state 113
1862    "integer number (T_LNUMBER)"                  shift, and go to state 32
1863    "floating-point number (T_DNUMBER)"           shift, and go to state 33
1864    "identifier (T_STRING)"                       shift, and go to state 114
1865    "variable (T_VARIABLE)"                       shift, and go to state 35
1866    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
1867    "exit (T_EXIT)"                               shift, and go to state 38
1868    "function (T_FUNCTION)"                       shift, and go to state 50
1869    "isset (T_ISSET)"                             shift, and go to state 58
1870    "empty (T_EMPTY)"                             shift, and go to state 59
1871    "list (T_LIST)"                               shift, and go to state 64
1872    "array (T_ARRAY)"                             shift, and go to state 65
1873    "__LINE__ (T_LINE)"                           shift, and go to state 66
1874    "__FILE__ (T_FILE)"                           shift, and go to state 67
1875    "__DIR__ (T_DIR)"                             shift, and go to state 68
1876    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
1877    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
1878    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
1879    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
1880    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
1881    "namespace (T_NAMESPACE)"                     shift, and go to state 115
1882    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
1883    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
1884    '('                                           shift, and go to state 77
1885    '`'                                           shift, and go to state 80
1886    '"'                                           shift, and go to state 81
1887    '$'                                           shift, and go to state 82
1888
1889    namespace_name              go to state 83
1890    name                        go to state 84
1891    new_expr                    go to state 97
1892    expr                        go to state 125
1893    function                    go to state 117
1894    function_call               go to state 100
1895    class_name                  go to state 101
1896    dereferencable_scalar       go to state 102
1897    scalar                      go to state 103
1898    constant                    go to state 104
1899    variable_class_name         go to state 105
1900    dereferencable              go to state 106
1901    callable_expr               go to state 107
1902    callable_variable           go to state 108
1903    variable                    go to state 109
1904    simple_variable             go to state 110
1905    static_member               go to state 111
1906    internal_functions_in_yacc  go to state 112
1907
1908
1909State 13
1910
1911  341 expr: '-' . expr
1912
1913    "include (T_INCLUDE)"                         shift, and go to state 4
1914    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
1915    "eval (T_EVAL)"                               shift, and go to state 6
1916    "require (T_REQUIRE)"                         shift, and go to state 7
1917    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
1918    "print (T_PRINT)"                             shift, and go to state 9
1919    "yield (T_YIELD)"                             shift, and go to state 10
1920    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
1921    '+'                                           shift, and go to state 12
1922    '-'                                           shift, and go to state 13
1923    '!'                                           shift, and go to state 14
1924    '~'                                           shift, and go to state 15
1925    "++ (T_INC)"                                  shift, and go to state 16
1926    "-- (T_DEC)"                                  shift, and go to state 17
1927    "(int) (T_INT_CAST)"                          shift, and go to state 18
1928    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
1929    "(string) (T_STRING_CAST)"                    shift, and go to state 20
1930    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
1931    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
1932    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
1933    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
1934    '@'                                           shift, and go to state 25
1935    '['                                           shift, and go to state 26
1936    "new (T_NEW)"                                 shift, and go to state 27
1937    "clone (T_CLONE)"                             shift, and go to state 28
1938    "static (T_STATIC)"                           shift, and go to state 113
1939    "integer number (T_LNUMBER)"                  shift, and go to state 32
1940    "floating-point number (T_DNUMBER)"           shift, and go to state 33
1941    "identifier (T_STRING)"                       shift, and go to state 114
1942    "variable (T_VARIABLE)"                       shift, and go to state 35
1943    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
1944    "exit (T_EXIT)"                               shift, and go to state 38
1945    "function (T_FUNCTION)"                       shift, and go to state 50
1946    "isset (T_ISSET)"                             shift, and go to state 58
1947    "empty (T_EMPTY)"                             shift, and go to state 59
1948    "list (T_LIST)"                               shift, and go to state 64
1949    "array (T_ARRAY)"                             shift, and go to state 65
1950    "__LINE__ (T_LINE)"                           shift, and go to state 66
1951    "__FILE__ (T_FILE)"                           shift, and go to state 67
1952    "__DIR__ (T_DIR)"                             shift, and go to state 68
1953    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
1954    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
1955    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
1956    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
1957    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
1958    "namespace (T_NAMESPACE)"                     shift, and go to state 115
1959    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
1960    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
1961    '('                                           shift, and go to state 77
1962    '`'                                           shift, and go to state 80
1963    '"'                                           shift, and go to state 81
1964    '$'                                           shift, and go to state 82
1965
1966    namespace_name              go to state 83
1967    name                        go to state 84
1968    new_expr                    go to state 97
1969    expr                        go to state 126
1970    function                    go to state 117
1971    function_call               go to state 100
1972    class_name                  go to state 101
1973    dereferencable_scalar       go to state 102
1974    scalar                      go to state 103
1975    constant                    go to state 104
1976    variable_class_name         go to state 105
1977    dereferencable              go to state 106
1978    callable_expr               go to state 107
1979    callable_variable           go to state 108
1980    variable                    go to state 109
1981    simple_variable             go to state 110
1982    static_member               go to state 111
1983    internal_functions_in_yacc  go to state 112
1984
1985
1986State 14
1987
1988  342 expr: '!' . expr
1989
1990    "include (T_INCLUDE)"                         shift, and go to state 4
1991    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
1992    "eval (T_EVAL)"                               shift, and go to state 6
1993    "require (T_REQUIRE)"                         shift, and go to state 7
1994    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
1995    "print (T_PRINT)"                             shift, and go to state 9
1996    "yield (T_YIELD)"                             shift, and go to state 10
1997    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
1998    '+'                                           shift, and go to state 12
1999    '-'                                           shift, and go to state 13
2000    '!'                                           shift, and go to state 14
2001    '~'                                           shift, and go to state 15
2002    "++ (T_INC)"                                  shift, and go to state 16
2003    "-- (T_DEC)"                                  shift, and go to state 17
2004    "(int) (T_INT_CAST)"                          shift, and go to state 18
2005    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
2006    "(string) (T_STRING_CAST)"                    shift, and go to state 20
2007    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
2008    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
2009    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
2010    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
2011    '@'                                           shift, and go to state 25
2012    '['                                           shift, and go to state 26
2013    "new (T_NEW)"                                 shift, and go to state 27
2014    "clone (T_CLONE)"                             shift, and go to state 28
2015    "static (T_STATIC)"                           shift, and go to state 113
2016    "integer number (T_LNUMBER)"                  shift, and go to state 32
2017    "floating-point number (T_DNUMBER)"           shift, and go to state 33
2018    "identifier (T_STRING)"                       shift, and go to state 114
2019    "variable (T_VARIABLE)"                       shift, and go to state 35
2020    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
2021    "exit (T_EXIT)"                               shift, and go to state 38
2022    "function (T_FUNCTION)"                       shift, and go to state 50
2023    "isset (T_ISSET)"                             shift, and go to state 58
2024    "empty (T_EMPTY)"                             shift, and go to state 59
2025    "list (T_LIST)"                               shift, and go to state 64
2026    "array (T_ARRAY)"                             shift, and go to state 65
2027    "__LINE__ (T_LINE)"                           shift, and go to state 66
2028    "__FILE__ (T_FILE)"                           shift, and go to state 67
2029    "__DIR__ (T_DIR)"                             shift, and go to state 68
2030    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
2031    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
2032    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
2033    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
2034    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
2035    "namespace (T_NAMESPACE)"                     shift, and go to state 115
2036    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
2037    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
2038    '('                                           shift, and go to state 77
2039    '`'                                           shift, and go to state 80
2040    '"'                                           shift, and go to state 81
2041    '$'                                           shift, and go to state 82
2042
2043    namespace_name              go to state 83
2044    name                        go to state 84
2045    new_expr                    go to state 97
2046    expr                        go to state 127
2047    function                    go to state 117
2048    function_call               go to state 100
2049    class_name                  go to state 101
2050    dereferencable_scalar       go to state 102
2051    scalar                      go to state 103
2052    constant                    go to state 104
2053    variable_class_name         go to state 105
2054    dereferencable              go to state 106
2055    callable_expr               go to state 107
2056    callable_variable           go to state 108
2057    variable                    go to state 109
2058    simple_variable             go to state 110
2059    static_member               go to state 111
2060    internal_functions_in_yacc  go to state 112
2061
2062
2063State 15
2064
2065  343 expr: '~' . expr
2066
2067    "include (T_INCLUDE)"                         shift, and go to state 4
2068    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
2069    "eval (T_EVAL)"                               shift, and go to state 6
2070    "require (T_REQUIRE)"                         shift, and go to state 7
2071    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
2072    "print (T_PRINT)"                             shift, and go to state 9
2073    "yield (T_YIELD)"                             shift, and go to state 10
2074    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
2075    '+'                                           shift, and go to state 12
2076    '-'                                           shift, and go to state 13
2077    '!'                                           shift, and go to state 14
2078    '~'                                           shift, and go to state 15
2079    "++ (T_INC)"                                  shift, and go to state 16
2080    "-- (T_DEC)"                                  shift, and go to state 17
2081    "(int) (T_INT_CAST)"                          shift, and go to state 18
2082    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
2083    "(string) (T_STRING_CAST)"                    shift, and go to state 20
2084    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
2085    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
2086    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
2087    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
2088    '@'                                           shift, and go to state 25
2089    '['                                           shift, and go to state 26
2090    "new (T_NEW)"                                 shift, and go to state 27
2091    "clone (T_CLONE)"                             shift, and go to state 28
2092    "static (T_STATIC)"                           shift, and go to state 113
2093    "integer number (T_LNUMBER)"                  shift, and go to state 32
2094    "floating-point number (T_DNUMBER)"           shift, and go to state 33
2095    "identifier (T_STRING)"                       shift, and go to state 114
2096    "variable (T_VARIABLE)"                       shift, and go to state 35
2097    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
2098    "exit (T_EXIT)"                               shift, and go to state 38
2099    "function (T_FUNCTION)"                       shift, and go to state 50
2100    "isset (T_ISSET)"                             shift, and go to state 58
2101    "empty (T_EMPTY)"                             shift, and go to state 59
2102    "list (T_LIST)"                               shift, and go to state 64
2103    "array (T_ARRAY)"                             shift, and go to state 65
2104    "__LINE__ (T_LINE)"                           shift, and go to state 66
2105    "__FILE__ (T_FILE)"                           shift, and go to state 67
2106    "__DIR__ (T_DIR)"                             shift, and go to state 68
2107    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
2108    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
2109    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
2110    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
2111    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
2112    "namespace (T_NAMESPACE)"                     shift, and go to state 115
2113    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
2114    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
2115    '('                                           shift, and go to state 77
2116    '`'                                           shift, and go to state 80
2117    '"'                                           shift, and go to state 81
2118    '$'                                           shift, and go to state 82
2119
2120    namespace_name              go to state 83
2121    name                        go to state 84
2122    new_expr                    go to state 97
2123    expr                        go to state 128
2124    function                    go to state 117
2125    function_call               go to state 100
2126    class_name                  go to state 101
2127    dereferencable_scalar       go to state 102
2128    scalar                      go to state 103
2129    constant                    go to state 104
2130    variable_class_name         go to state 105
2131    dereferencable              go to state 106
2132    callable_expr               go to state 107
2133    callable_variable           go to state 108
2134    variable                    go to state 109
2135    simple_variable             go to state 110
2136    static_member               go to state 111
2137    internal_functions_in_yacc  go to state 112
2138
2139
2140State 16
2141
2142  320 expr: "++ (T_INC)" . variable
2143
2144    '['                                           shift, and go to state 129
2145    "static (T_STATIC)"                           shift, and go to state 130
2146    "identifier (T_STRING)"                       shift, and go to state 114
2147    "variable (T_VARIABLE)"                       shift, and go to state 35
2148    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
2149    "array (T_ARRAY)"                             shift, and go to state 65
2150    "namespace (T_NAMESPACE)"                     shift, and go to state 115
2151    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
2152    '('                                           shift, and go to state 131
2153    '$'                                           shift, and go to state 82
2154
2155    namespace_name         go to state 83
2156    name                   go to state 84
2157    function_call          go to state 100
2158    class_name             go to state 101
2159    dereferencable_scalar  go to state 132
2160    constant               go to state 133
2161    variable_class_name    go to state 105
2162    dereferencable         go to state 106
2163    callable_expr          go to state 107
2164    callable_variable      go to state 108
2165    variable               go to state 134
2166    simple_variable        go to state 110
2167    static_member          go to state 111
2168
2169
2170State 17
2171
2172  322 expr: "-- (T_DEC)" . variable
2173
2174    '['                                           shift, and go to state 129
2175    "static (T_STATIC)"                           shift, and go to state 130
2176    "identifier (T_STRING)"                       shift, and go to state 114
2177    "variable (T_VARIABLE)"                       shift, and go to state 35
2178    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
2179    "array (T_ARRAY)"                             shift, and go to state 65
2180    "namespace (T_NAMESPACE)"                     shift, and go to state 115
2181    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
2182    '('                                           shift, and go to state 131
2183    '$'                                           shift, and go to state 82
2184
2185    namespace_name         go to state 83
2186    name                   go to state 84
2187    function_call          go to state 100
2188    class_name             go to state 101
2189    dereferencable_scalar  go to state 132
2190    constant               go to state 133
2191    variable_class_name    go to state 105
2192    dereferencable         go to state 106
2193    callable_expr          go to state 107
2194    callable_variable      go to state 108
2195    variable               go to state 135
2196    simple_variable        go to state 110
2197    static_member          go to state 111
2198
2199
2200State 18
2201
2202  360 expr: "(int) (T_INT_CAST)" . expr
2203
2204    "include (T_INCLUDE)"                         shift, and go to state 4
2205    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
2206    "eval (T_EVAL)"                               shift, and go to state 6
2207    "require (T_REQUIRE)"                         shift, and go to state 7
2208    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
2209    "print (T_PRINT)"                             shift, and go to state 9
2210    "yield (T_YIELD)"                             shift, and go to state 10
2211    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
2212    '+'                                           shift, and go to state 12
2213    '-'                                           shift, and go to state 13
2214    '!'                                           shift, and go to state 14
2215    '~'                                           shift, and go to state 15
2216    "++ (T_INC)"                                  shift, and go to state 16
2217    "-- (T_DEC)"                                  shift, and go to state 17
2218    "(int) (T_INT_CAST)"                          shift, and go to state 18
2219    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
2220    "(string) (T_STRING_CAST)"                    shift, and go to state 20
2221    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
2222    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
2223    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
2224    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
2225    '@'                                           shift, and go to state 25
2226    '['                                           shift, and go to state 26
2227    "new (T_NEW)"                                 shift, and go to state 27
2228    "clone (T_CLONE)"                             shift, and go to state 28
2229    "static (T_STATIC)"                           shift, and go to state 113
2230    "integer number (T_LNUMBER)"                  shift, and go to state 32
2231    "floating-point number (T_DNUMBER)"           shift, and go to state 33
2232    "identifier (T_STRING)"                       shift, and go to state 114
2233    "variable (T_VARIABLE)"                       shift, and go to state 35
2234    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
2235    "exit (T_EXIT)"                               shift, and go to state 38
2236    "function (T_FUNCTION)"                       shift, and go to state 50
2237    "isset (T_ISSET)"                             shift, and go to state 58
2238    "empty (T_EMPTY)"                             shift, and go to state 59
2239    "list (T_LIST)"                               shift, and go to state 64
2240    "array (T_ARRAY)"                             shift, and go to state 65
2241    "__LINE__ (T_LINE)"                           shift, and go to state 66
2242    "__FILE__ (T_FILE)"                           shift, and go to state 67
2243    "__DIR__ (T_DIR)"                             shift, and go to state 68
2244    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
2245    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
2246    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
2247    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
2248    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
2249    "namespace (T_NAMESPACE)"                     shift, and go to state 115
2250    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
2251    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
2252    '('                                           shift, and go to state 77
2253    '`'                                           shift, and go to state 80
2254    '"'                                           shift, and go to state 81
2255    '$'                                           shift, and go to state 82
2256
2257    namespace_name              go to state 83
2258    name                        go to state 84
2259    new_expr                    go to state 97
2260    expr                        go to state 136
2261    function                    go to state 117
2262    function_call               go to state 100
2263    class_name                  go to state 101
2264    dereferencable_scalar       go to state 102
2265    scalar                      go to state 103
2266    constant                    go to state 104
2267    variable_class_name         go to state 105
2268    dereferencable              go to state 106
2269    callable_expr               go to state 107
2270    callable_variable           go to state 108
2271    variable                    go to state 109
2272    simple_variable             go to state 110
2273    static_member               go to state 111
2274    internal_functions_in_yacc  go to state 112
2275
2276
2277State 19
2278
2279  361 expr: "(double) (T_DOUBLE_CAST)" . expr
2280
2281    "include (T_INCLUDE)"                         shift, and go to state 4
2282    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
2283    "eval (T_EVAL)"                               shift, and go to state 6
2284    "require (T_REQUIRE)"                         shift, and go to state 7
2285    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
2286    "print (T_PRINT)"                             shift, and go to state 9
2287    "yield (T_YIELD)"                             shift, and go to state 10
2288    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
2289    '+'                                           shift, and go to state 12
2290    '-'                                           shift, and go to state 13
2291    '!'                                           shift, and go to state 14
2292    '~'                                           shift, and go to state 15
2293    "++ (T_INC)"                                  shift, and go to state 16
2294    "-- (T_DEC)"                                  shift, and go to state 17
2295    "(int) (T_INT_CAST)"                          shift, and go to state 18
2296    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
2297    "(string) (T_STRING_CAST)"                    shift, and go to state 20
2298    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
2299    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
2300    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
2301    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
2302    '@'                                           shift, and go to state 25
2303    '['                                           shift, and go to state 26
2304    "new (T_NEW)"                                 shift, and go to state 27
2305    "clone (T_CLONE)"                             shift, and go to state 28
2306    "static (T_STATIC)"                           shift, and go to state 113
2307    "integer number (T_LNUMBER)"                  shift, and go to state 32
2308    "floating-point number (T_DNUMBER)"           shift, and go to state 33
2309    "identifier (T_STRING)"                       shift, and go to state 114
2310    "variable (T_VARIABLE)"                       shift, and go to state 35
2311    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
2312    "exit (T_EXIT)"                               shift, and go to state 38
2313    "function (T_FUNCTION)"                       shift, and go to state 50
2314    "isset (T_ISSET)"                             shift, and go to state 58
2315    "empty (T_EMPTY)"                             shift, and go to state 59
2316    "list (T_LIST)"                               shift, and go to state 64
2317    "array (T_ARRAY)"                             shift, and go to state 65
2318    "__LINE__ (T_LINE)"                           shift, and go to state 66
2319    "__FILE__ (T_FILE)"                           shift, and go to state 67
2320    "__DIR__ (T_DIR)"                             shift, and go to state 68
2321    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
2322    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
2323    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
2324    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
2325    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
2326    "namespace (T_NAMESPACE)"                     shift, and go to state 115
2327    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
2328    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
2329    '('                                           shift, and go to state 77
2330    '`'                                           shift, and go to state 80
2331    '"'                                           shift, and go to state 81
2332    '$'                                           shift, and go to state 82
2333
2334    namespace_name              go to state 83
2335    name                        go to state 84
2336    new_expr                    go to state 97
2337    expr                        go to state 137
2338    function                    go to state 117
2339    function_call               go to state 100
2340    class_name                  go to state 101
2341    dereferencable_scalar       go to state 102
2342    scalar                      go to state 103
2343    constant                    go to state 104
2344    variable_class_name         go to state 105
2345    dereferencable              go to state 106
2346    callable_expr               go to state 107
2347    callable_variable           go to state 108
2348    variable                    go to state 109
2349    simple_variable             go to state 110
2350    static_member               go to state 111
2351    internal_functions_in_yacc  go to state 112
2352
2353
2354State 20
2355
2356  362 expr: "(string) (T_STRING_CAST)" . expr
2357
2358    "include (T_INCLUDE)"                         shift, and go to state 4
2359    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
2360    "eval (T_EVAL)"                               shift, and go to state 6
2361    "require (T_REQUIRE)"                         shift, and go to state 7
2362    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
2363    "print (T_PRINT)"                             shift, and go to state 9
2364    "yield (T_YIELD)"                             shift, and go to state 10
2365    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
2366    '+'                                           shift, and go to state 12
2367    '-'                                           shift, and go to state 13
2368    '!'                                           shift, and go to state 14
2369    '~'                                           shift, and go to state 15
2370    "++ (T_INC)"                                  shift, and go to state 16
2371    "-- (T_DEC)"                                  shift, and go to state 17
2372    "(int) (T_INT_CAST)"                          shift, and go to state 18
2373    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
2374    "(string) (T_STRING_CAST)"                    shift, and go to state 20
2375    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
2376    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
2377    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
2378    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
2379    '@'                                           shift, and go to state 25
2380    '['                                           shift, and go to state 26
2381    "new (T_NEW)"                                 shift, and go to state 27
2382    "clone (T_CLONE)"                             shift, and go to state 28
2383    "static (T_STATIC)"                           shift, and go to state 113
2384    "integer number (T_LNUMBER)"                  shift, and go to state 32
2385    "floating-point number (T_DNUMBER)"           shift, and go to state 33
2386    "identifier (T_STRING)"                       shift, and go to state 114
2387    "variable (T_VARIABLE)"                       shift, and go to state 35
2388    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
2389    "exit (T_EXIT)"                               shift, and go to state 38
2390    "function (T_FUNCTION)"                       shift, and go to state 50
2391    "isset (T_ISSET)"                             shift, and go to state 58
2392    "empty (T_EMPTY)"                             shift, and go to state 59
2393    "list (T_LIST)"                               shift, and go to state 64
2394    "array (T_ARRAY)"                             shift, and go to state 65
2395    "__LINE__ (T_LINE)"                           shift, and go to state 66
2396    "__FILE__ (T_FILE)"                           shift, and go to state 67
2397    "__DIR__ (T_DIR)"                             shift, and go to state 68
2398    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
2399    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
2400    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
2401    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
2402    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
2403    "namespace (T_NAMESPACE)"                     shift, and go to state 115
2404    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
2405    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
2406    '('                                           shift, and go to state 77
2407    '`'                                           shift, and go to state 80
2408    '"'                                           shift, and go to state 81
2409    '$'                                           shift, and go to state 82
2410
2411    namespace_name              go to state 83
2412    name                        go to state 84
2413    new_expr                    go to state 97
2414    expr                        go to state 138
2415    function                    go to state 117
2416    function_call               go to state 100
2417    class_name                  go to state 101
2418    dereferencable_scalar       go to state 102
2419    scalar                      go to state 103
2420    constant                    go to state 104
2421    variable_class_name         go to state 105
2422    dereferencable              go to state 106
2423    callable_expr               go to state 107
2424    callable_variable           go to state 108
2425    variable                    go to state 109
2426    simple_variable             go to state 110
2427    static_member               go to state 111
2428    internal_functions_in_yacc  go to state 112
2429
2430
2431State 21
2432
2433  363 expr: "(array) (T_ARRAY_CAST)" . expr
2434
2435    "include (T_INCLUDE)"                         shift, and go to state 4
2436    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
2437    "eval (T_EVAL)"                               shift, and go to state 6
2438    "require (T_REQUIRE)"                         shift, and go to state 7
2439    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
2440    "print (T_PRINT)"                             shift, and go to state 9
2441    "yield (T_YIELD)"                             shift, and go to state 10
2442    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
2443    '+'                                           shift, and go to state 12
2444    '-'                                           shift, and go to state 13
2445    '!'                                           shift, and go to state 14
2446    '~'                                           shift, and go to state 15
2447    "++ (T_INC)"                                  shift, and go to state 16
2448    "-- (T_DEC)"                                  shift, and go to state 17
2449    "(int) (T_INT_CAST)"                          shift, and go to state 18
2450    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
2451    "(string) (T_STRING_CAST)"                    shift, and go to state 20
2452    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
2453    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
2454    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
2455    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
2456    '@'                                           shift, and go to state 25
2457    '['                                           shift, and go to state 26
2458    "new (T_NEW)"                                 shift, and go to state 27
2459    "clone (T_CLONE)"                             shift, and go to state 28
2460    "static (T_STATIC)"                           shift, and go to state 113
2461    "integer number (T_LNUMBER)"                  shift, and go to state 32
2462    "floating-point number (T_DNUMBER)"           shift, and go to state 33
2463    "identifier (T_STRING)"                       shift, and go to state 114
2464    "variable (T_VARIABLE)"                       shift, and go to state 35
2465    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
2466    "exit (T_EXIT)"                               shift, and go to state 38
2467    "function (T_FUNCTION)"                       shift, and go to state 50
2468    "isset (T_ISSET)"                             shift, and go to state 58
2469    "empty (T_EMPTY)"                             shift, and go to state 59
2470    "list (T_LIST)"                               shift, and go to state 64
2471    "array (T_ARRAY)"                             shift, and go to state 65
2472    "__LINE__ (T_LINE)"                           shift, and go to state 66
2473    "__FILE__ (T_FILE)"                           shift, and go to state 67
2474    "__DIR__ (T_DIR)"                             shift, and go to state 68
2475    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
2476    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
2477    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
2478    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
2479    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
2480    "namespace (T_NAMESPACE)"                     shift, and go to state 115
2481    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
2482    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
2483    '('                                           shift, and go to state 77
2484    '`'                                           shift, and go to state 80
2485    '"'                                           shift, and go to state 81
2486    '$'                                           shift, and go to state 82
2487
2488    namespace_name              go to state 83
2489    name                        go to state 84
2490    new_expr                    go to state 97
2491    expr                        go to state 139
2492    function                    go to state 117
2493    function_call               go to state 100
2494    class_name                  go to state 101
2495    dereferencable_scalar       go to state 102
2496    scalar                      go to state 103
2497    constant                    go to state 104
2498    variable_class_name         go to state 105
2499    dereferencable              go to state 106
2500    callable_expr               go to state 107
2501    callable_variable           go to state 108
2502    variable                    go to state 109
2503    simple_variable             go to state 110
2504    static_member               go to state 111
2505    internal_functions_in_yacc  go to state 112
2506
2507
2508State 22
2509
2510  364 expr: "(object) (T_OBJECT_CAST)" . expr
2511
2512    "include (T_INCLUDE)"                         shift, and go to state 4
2513    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
2514    "eval (T_EVAL)"                               shift, and go to state 6
2515    "require (T_REQUIRE)"                         shift, and go to state 7
2516    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
2517    "print (T_PRINT)"                             shift, and go to state 9
2518    "yield (T_YIELD)"                             shift, and go to state 10
2519    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
2520    '+'                                           shift, and go to state 12
2521    '-'                                           shift, and go to state 13
2522    '!'                                           shift, and go to state 14
2523    '~'                                           shift, and go to state 15
2524    "++ (T_INC)"                                  shift, and go to state 16
2525    "-- (T_DEC)"                                  shift, and go to state 17
2526    "(int) (T_INT_CAST)"                          shift, and go to state 18
2527    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
2528    "(string) (T_STRING_CAST)"                    shift, and go to state 20
2529    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
2530    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
2531    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
2532    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
2533    '@'                                           shift, and go to state 25
2534    '['                                           shift, and go to state 26
2535    "new (T_NEW)"                                 shift, and go to state 27
2536    "clone (T_CLONE)"                             shift, and go to state 28
2537    "static (T_STATIC)"                           shift, and go to state 113
2538    "integer number (T_LNUMBER)"                  shift, and go to state 32
2539    "floating-point number (T_DNUMBER)"           shift, and go to state 33
2540    "identifier (T_STRING)"                       shift, and go to state 114
2541    "variable (T_VARIABLE)"                       shift, and go to state 35
2542    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
2543    "exit (T_EXIT)"                               shift, and go to state 38
2544    "function (T_FUNCTION)"                       shift, and go to state 50
2545    "isset (T_ISSET)"                             shift, and go to state 58
2546    "empty (T_EMPTY)"                             shift, and go to state 59
2547    "list (T_LIST)"                               shift, and go to state 64
2548    "array (T_ARRAY)"                             shift, and go to state 65
2549    "__LINE__ (T_LINE)"                           shift, and go to state 66
2550    "__FILE__ (T_FILE)"                           shift, and go to state 67
2551    "__DIR__ (T_DIR)"                             shift, and go to state 68
2552    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
2553    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
2554    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
2555    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
2556    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
2557    "namespace (T_NAMESPACE)"                     shift, and go to state 115
2558    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
2559    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
2560    '('                                           shift, and go to state 77
2561    '`'                                           shift, and go to state 80
2562    '"'                                           shift, and go to state 81
2563    '$'                                           shift, and go to state 82
2564
2565    namespace_name              go to state 83
2566    name                        go to state 84
2567    new_expr                    go to state 97
2568    expr                        go to state 140
2569    function                    go to state 117
2570    function_call               go to state 100
2571    class_name                  go to state 101
2572    dereferencable_scalar       go to state 102
2573    scalar                      go to state 103
2574    constant                    go to state 104
2575    variable_class_name         go to state 105
2576    dereferencable              go to state 106
2577    callable_expr               go to state 107
2578    callable_variable           go to state 108
2579    variable                    go to state 109
2580    simple_variable             go to state 110
2581    static_member               go to state 111
2582    internal_functions_in_yacc  go to state 112
2583
2584
2585State 23
2586
2587  365 expr: "(bool) (T_BOOL_CAST)" . expr
2588
2589    "include (T_INCLUDE)"                         shift, and go to state 4
2590    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
2591    "eval (T_EVAL)"                               shift, and go to state 6
2592    "require (T_REQUIRE)"                         shift, and go to state 7
2593    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
2594    "print (T_PRINT)"                             shift, and go to state 9
2595    "yield (T_YIELD)"                             shift, and go to state 10
2596    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
2597    '+'                                           shift, and go to state 12
2598    '-'                                           shift, and go to state 13
2599    '!'                                           shift, and go to state 14
2600    '~'                                           shift, and go to state 15
2601    "++ (T_INC)"                                  shift, and go to state 16
2602    "-- (T_DEC)"                                  shift, and go to state 17
2603    "(int) (T_INT_CAST)"                          shift, and go to state 18
2604    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
2605    "(string) (T_STRING_CAST)"                    shift, and go to state 20
2606    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
2607    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
2608    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
2609    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
2610    '@'                                           shift, and go to state 25
2611    '['                                           shift, and go to state 26
2612    "new (T_NEW)"                                 shift, and go to state 27
2613    "clone (T_CLONE)"                             shift, and go to state 28
2614    "static (T_STATIC)"                           shift, and go to state 113
2615    "integer number (T_LNUMBER)"                  shift, and go to state 32
2616    "floating-point number (T_DNUMBER)"           shift, and go to state 33
2617    "identifier (T_STRING)"                       shift, and go to state 114
2618    "variable (T_VARIABLE)"                       shift, and go to state 35
2619    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
2620    "exit (T_EXIT)"                               shift, and go to state 38
2621    "function (T_FUNCTION)"                       shift, and go to state 50
2622    "isset (T_ISSET)"                             shift, and go to state 58
2623    "empty (T_EMPTY)"                             shift, and go to state 59
2624    "list (T_LIST)"                               shift, and go to state 64
2625    "array (T_ARRAY)"                             shift, and go to state 65
2626    "__LINE__ (T_LINE)"                           shift, and go to state 66
2627    "__FILE__ (T_FILE)"                           shift, and go to state 67
2628    "__DIR__ (T_DIR)"                             shift, and go to state 68
2629    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
2630    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
2631    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
2632    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
2633    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
2634    "namespace (T_NAMESPACE)"                     shift, and go to state 115
2635    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
2636    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
2637    '('                                           shift, and go to state 77
2638    '`'                                           shift, and go to state 80
2639    '"'                                           shift, and go to state 81
2640    '$'                                           shift, and go to state 82
2641
2642    namespace_name              go to state 83
2643    name                        go to state 84
2644    new_expr                    go to state 97
2645    expr                        go to state 141
2646    function                    go to state 117
2647    function_call               go to state 100
2648    class_name                  go to state 101
2649    dereferencable_scalar       go to state 102
2650    scalar                      go to state 103
2651    constant                    go to state 104
2652    variable_class_name         go to state 105
2653    dereferencable              go to state 106
2654    callable_expr               go to state 107
2655    callable_variable           go to state 108
2656    variable                    go to state 109
2657    simple_variable             go to state 110
2658    static_member               go to state 111
2659    internal_functions_in_yacc  go to state 112
2660
2661
2662State 24
2663
2664  366 expr: "(unset) (T_UNSET_CAST)" . expr
2665
2666    "include (T_INCLUDE)"                         shift, and go to state 4
2667    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
2668    "eval (T_EVAL)"                               shift, and go to state 6
2669    "require (T_REQUIRE)"                         shift, and go to state 7
2670    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
2671    "print (T_PRINT)"                             shift, and go to state 9
2672    "yield (T_YIELD)"                             shift, and go to state 10
2673    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
2674    '+'                                           shift, and go to state 12
2675    '-'                                           shift, and go to state 13
2676    '!'                                           shift, and go to state 14
2677    '~'                                           shift, and go to state 15
2678    "++ (T_INC)"                                  shift, and go to state 16
2679    "-- (T_DEC)"                                  shift, and go to state 17
2680    "(int) (T_INT_CAST)"                          shift, and go to state 18
2681    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
2682    "(string) (T_STRING_CAST)"                    shift, and go to state 20
2683    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
2684    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
2685    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
2686    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
2687    '@'                                           shift, and go to state 25
2688    '['                                           shift, and go to state 26
2689    "new (T_NEW)"                                 shift, and go to state 27
2690    "clone (T_CLONE)"                             shift, and go to state 28
2691    "static (T_STATIC)"                           shift, and go to state 113
2692    "integer number (T_LNUMBER)"                  shift, and go to state 32
2693    "floating-point number (T_DNUMBER)"           shift, and go to state 33
2694    "identifier (T_STRING)"                       shift, and go to state 114
2695    "variable (T_VARIABLE)"                       shift, and go to state 35
2696    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
2697    "exit (T_EXIT)"                               shift, and go to state 38
2698    "function (T_FUNCTION)"                       shift, and go to state 50
2699    "isset (T_ISSET)"                             shift, and go to state 58
2700    "empty (T_EMPTY)"                             shift, and go to state 59
2701    "list (T_LIST)"                               shift, and go to state 64
2702    "array (T_ARRAY)"                             shift, and go to state 65
2703    "__LINE__ (T_LINE)"                           shift, and go to state 66
2704    "__FILE__ (T_FILE)"                           shift, and go to state 67
2705    "__DIR__ (T_DIR)"                             shift, and go to state 68
2706    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
2707    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
2708    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
2709    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
2710    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
2711    "namespace (T_NAMESPACE)"                     shift, and go to state 115
2712    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
2713    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
2714    '('                                           shift, and go to state 77
2715    '`'                                           shift, and go to state 80
2716    '"'                                           shift, and go to state 81
2717    '$'                                           shift, and go to state 82
2718
2719    namespace_name              go to state 83
2720    name                        go to state 84
2721    new_expr                    go to state 97
2722    expr                        go to state 142
2723    function                    go to state 117
2724    function_call               go to state 100
2725    class_name                  go to state 101
2726    dereferencable_scalar       go to state 102
2727    scalar                      go to state 103
2728    constant                    go to state 104
2729    variable_class_name         go to state 105
2730    dereferencable              go to state 106
2731    callable_expr               go to state 107
2732    callable_variable           go to state 108
2733    variable                    go to state 109
2734    simple_variable             go to state 110
2735    static_member               go to state 111
2736    internal_functions_in_yacc  go to state 112
2737
2738
2739State 25
2740
2741  368 expr: '@' . expr
2742
2743    "include (T_INCLUDE)"                         shift, and go to state 4
2744    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
2745    "eval (T_EVAL)"                               shift, and go to state 6
2746    "require (T_REQUIRE)"                         shift, and go to state 7
2747    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
2748    "print (T_PRINT)"                             shift, and go to state 9
2749    "yield (T_YIELD)"                             shift, and go to state 10
2750    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
2751    '+'                                           shift, and go to state 12
2752    '-'                                           shift, and go to state 13
2753    '!'                                           shift, and go to state 14
2754    '~'                                           shift, and go to state 15
2755    "++ (T_INC)"                                  shift, and go to state 16
2756    "-- (T_DEC)"                                  shift, and go to state 17
2757    "(int) (T_INT_CAST)"                          shift, and go to state 18
2758    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
2759    "(string) (T_STRING_CAST)"                    shift, and go to state 20
2760    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
2761    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
2762    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
2763    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
2764    '@'                                           shift, and go to state 25
2765    '['                                           shift, and go to state 26
2766    "new (T_NEW)"                                 shift, and go to state 27
2767    "clone (T_CLONE)"                             shift, and go to state 28
2768    "static (T_STATIC)"                           shift, and go to state 113
2769    "integer number (T_LNUMBER)"                  shift, and go to state 32
2770    "floating-point number (T_DNUMBER)"           shift, and go to state 33
2771    "identifier (T_STRING)"                       shift, and go to state 114
2772    "variable (T_VARIABLE)"                       shift, and go to state 35
2773    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
2774    "exit (T_EXIT)"                               shift, and go to state 38
2775    "function (T_FUNCTION)"                       shift, and go to state 50
2776    "isset (T_ISSET)"                             shift, and go to state 58
2777    "empty (T_EMPTY)"                             shift, and go to state 59
2778    "list (T_LIST)"                               shift, and go to state 64
2779    "array (T_ARRAY)"                             shift, and go to state 65
2780    "__LINE__ (T_LINE)"                           shift, and go to state 66
2781    "__FILE__ (T_FILE)"                           shift, and go to state 67
2782    "__DIR__ (T_DIR)"                             shift, and go to state 68
2783    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
2784    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
2785    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
2786    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
2787    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
2788    "namespace (T_NAMESPACE)"                     shift, and go to state 115
2789    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
2790    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
2791    '('                                           shift, and go to state 77
2792    '`'                                           shift, and go to state 80
2793    '"'                                           shift, and go to state 81
2794    '$'                                           shift, and go to state 82
2795
2796    namespace_name              go to state 83
2797    name                        go to state 84
2798    new_expr                    go to state 97
2799    expr                        go to state 143
2800    function                    go to state 117
2801    function_call               go to state 100
2802    class_name                  go to state 101
2803    dereferencable_scalar       go to state 102
2804    scalar                      go to state 103
2805    constant                    go to state 104
2806    variable_class_name         go to state 105
2807    dereferencable              go to state 106
2808    callable_expr               go to state 107
2809    callable_variable           go to state 108
2810    variable                    go to state 109
2811    simple_variable             go to state 110
2812    static_member               go to state 111
2813    internal_functions_in_yacc  go to state 112
2814
2815
2816State 26
2817
2818  303 expr: '[' . array_pair_list ']' '=' expr
2819  405 dereferencable_scalar: '[' . array_pair_list ']'
2820
2821    "include (T_INCLUDE)"                         shift, and go to state 4
2822    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
2823    "eval (T_EVAL)"                               shift, and go to state 6
2824    "require (T_REQUIRE)"                         shift, and go to state 7
2825    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
2826    "print (T_PRINT)"                             shift, and go to state 9
2827    "yield (T_YIELD)"                             shift, and go to state 10
2828    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
2829    '&'                                           shift, and go to state 144
2830    '+'                                           shift, and go to state 12
2831    '-'                                           shift, and go to state 13
2832    '!'                                           shift, and go to state 14
2833    '~'                                           shift, and go to state 15
2834    "++ (T_INC)"                                  shift, and go to state 16
2835    "-- (T_DEC)"                                  shift, and go to state 17
2836    "(int) (T_INT_CAST)"                          shift, and go to state 18
2837    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
2838    "(string) (T_STRING_CAST)"                    shift, and go to state 20
2839    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
2840    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
2841    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
2842    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
2843    '@'                                           shift, and go to state 25
2844    '['                                           shift, and go to state 26
2845    "new (T_NEW)"                                 shift, and go to state 27
2846    "clone (T_CLONE)"                             shift, and go to state 28
2847    "static (T_STATIC)"                           shift, and go to state 113
2848    "integer number (T_LNUMBER)"                  shift, and go to state 32
2849    "floating-point number (T_DNUMBER)"           shift, and go to state 33
2850    "identifier (T_STRING)"                       shift, and go to state 114
2851    "variable (T_VARIABLE)"                       shift, and go to state 35
2852    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
2853    "exit (T_EXIT)"                               shift, and go to state 38
2854    "function (T_FUNCTION)"                       shift, and go to state 50
2855    "isset (T_ISSET)"                             shift, and go to state 58
2856    "empty (T_EMPTY)"                             shift, and go to state 59
2857    "list (T_LIST)"                               shift, and go to state 145
2858    "array (T_ARRAY)"                             shift, and go to state 65
2859    "__LINE__ (T_LINE)"                           shift, and go to state 66
2860    "__FILE__ (T_FILE)"                           shift, and go to state 67
2861    "__DIR__ (T_DIR)"                             shift, and go to state 68
2862    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
2863    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
2864    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
2865    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
2866    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
2867    "namespace (T_NAMESPACE)"                     shift, and go to state 115
2868    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
2869    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
2870    '('                                           shift, and go to state 77
2871    '`'                                           shift, and go to state 80
2872    '"'                                           shift, and go to state 81
2873    '$'                                           shift, and go to state 82
2874
2875    $default  reduce using rule 462 (possible_array_pair)
2876
2877    namespace_name              go to state 83
2878    name                        go to state 84
2879    new_expr                    go to state 97
2880    expr                        go to state 146
2881    function                    go to state 117
2882    function_call               go to state 100
2883    class_name                  go to state 101
2884    dereferencable_scalar       go to state 102
2885    scalar                      go to state 103
2886    constant                    go to state 104
2887    variable_class_name         go to state 105
2888    dereferencable              go to state 106
2889    callable_expr               go to state 107
2890    callable_variable           go to state 108
2891    variable                    go to state 109
2892    simple_variable             go to state 110
2893    static_member               go to state 111
2894    array_pair_list             go to state 147
2895    possible_array_pair         go to state 148
2896    non_empty_array_pair_list   go to state 149
2897    array_pair                  go to state 150
2898    internal_functions_in_yacc  go to state 112
2899
2900
2901State 27
2902
2903  299 new_expr: "new (T_NEW)" . class_name_reference ctor_arguments
2904  300         | "new (T_NEW)" . anonymous_class
2905
2906    "static (T_STATIC)"        shift, and go to state 130
2907    "identifier (T_STRING)"    shift, and go to state 114
2908    "variable (T_VARIABLE)"    shift, and go to state 35
2909    "class (T_CLASS)"          shift, and go to state 151
2910    "namespace (T_NAMESPACE)"  shift, and go to state 115
2911    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
2912    '$'                        shift, and go to state 82
2913
2914    namespace_name        go to state 83
2915    name                  go to state 152
2916    anonymous_class       go to state 153
2917    class_name            go to state 154
2918    class_name_reference  go to state 155
2919    simple_variable       go to state 156
2920    new_variable          go to state 157
2921
2922
2923State 28
2924
2925  306 expr: "clone (T_CLONE)" . expr
2926
2927    "include (T_INCLUDE)"                         shift, and go to state 4
2928    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
2929    "eval (T_EVAL)"                               shift, and go to state 6
2930    "require (T_REQUIRE)"                         shift, and go to state 7
2931    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
2932    "print (T_PRINT)"                             shift, and go to state 9
2933    "yield (T_YIELD)"                             shift, and go to state 10
2934    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
2935    '+'                                           shift, and go to state 12
2936    '-'                                           shift, and go to state 13
2937    '!'                                           shift, and go to state 14
2938    '~'                                           shift, and go to state 15
2939    "++ (T_INC)"                                  shift, and go to state 16
2940    "-- (T_DEC)"                                  shift, and go to state 17
2941    "(int) (T_INT_CAST)"                          shift, and go to state 18
2942    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
2943    "(string) (T_STRING_CAST)"                    shift, and go to state 20
2944    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
2945    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
2946    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
2947    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
2948    '@'                                           shift, and go to state 25
2949    '['                                           shift, and go to state 26
2950    "new (T_NEW)"                                 shift, and go to state 27
2951    "clone (T_CLONE)"                             shift, and go to state 28
2952    "static (T_STATIC)"                           shift, and go to state 113
2953    "integer number (T_LNUMBER)"                  shift, and go to state 32
2954    "floating-point number (T_DNUMBER)"           shift, and go to state 33
2955    "identifier (T_STRING)"                       shift, and go to state 114
2956    "variable (T_VARIABLE)"                       shift, and go to state 35
2957    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
2958    "exit (T_EXIT)"                               shift, and go to state 38
2959    "function (T_FUNCTION)"                       shift, and go to state 50
2960    "isset (T_ISSET)"                             shift, and go to state 58
2961    "empty (T_EMPTY)"                             shift, and go to state 59
2962    "list (T_LIST)"                               shift, and go to state 64
2963    "array (T_ARRAY)"                             shift, and go to state 65
2964    "__LINE__ (T_LINE)"                           shift, and go to state 66
2965    "__FILE__ (T_FILE)"                           shift, and go to state 67
2966    "__DIR__ (T_DIR)"                             shift, and go to state 68
2967    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
2968    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
2969    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
2970    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
2971    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
2972    "namespace (T_NAMESPACE)"                     shift, and go to state 115
2973    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
2974    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
2975    '('                                           shift, and go to state 77
2976    '`'                                           shift, and go to state 80
2977    '"'                                           shift, and go to state 81
2978    '$'                                           shift, and go to state 82
2979
2980    namespace_name              go to state 83
2981    name                        go to state 84
2982    new_expr                    go to state 97
2983    expr                        go to state 158
2984    function                    go to state 117
2985    function_call               go to state 100
2986    class_name                  go to state 101
2987    dereferencable_scalar       go to state 102
2988    scalar                      go to state 103
2989    constant                    go to state 104
2990    variable_class_name         go to state 105
2991    dereferencable              go to state 106
2992    callable_expr               go to state 107
2993    callable_variable           go to state 108
2994    variable                    go to state 109
2995    simple_variable             go to state 110
2996    static_member               go to state 111
2997    internal_functions_in_yacc  go to state 112
2998
2999
3000State 29
3001
3002  142 statement: "static (T_STATIC)" . static_var_list ';'
3003  377 expr: "static (T_STATIC)" . function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
3004  393 class_name: "static (T_STATIC)" .
3005
3006    "variable (T_VARIABLE)"  shift, and go to state 159
3007    "function (T_FUNCTION)"  shift, and go to state 50
3008
3009    $default  reduce using rule 393 (class_name)
3010
3011    static_var_list  go to state 160
3012    static_var       go to state 161
3013    function         go to state 162
3014
3015
3016State 30
3017
3018  176 class_modifier: "abstract (T_ABSTRACT)" .
3019
3020    $default  reduce using rule 176 (class_modifier)
3021
3022
3023State 31
3024
3025  177 class_modifier: "final (T_FINAL)" .
3026
3027    $default  reduce using rule 177 (class_modifier)
3028
3029
3030State 32
3031
3032  407 scalar: "integer number (T_LNUMBER)" .
3033
3034    $default  reduce using rule 407 (scalar)
3035
3036
3037State 33
3038
3039  408 scalar: "floating-point number (T_DNUMBER)" .
3040
3041    $default  reduce using rule 408 (scalar)
3042
3043
3044State 34
3045
3046   80 namespace_name: "identifier (T_STRING)" .
3047  155 statement: "identifier (T_STRING)" . ':'
3048
3049    ':'  shift, and go to state 163
3050
3051    $default  reduce using rule 80 (namespace_name)
3052
3053
3054State 35
3055
3056  444 simple_variable: "variable (T_VARIABLE)" .
3057
3058    $default  reduce using rule 444 (simple_variable)
3059
3060
3061State 36
3062
3063  144 statement: T_INLINE_HTML .
3064
3065    $default  reduce using rule 144 (statement)
3066
3067
3068State 37
3069
3070  406 dereferencable_scalar: "quoted-string (T_CONSTANT_ENCAPSED_STRING)" .
3071
3072    $default  reduce using rule 406 (dereferencable_scalar)
3073
3074
3075State 38
3076
3077  367 expr: "exit (T_EXIT)" . exit_expr
3078
3079    '('  shift, and go to state 164
3080
3081    $default  reduce using rule 397 (exit_expr)
3082
3083    exit_expr  go to state 165
3084
3085
3086State 39
3087
3088  209 if_stmt_without_else: "if (T_IF)" . '(' expr ')' statement
3089  213 alt_if_stmt_without_else: "if (T_IF)" . '(' expr ')' ':' inner_statement_list
3090
3091    '('  shift, and go to state 166
3092
3093
3094State 40
3095
3096  143 statement: "echo (T_ECHO)" . echo_expr_list ';'
3097
3098    "include (T_INCLUDE)"                         shift, and go to state 4
3099    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
3100    "eval (T_EVAL)"                               shift, and go to state 6
3101    "require (T_REQUIRE)"                         shift, and go to state 7
3102    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
3103    "print (T_PRINT)"                             shift, and go to state 9
3104    "yield (T_YIELD)"                             shift, and go to state 10
3105    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
3106    '+'                                           shift, and go to state 12
3107    '-'                                           shift, and go to state 13
3108    '!'                                           shift, and go to state 14
3109    '~'                                           shift, and go to state 15
3110    "++ (T_INC)"                                  shift, and go to state 16
3111    "-- (T_DEC)"                                  shift, and go to state 17
3112    "(int) (T_INT_CAST)"                          shift, and go to state 18
3113    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
3114    "(string) (T_STRING_CAST)"                    shift, and go to state 20
3115    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
3116    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
3117    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
3118    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
3119    '@'                                           shift, and go to state 25
3120    '['                                           shift, and go to state 26
3121    "new (T_NEW)"                                 shift, and go to state 27
3122    "clone (T_CLONE)"                             shift, and go to state 28
3123    "static (T_STATIC)"                           shift, and go to state 113
3124    "integer number (T_LNUMBER)"                  shift, and go to state 32
3125    "floating-point number (T_DNUMBER)"           shift, and go to state 33
3126    "identifier (T_STRING)"                       shift, and go to state 114
3127    "variable (T_VARIABLE)"                       shift, and go to state 35
3128    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
3129    "exit (T_EXIT)"                               shift, and go to state 38
3130    "function (T_FUNCTION)"                       shift, and go to state 50
3131    "isset (T_ISSET)"                             shift, and go to state 58
3132    "empty (T_EMPTY)"                             shift, and go to state 59
3133    "list (T_LIST)"                               shift, and go to state 64
3134    "array (T_ARRAY)"                             shift, and go to state 65
3135    "__LINE__ (T_LINE)"                           shift, and go to state 66
3136    "__FILE__ (T_FILE)"                           shift, and go to state 67
3137    "__DIR__ (T_DIR)"                             shift, and go to state 68
3138    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
3139    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
3140    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
3141    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
3142    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
3143    "namespace (T_NAMESPACE)"                     shift, and go to state 115
3144    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
3145    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
3146    '('                                           shift, and go to state 77
3147    '`'                                           shift, and go to state 80
3148    '"'                                           shift, and go to state 81
3149    '$'                                           shift, and go to state 82
3150
3151    namespace_name              go to state 83
3152    name                        go to state 84
3153    echo_expr_list              go to state 167
3154    echo_expr                   go to state 168
3155    new_expr                    go to state 97
3156    expr                        go to state 169
3157    function                    go to state 117
3158    function_call               go to state 100
3159    class_name                  go to state 101
3160    dereferencable_scalar       go to state 102
3161    scalar                      go to state 103
3162    constant                    go to state 104
3163    variable_class_name         go to state 105
3164    dereferencable              go to state 106
3165    callable_expr               go to state 107
3166    callable_variable           go to state 108
3167    variable                    go to state 109
3168    simple_variable             go to state 110
3169    static_member               go to state 111
3170    internal_functions_in_yacc  go to state 112
3171
3172
3173State 41
3174
3175  135 statement: "do (T_DO)" . statement "while (T_WHILE)" '(' expr ')' ';'
3176
3177    "include (T_INCLUDE)"                         shift, and go to state 4
3178    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
3179    "eval (T_EVAL)"                               shift, and go to state 6
3180    "require (T_REQUIRE)"                         shift, and go to state 7
3181    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
3182    "print (T_PRINT)"                             shift, and go to state 9
3183    "yield (T_YIELD)"                             shift, and go to state 10
3184    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
3185    '+'                                           shift, and go to state 12
3186    '-'                                           shift, and go to state 13
3187    '!'                                           shift, and go to state 14
3188    '~'                                           shift, and go to state 15
3189    "++ (T_INC)"                                  shift, and go to state 16
3190    "-- (T_DEC)"                                  shift, and go to state 17
3191    "(int) (T_INT_CAST)"                          shift, and go to state 18
3192    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
3193    "(string) (T_STRING_CAST)"                    shift, and go to state 20
3194    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
3195    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
3196    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
3197    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
3198    '@'                                           shift, and go to state 25
3199    '['                                           shift, and go to state 26
3200    "new (T_NEW)"                                 shift, and go to state 27
3201    "clone (T_CLONE)"                             shift, and go to state 28
3202    "static (T_STATIC)"                           shift, and go to state 29
3203    "integer number (T_LNUMBER)"                  shift, and go to state 32
3204    "floating-point number (T_DNUMBER)"           shift, and go to state 33
3205    "identifier (T_STRING)"                       shift, and go to state 34
3206    "variable (T_VARIABLE)"                       shift, and go to state 35
3207    T_INLINE_HTML                                 shift, and go to state 36
3208    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
3209    "exit (T_EXIT)"                               shift, and go to state 38
3210    "if (T_IF)"                                   shift, and go to state 39
3211    "echo (T_ECHO)"                               shift, and go to state 40
3212    "do (T_DO)"                                   shift, and go to state 41
3213    "while (T_WHILE)"                             shift, and go to state 42
3214    "for (T_FOR)"                                 shift, and go to state 43
3215    "foreach (T_FOREACH)"                         shift, and go to state 44
3216    "declare (T_DECLARE)"                         shift, and go to state 45
3217    "switch (T_SWITCH)"                           shift, and go to state 46
3218    "break (T_BREAK)"                             shift, and go to state 47
3219    "continue (T_CONTINUE)"                       shift, and go to state 48
3220    "goto (T_GOTO)"                               shift, and go to state 49
3221    "function (T_FUNCTION)"                       shift, and go to state 50
3222    "return (T_RETURN)"                           shift, and go to state 52
3223    "try (T_TRY)"                                 shift, and go to state 53
3224    "throw (T_THROW)"                             shift, and go to state 54
3225    "global (T_GLOBAL)"                           shift, and go to state 56
3226    "unset (T_UNSET)"                             shift, and go to state 57
3227    "isset (T_ISSET)"                             shift, and go to state 58
3228    "empty (T_EMPTY)"                             shift, and go to state 59
3229    "list (T_LIST)"                               shift, and go to state 64
3230    "array (T_ARRAY)"                             shift, and go to state 65
3231    "__LINE__ (T_LINE)"                           shift, and go to state 66
3232    "__FILE__ (T_FILE)"                           shift, and go to state 67
3233    "__DIR__ (T_DIR)"                             shift, and go to state 68
3234    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
3235    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
3236    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
3237    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
3238    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
3239    "namespace (T_NAMESPACE)"                     shift, and go to state 115
3240    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
3241    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
3242    '('                                           shift, and go to state 77
3243    ';'                                           shift, and go to state 78
3244    '{'                                           shift, and go to state 79
3245    '`'                                           shift, and go to state 80
3246    '"'                                           shift, and go to state 81
3247    '$'                                           shift, and go to state 82
3248
3249    namespace_name              go to state 83
3250    name                        go to state 84
3251    statement                   go to state 170
3252    if_stmt_without_else        go to state 93
3253    if_stmt                     go to state 94
3254    alt_if_stmt_without_else    go to state 95
3255    alt_if_stmt                 go to state 96
3256    new_expr                    go to state 97
3257    expr                        go to state 98
3258    function                    go to state 117
3259    function_call               go to state 100
3260    class_name                  go to state 101
3261    dereferencable_scalar       go to state 102
3262    scalar                      go to state 103
3263    constant                    go to state 104
3264    variable_class_name         go to state 105
3265    dereferencable              go to state 106
3266    callable_expr               go to state 107
3267    callable_variable           go to state 108
3268    variable                    go to state 109
3269    simple_variable             go to state 110
3270    static_member               go to state 111
3271    internal_functions_in_yacc  go to state 112
3272
3273
3274State 42
3275
3276  134 statement: "while (T_WHILE)" . '(' expr ')' while_statement
3277
3278    '('  shift, and go to state 171
3279
3280
3281State 43
3282
3283  136 statement: "for (T_FOR)" . '(' for_exprs ';' for_exprs ';' for_exprs ')' for_statement
3284
3285    '('  shift, and go to state 172
3286
3287
3288State 44
3289
3290  147 statement: "foreach (T_FOREACH)" . '(' expr "as (T_AS)" foreach_variable ')' foreach_statement
3291  148          | "foreach (T_FOREACH)" . '(' expr "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable ')' foreach_statement
3292
3293    '('  shift, and go to state 173
3294
3295
3296State 45
3297
3298  150 statement: "declare (T_DECLARE)" . '(' const_list ')' $@3 declare_statement
3299
3300    '('  shift, and go to state 174
3301
3302
3303State 46
3304
3305  137 statement: "switch (T_SWITCH)" . '(' expr ')' switch_case_list
3306
3307    '('  shift, and go to state 175
3308
3309
3310State 47
3311
3312  138 statement: "break (T_BREAK)" . optional_expr ';'
3313
3314    "include (T_INCLUDE)"                         shift, and go to state 4
3315    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
3316    "eval (T_EVAL)"                               shift, and go to state 6
3317    "require (T_REQUIRE)"                         shift, and go to state 7
3318    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
3319    "print (T_PRINT)"                             shift, and go to state 9
3320    "yield (T_YIELD)"                             shift, and go to state 10
3321    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
3322    '+'                                           shift, and go to state 12
3323    '-'                                           shift, and go to state 13
3324    '!'                                           shift, and go to state 14
3325    '~'                                           shift, and go to state 15
3326    "++ (T_INC)"                                  shift, and go to state 16
3327    "-- (T_DEC)"                                  shift, and go to state 17
3328    "(int) (T_INT_CAST)"                          shift, and go to state 18
3329    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
3330    "(string) (T_STRING_CAST)"                    shift, and go to state 20
3331    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
3332    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
3333    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
3334    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
3335    '@'                                           shift, and go to state 25
3336    '['                                           shift, and go to state 26
3337    "new (T_NEW)"                                 shift, and go to state 27
3338    "clone (T_CLONE)"                             shift, and go to state 28
3339    "static (T_STATIC)"                           shift, and go to state 113
3340    "integer number (T_LNUMBER)"                  shift, and go to state 32
3341    "floating-point number (T_DNUMBER)"           shift, and go to state 33
3342    "identifier (T_STRING)"                       shift, and go to state 114
3343    "variable (T_VARIABLE)"                       shift, and go to state 35
3344    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
3345    "exit (T_EXIT)"                               shift, and go to state 38
3346    "function (T_FUNCTION)"                       shift, and go to state 50
3347    "isset (T_ISSET)"                             shift, and go to state 58
3348    "empty (T_EMPTY)"                             shift, and go to state 59
3349    "list (T_LIST)"                               shift, and go to state 64
3350    "array (T_ARRAY)"                             shift, and go to state 65
3351    "__LINE__ (T_LINE)"                           shift, and go to state 66
3352    "__FILE__ (T_FILE)"                           shift, and go to state 67
3353    "__DIR__ (T_DIR)"                             shift, and go to state 68
3354    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
3355    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
3356    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
3357    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
3358    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
3359    "namespace (T_NAMESPACE)"                     shift, and go to state 115
3360    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
3361    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
3362    '('                                           shift, and go to state 77
3363    '`'                                           shift, and go to state 80
3364    '"'                                           shift, and go to state 81
3365    '$'                                           shift, and go to state 82
3366
3367    $default  reduce using rule 426 (optional_expr)
3368
3369    namespace_name              go to state 83
3370    name                        go to state 84
3371    new_expr                    go to state 97
3372    expr                        go to state 176
3373    function                    go to state 117
3374    function_call               go to state 100
3375    class_name                  go to state 101
3376    dereferencable_scalar       go to state 102
3377    scalar                      go to state 103
3378    constant                    go to state 104
3379    optional_expr               go to state 177
3380    variable_class_name         go to state 105
3381    dereferencable              go to state 106
3382    callable_expr               go to state 107
3383    callable_variable           go to state 108
3384    variable                    go to state 109
3385    simple_variable             go to state 110
3386    static_member               go to state 111
3387    internal_functions_in_yacc  go to state 112
3388
3389
3390State 48
3391
3392  139 statement: "continue (T_CONTINUE)" . optional_expr ';'
3393
3394    "include (T_INCLUDE)"                         shift, and go to state 4
3395    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
3396    "eval (T_EVAL)"                               shift, and go to state 6
3397    "require (T_REQUIRE)"                         shift, and go to state 7
3398    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
3399    "print (T_PRINT)"                             shift, and go to state 9
3400    "yield (T_YIELD)"                             shift, and go to state 10
3401    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
3402    '+'                                           shift, and go to state 12
3403    '-'                                           shift, and go to state 13
3404    '!'                                           shift, and go to state 14
3405    '~'                                           shift, and go to state 15
3406    "++ (T_INC)"                                  shift, and go to state 16
3407    "-- (T_DEC)"                                  shift, and go to state 17
3408    "(int) (T_INT_CAST)"                          shift, and go to state 18
3409    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
3410    "(string) (T_STRING_CAST)"                    shift, and go to state 20
3411    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
3412    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
3413    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
3414    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
3415    '@'                                           shift, and go to state 25
3416    '['                                           shift, and go to state 26
3417    "new (T_NEW)"                                 shift, and go to state 27
3418    "clone (T_CLONE)"                             shift, and go to state 28
3419    "static (T_STATIC)"                           shift, and go to state 113
3420    "integer number (T_LNUMBER)"                  shift, and go to state 32
3421    "floating-point number (T_DNUMBER)"           shift, and go to state 33
3422    "identifier (T_STRING)"                       shift, and go to state 114
3423    "variable (T_VARIABLE)"                       shift, and go to state 35
3424    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
3425    "exit (T_EXIT)"                               shift, and go to state 38
3426    "function (T_FUNCTION)"                       shift, and go to state 50
3427    "isset (T_ISSET)"                             shift, and go to state 58
3428    "empty (T_EMPTY)"                             shift, and go to state 59
3429    "list (T_LIST)"                               shift, and go to state 64
3430    "array (T_ARRAY)"                             shift, and go to state 65
3431    "__LINE__ (T_LINE)"                           shift, and go to state 66
3432    "__FILE__ (T_FILE)"                           shift, and go to state 67
3433    "__DIR__ (T_DIR)"                             shift, and go to state 68
3434    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
3435    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
3436    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
3437    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
3438    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
3439    "namespace (T_NAMESPACE)"                     shift, and go to state 115
3440    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
3441    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
3442    '('                                           shift, and go to state 77
3443    '`'                                           shift, and go to state 80
3444    '"'                                           shift, and go to state 81
3445    '$'                                           shift, and go to state 82
3446
3447    $default  reduce using rule 426 (optional_expr)
3448
3449    namespace_name              go to state 83
3450    name                        go to state 84
3451    new_expr                    go to state 97
3452    expr                        go to state 176
3453    function                    go to state 117
3454    function_call               go to state 100
3455    class_name                  go to state 101
3456    dereferencable_scalar       go to state 102
3457    scalar                      go to state 103
3458    constant                    go to state 104
3459    optional_expr               go to state 178
3460    variable_class_name         go to state 105
3461    dereferencable              go to state 106
3462    callable_expr               go to state 107
3463    callable_variable           go to state 108
3464    variable                    go to state 109
3465    simple_variable             go to state 110
3466    static_member               go to state 111
3467    internal_functions_in_yacc  go to state 112
3468
3469
3470State 49
3471
3472  154 statement: "goto (T_GOTO)" . "identifier (T_STRING)" ';'
3473
3474    "identifier (T_STRING)"  shift, and go to state 179
3475
3476
3477State 50
3478
3479  378 function: "function (T_FUNCTION)" .
3480
3481    $default  reduce using rule 378 (function)
3482
3483
3484State 51
3485
3486  100 top_statement: "const (T_CONST)" . const_list ';'
3487
3488    "identifier (T_STRING)"  shift, and go to state 180
3489
3490    const_list  go to state 181
3491    const_decl  go to state 182
3492
3493
3494State 52
3495
3496  140 statement: "return (T_RETURN)" . optional_expr ';'
3497
3498    "include (T_INCLUDE)"                         shift, and go to state 4
3499    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
3500    "eval (T_EVAL)"                               shift, and go to state 6
3501    "require (T_REQUIRE)"                         shift, and go to state 7
3502    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
3503    "print (T_PRINT)"                             shift, and go to state 9
3504    "yield (T_YIELD)"                             shift, and go to state 10
3505    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
3506    '+'                                           shift, and go to state 12
3507    '-'                                           shift, and go to state 13
3508    '!'                                           shift, and go to state 14
3509    '~'                                           shift, and go to state 15
3510    "++ (T_INC)"                                  shift, and go to state 16
3511    "-- (T_DEC)"                                  shift, and go to state 17
3512    "(int) (T_INT_CAST)"                          shift, and go to state 18
3513    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
3514    "(string) (T_STRING_CAST)"                    shift, and go to state 20
3515    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
3516    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
3517    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
3518    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
3519    '@'                                           shift, and go to state 25
3520    '['                                           shift, and go to state 26
3521    "new (T_NEW)"                                 shift, and go to state 27
3522    "clone (T_CLONE)"                             shift, and go to state 28
3523    "static (T_STATIC)"                           shift, and go to state 113
3524    "integer number (T_LNUMBER)"                  shift, and go to state 32
3525    "floating-point number (T_DNUMBER)"           shift, and go to state 33
3526    "identifier (T_STRING)"                       shift, and go to state 114
3527    "variable (T_VARIABLE)"                       shift, and go to state 35
3528    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
3529    "exit (T_EXIT)"                               shift, and go to state 38
3530    "function (T_FUNCTION)"                       shift, and go to state 50
3531    "isset (T_ISSET)"                             shift, and go to state 58
3532    "empty (T_EMPTY)"                             shift, and go to state 59
3533    "list (T_LIST)"                               shift, and go to state 64
3534    "array (T_ARRAY)"                             shift, and go to state 65
3535    "__LINE__ (T_LINE)"                           shift, and go to state 66
3536    "__FILE__ (T_FILE)"                           shift, and go to state 67
3537    "__DIR__ (T_DIR)"                             shift, and go to state 68
3538    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
3539    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
3540    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
3541    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
3542    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
3543    "namespace (T_NAMESPACE)"                     shift, and go to state 115
3544    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
3545    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
3546    '('                                           shift, and go to state 77
3547    '`'                                           shift, and go to state 80
3548    '"'                                           shift, and go to state 81
3549    '$'                                           shift, and go to state 82
3550
3551    $default  reduce using rule 426 (optional_expr)
3552
3553    namespace_name              go to state 83
3554    name                        go to state 84
3555    new_expr                    go to state 97
3556    expr                        go to state 176
3557    function                    go to state 117
3558    function_call               go to state 100
3559    class_name                  go to state 101
3560    dereferencable_scalar       go to state 102
3561    scalar                      go to state 103
3562    constant                    go to state 104
3563    optional_expr               go to state 183
3564    variable_class_name         go to state 105
3565    dereferencable              go to state 106
3566    callable_expr               go to state 107
3567    callable_variable           go to state 108
3568    variable                    go to state 109
3569    simple_variable             go to state 110
3570    static_member               go to state 111
3571    internal_functions_in_yacc  go to state 112
3572
3573
3574State 53
3575
3576  152 statement: "try (T_TRY)" . '{' inner_statement_list '}' catch_list finally_statement
3577
3578    '{'  shift, and go to state 184
3579
3580
3581State 54
3582
3583  153 statement: "throw (T_THROW)" . expr ';'
3584
3585    "include (T_INCLUDE)"                         shift, and go to state 4
3586    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
3587    "eval (T_EVAL)"                               shift, and go to state 6
3588    "require (T_REQUIRE)"                         shift, and go to state 7
3589    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
3590    "print (T_PRINT)"                             shift, and go to state 9
3591    "yield (T_YIELD)"                             shift, and go to state 10
3592    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
3593    '+'                                           shift, and go to state 12
3594    '-'                                           shift, and go to state 13
3595    '!'                                           shift, and go to state 14
3596    '~'                                           shift, and go to state 15
3597    "++ (T_INC)"                                  shift, and go to state 16
3598    "-- (T_DEC)"                                  shift, and go to state 17
3599    "(int) (T_INT_CAST)"                          shift, and go to state 18
3600    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
3601    "(string) (T_STRING_CAST)"                    shift, and go to state 20
3602    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
3603    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
3604    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
3605    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
3606    '@'                                           shift, and go to state 25
3607    '['                                           shift, and go to state 26
3608    "new (T_NEW)"                                 shift, and go to state 27
3609    "clone (T_CLONE)"                             shift, and go to state 28
3610    "static (T_STATIC)"                           shift, and go to state 113
3611    "integer number (T_LNUMBER)"                  shift, and go to state 32
3612    "floating-point number (T_DNUMBER)"           shift, and go to state 33
3613    "identifier (T_STRING)"                       shift, and go to state 114
3614    "variable (T_VARIABLE)"                       shift, and go to state 35
3615    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
3616    "exit (T_EXIT)"                               shift, and go to state 38
3617    "function (T_FUNCTION)"                       shift, and go to state 50
3618    "isset (T_ISSET)"                             shift, and go to state 58
3619    "empty (T_EMPTY)"                             shift, and go to state 59
3620    "list (T_LIST)"                               shift, and go to state 64
3621    "array (T_ARRAY)"                             shift, and go to state 65
3622    "__LINE__ (T_LINE)"                           shift, and go to state 66
3623    "__FILE__ (T_FILE)"                           shift, and go to state 67
3624    "__DIR__ (T_DIR)"                             shift, and go to state 68
3625    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
3626    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
3627    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
3628    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
3629    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
3630    "namespace (T_NAMESPACE)"                     shift, and go to state 115
3631    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
3632    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
3633    '('                                           shift, and go to state 77
3634    '`'                                           shift, and go to state 80
3635    '"'                                           shift, and go to state 81
3636    '$'                                           shift, and go to state 82
3637
3638    namespace_name              go to state 83
3639    name                        go to state 84
3640    new_expr                    go to state 97
3641    expr                        go to state 185
3642    function                    go to state 117
3643    function_call               go to state 100
3644    class_name                  go to state 101
3645    dereferencable_scalar       go to state 102
3646    scalar                      go to state 103
3647    constant                    go to state 104
3648    variable_class_name         go to state 105
3649    dereferencable              go to state 106
3650    callable_expr               go to state 107
3651    callable_variable           go to state 108
3652    variable                    go to state 109
3653    simple_variable             go to state 110
3654    static_member               go to state 111
3655    internal_functions_in_yacc  go to state 112
3656
3657
3658State 55
3659
3660   96 top_statement: "use (T_USE)" . mixed_group_use_declaration ';'
3661   97              | "use (T_USE)" . use_type group_use_declaration ';'
3662   98              | "use (T_USE)" . use_declarations ';'
3663   99              | "use (T_USE)" . use_type use_declarations ';'
3664
3665    "identifier (T_STRING)"  shift, and go to state 114
3666    "function (T_FUNCTION)"  shift, and go to state 186
3667    "const (T_CONST)"        shift, and go to state 187
3668    "\\ (T_NS_SEPARATOR)"    shift, and go to state 188
3669
3670    namespace_name               go to state 189
3671    use_type                     go to state 190
3672    mixed_group_use_declaration  go to state 191
3673    use_declarations             go to state 192
3674    unprefixed_use_declaration   go to state 193
3675    use_declaration              go to state 194
3676
3677
3678State 56
3679
3680  141 statement: "global (T_GLOBAL)" . global_var_list ';'
3681
3682    "variable (T_VARIABLE)"  shift, and go to state 35
3683    '$'                      shift, and go to state 82
3684
3685    global_var_list  go to state 195
3686    global_var       go to state 196
3687    simple_variable  go to state 197
3688
3689
3690State 57
3691
3692  146 statement: "unset (T_UNSET)" . '(' unset_variables possible_comma ')' ';'
3693
3694    '('  shift, and go to state 198
3695
3696
3697State 58
3698
3699  487 internal_functions_in_yacc: "isset (T_ISSET)" . '(' isset_variables possible_comma ')'
3700
3701    '('  shift, and go to state 199
3702
3703
3704State 59
3705
3706  488 internal_functions_in_yacc: "empty (T_EMPTY)" . '(' expr ')'
3707
3708    '('  shift, and go to state 200
3709
3710
3711State 60
3712
3713   90 top_statement: "__halt_compiler (T_HALT_COMPILER)" . '(' ')' ';'
3714
3715    '('  shift, and go to state 201
3716
3717
3718State 61
3719
3720  173 class_declaration_statement: "class (T_CLASS)" . @5 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}'
3721
3722    $default  reduce using rule 172 (@5)
3723
3724    @5  go to state 202
3725
3726
3727State 62
3728
3729  179 trait_declaration_statement: "trait (T_TRAIT)" . @6 "identifier (T_STRING)" backup_doc_comment '{' class_statement_list '}'
3730
3731    $default  reduce using rule 178 (@6)
3732
3733    @6  go to state 203
3734
3735
3736State 63
3737
3738  181 interface_declaration_statement: "interface (T_INTERFACE)" . @7 "identifier (T_STRING)" interface_extends_list backup_doc_comment '{' class_statement_list '}'
3739
3740    $default  reduce using rule 180 (@7)
3741
3742    @7  go to state 204
3743
3744
3745State 64
3746
3747  302 expr: "list (T_LIST)" . '(' array_pair_list ')' '=' expr
3748
3749    '('  shift, and go to state 205
3750
3751
3752State 65
3753
3754  404 dereferencable_scalar: "array (T_ARRAY)" . '(' array_pair_list ')'
3755
3756    '('  shift, and go to state 206
3757
3758
3759State 66
3760
3761  409 scalar: "__LINE__ (T_LINE)" .
3762
3763    $default  reduce using rule 409 (scalar)
3764
3765
3766State 67
3767
3768  410 scalar: "__FILE__ (T_FILE)" .
3769
3770    $default  reduce using rule 410 (scalar)
3771
3772
3773State 68
3774
3775  411 scalar: "__DIR__ (T_DIR)" .
3776
3777    $default  reduce using rule 411 (scalar)
3778
3779
3780State 69
3781
3782  416 scalar: "__CLASS__ (T_CLASS_C)" .
3783
3784    $default  reduce using rule 416 (scalar)
3785
3786
3787State 70
3788
3789  412 scalar: "__TRAIT__ (T_TRAIT_C)" .
3790
3791    $default  reduce using rule 412 (scalar)
3792
3793
3794State 71
3795
3796  413 scalar: "__METHOD__ (T_METHOD_C)" .
3797
3798    $default  reduce using rule 413 (scalar)
3799
3800
3801State 72
3802
3803  414 scalar: "__FUNCTION__ (T_FUNC_C)" .
3804
3805    $default  reduce using rule 414 (scalar)
3806
3807
3808State 73
3809
3810  417 scalar: "heredoc start (T_START_HEREDOC)" . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" "heredoc end (T_END_HEREDOC)"
3811  418       | "heredoc start (T_START_HEREDOC)" . "heredoc end (T_END_HEREDOC)"
3812  420       | "heredoc start (T_START_HEREDOC)" . encaps_list "heredoc end (T_END_HEREDOC)"
3813
3814    "variable (T_VARIABLE)"                                     shift, and go to state 207
3815    "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"  shift, and go to state 208
3816    "heredoc end (T_END_HEREDOC)"                               shift, and go to state 209
3817    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"                           shift, and go to state 210
3818    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 211
3819
3820    encaps_list  go to state 212
3821    encaps_var   go to state 213
3822
3823
3824State 74
3825
3826   83 name: "namespace (T_NAMESPACE)" . "\\ (T_NS_SEPARATOR)" namespace_name
3827   91 top_statement: "namespace (T_NAMESPACE)" . namespace_name ';'
3828   93              | "namespace (T_NAMESPACE)" . namespace_name $@1 '{' top_statement_list '}'
3829   95              | "namespace (T_NAMESPACE)" . $@2 '{' top_statement_list '}'
3830
3831    "identifier (T_STRING)"  shift, and go to state 114
3832    "\\ (T_NS_SEPARATOR)"    shift, and go to state 214
3833
3834    $default  reduce using rule 94 ($@2)
3835
3836    namespace_name  go to state 215
3837    $@2             go to state 216
3838
3839
3840State 75
3841
3842  415 scalar: "__NAMESPACE__ (T_NS_C)" .
3843
3844    $default  reduce using rule 415 (scalar)
3845
3846
3847State 76
3848
3849   84 name: "\\ (T_NS_SEPARATOR)" . namespace_name
3850
3851    "identifier (T_STRING)"  shift, and go to state 114
3852
3853    namespace_name  go to state 217
3854
3855
3856State 77
3857
3858  354 expr: '(' . expr ')'
3859  430 dereferencable: '(' . expr ')'
3860  433 callable_expr: '(' . expr ')'
3861
3862    "include (T_INCLUDE)"                         shift, and go to state 4
3863    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
3864    "eval (T_EVAL)"                               shift, and go to state 6
3865    "require (T_REQUIRE)"                         shift, and go to state 7
3866    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
3867    "print (T_PRINT)"                             shift, and go to state 9
3868    "yield (T_YIELD)"                             shift, and go to state 10
3869    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
3870    '+'                                           shift, and go to state 12
3871    '-'                                           shift, and go to state 13
3872    '!'                                           shift, and go to state 14
3873    '~'                                           shift, and go to state 15
3874    "++ (T_INC)"                                  shift, and go to state 16
3875    "-- (T_DEC)"                                  shift, and go to state 17
3876    "(int) (T_INT_CAST)"                          shift, and go to state 18
3877    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
3878    "(string) (T_STRING_CAST)"                    shift, and go to state 20
3879    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
3880    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
3881    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
3882    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
3883    '@'                                           shift, and go to state 25
3884    '['                                           shift, and go to state 26
3885    "new (T_NEW)"                                 shift, and go to state 27
3886    "clone (T_CLONE)"                             shift, and go to state 28
3887    "static (T_STATIC)"                           shift, and go to state 113
3888    "integer number (T_LNUMBER)"                  shift, and go to state 32
3889    "floating-point number (T_DNUMBER)"           shift, and go to state 33
3890    "identifier (T_STRING)"                       shift, and go to state 114
3891    "variable (T_VARIABLE)"                       shift, and go to state 35
3892    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
3893    "exit (T_EXIT)"                               shift, and go to state 38
3894    "function (T_FUNCTION)"                       shift, and go to state 50
3895    "isset (T_ISSET)"                             shift, and go to state 58
3896    "empty (T_EMPTY)"                             shift, and go to state 59
3897    "list (T_LIST)"                               shift, and go to state 64
3898    "array (T_ARRAY)"                             shift, and go to state 65
3899    "__LINE__ (T_LINE)"                           shift, and go to state 66
3900    "__FILE__ (T_FILE)"                           shift, and go to state 67
3901    "__DIR__ (T_DIR)"                             shift, and go to state 68
3902    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
3903    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
3904    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
3905    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
3906    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
3907    "namespace (T_NAMESPACE)"                     shift, and go to state 115
3908    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
3909    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
3910    '('                                           shift, and go to state 77
3911    '`'                                           shift, and go to state 80
3912    '"'                                           shift, and go to state 81
3913    '$'                                           shift, and go to state 82
3914
3915    namespace_name              go to state 83
3916    name                        go to state 84
3917    new_expr                    go to state 97
3918    expr                        go to state 218
3919    function                    go to state 117
3920    function_call               go to state 100
3921    class_name                  go to state 101
3922    dereferencable_scalar       go to state 102
3923    scalar                      go to state 103
3924    constant                    go to state 104
3925    variable_class_name         go to state 105
3926    dereferencable              go to state 106
3927    callable_expr               go to state 107
3928    callable_variable           go to state 108
3929    variable                    go to state 109
3930    simple_variable             go to state 110
3931    static_member               go to state 111
3932    internal_functions_in_yacc  go to state 112
3933
3934
3935State 78
3936
3937  151 statement: ';' .
3938
3939    $default  reduce using rule 151 (statement)
3940
3941
3942State 79
3943
3944  131 statement: '{' . inner_statement_list '}'
3945
3946    $default  reduce using rule 124 (inner_statement_list)
3947
3948    inner_statement_list  go to state 219
3949
3950
3951State 80
3952
3953  370 expr: '`' . backticks_expr '`'
3954
3955    "variable (T_VARIABLE)"                                     shift, and go to state 207
3956    "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"  shift, and go to state 220
3957    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"                           shift, and go to state 210
3958    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 211
3959
3960    $default  reduce using rule 399 (backticks_expr)
3961
3962    backticks_expr  go to state 221
3963    encaps_list     go to state 222
3964    encaps_var      go to state 213
3965
3966
3967State 81
3968
3969  419 scalar: '"' . encaps_list '"'
3970
3971    "variable (T_VARIABLE)"                                     shift, and go to state 207
3972    "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"  shift, and go to state 223
3973    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"                           shift, and go to state 210
3974    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 211
3975
3976    encaps_list  go to state 224
3977    encaps_var   go to state 213
3978
3979
3980State 82
3981
3982  445 simple_variable: '$' . '{' expr '}'
3983  446                | '$' . simple_variable
3984
3985    "variable (T_VARIABLE)"  shift, and go to state 35
3986    '{'                      shift, and go to state 225
3987    '$'                      shift, and go to state 82
3988
3989    simple_variable  go to state 226
3990
3991
3992State 83
3993
3994   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
3995   82 name: namespace_name .
3996
3997    "\\ (T_NS_SEPARATOR)"  shift, and go to state 227
3998
3999    $default  reduce using rule 82 (name)
4000
4001
4002State 84
4003
4004  389 function_call: name . argument_list
4005  394 class_name: name .
4006  423 constant: name .
4007
4008    '('  shift, and go to state 228
4009
4010    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 394 (class_name)
4011    $default                       reduce using rule 423 (constant)
4012
4013    argument_list  go to state 229
4014
4015
4016State 85
4017
4018   78 top_statement_list: top_statement_list top_statement .
4019
4020    $default  reduce using rule 78 (top_statement_list)
4021
4022
4023State 86
4024
4025   85 top_statement: statement .
4026
4027    $default  reduce using rule 85 (top_statement)
4028
4029
4030State 87
4031
4032   86 top_statement: function_declaration_statement .
4033
4034    $default  reduce using rule 86 (top_statement)
4035
4036
4037State 88
4038
4039   87 top_statement: class_declaration_statement .
4040
4041    $default  reduce using rule 87 (top_statement)
4042
4043
4044State 89
4045
4046  171 class_declaration_statement: class_modifiers . "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}'
4047  175 class_modifiers: class_modifiers . class_modifier
4048
4049    "abstract (T_ABSTRACT)"  shift, and go to state 30
4050    "final (T_FINAL)"        shift, and go to state 31
4051    "class (T_CLASS)"        shift, and go to state 230
4052
4053    class_modifier  go to state 231
4054
4055
4056State 90
4057
4058  174 class_modifiers: class_modifier .
4059
4060    $default  reduce using rule 174 (class_modifiers)
4061
4062
4063State 91
4064
4065   88 top_statement: trait_declaration_statement .
4066
4067    $default  reduce using rule 88 (top_statement)
4068
4069
4070State 92
4071
4072   89 top_statement: interface_declaration_statement .
4073
4074    $default  reduce using rule 89 (top_statement)
4075
4076
4077State 93
4078
4079  210 if_stmt_without_else: if_stmt_without_else . "elseif (T_ELSEIF)" '(' expr ')' statement
4080  211 if_stmt: if_stmt_without_else .
4081  212        | if_stmt_without_else . "else (T_ELSE)" statement
4082
4083    "elseif (T_ELSEIF)"  shift, and go to state 232
4084    "else (T_ELSE)"      shift, and go to state 233
4085
4086    $default  reduce using rule 211 (if_stmt)
4087
4088
4089State 94
4090
4091  132 statement: if_stmt .
4092
4093    $default  reduce using rule 132 (statement)
4094
4095
4096State 95
4097
4098  214 alt_if_stmt_without_else: alt_if_stmt_without_else . "elseif (T_ELSEIF)" '(' expr ')' ':' inner_statement_list
4099  215 alt_if_stmt: alt_if_stmt_without_else . "endif (T_ENDIF)" ';'
4100  216            | alt_if_stmt_without_else . "else (T_ELSE)" ':' inner_statement_list "endif (T_ENDIF)" ';'
4101
4102    "elseif (T_ELSEIF)"  shift, and go to state 234
4103    "else (T_ELSE)"      shift, and go to state 235
4104    "endif (T_ENDIF)"    shift, and go to state 236
4105
4106
4107State 96
4108
4109  133 statement: alt_if_stmt .
4110
4111    $default  reduce using rule 133 (statement)
4112
4113
4114State 97
4115
4116  355 expr: new_expr .
4117
4118    $default  reduce using rule 355 (expr)
4119
4120
4121State 98
4122
4123  145 statement: expr . ';'
4124  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
4125  324     | expr . "&& (T_BOOLEAN_AND)" expr
4126  325     | expr . "or (T_LOGICAL_OR)" expr
4127  326     | expr . "and (T_LOGICAL_AND)" expr
4128  327     | expr . "xor (T_LOGICAL_XOR)" expr
4129  328     | expr . '|' expr
4130  329     | expr . '&' expr
4131  330     | expr . '^' expr
4132  331     | expr . '.' expr
4133  332     | expr . '+' expr
4134  333     | expr . '-' expr
4135  334     | expr . '*' expr
4136  335     | expr . "** (T_POW)" expr
4137  336     | expr . '/' expr
4138  337     | expr . '%' expr
4139  338     | expr . "<< (T_SL)" expr
4140  339     | expr . ">> (T_SR)" expr
4141  344     | expr . "=== (T_IS_IDENTICAL)" expr
4142  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
4143  346     | expr . "== (T_IS_EQUAL)" expr
4144  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
4145  348     | expr . '<' expr
4146  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
4147  350     | expr . '>' expr
4148  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
4149  352     | expr . "<=> (T_SPACESHIP)" expr
4150  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
4151  356     | expr . '?' expr ':' expr
4152  357     | expr . '?' ':' expr
4153  358     | expr . "?? (T_COALESCE)" expr
4154
4155    "or (T_LOGICAL_OR)"           shift, and go to state 237
4156    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
4157    "and (T_LOGICAL_AND)"         shift, and go to state 239
4158    '?'                           shift, and go to state 240
4159    "?? (T_COALESCE)"             shift, and go to state 241
4160    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
4161    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
4162    '|'                           shift, and go to state 244
4163    '^'                           shift, and go to state 245
4164    '&'                           shift, and go to state 246
4165    "== (T_IS_EQUAL)"             shift, and go to state 247
4166    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
4167    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
4168    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
4169    "<=> (T_SPACESHIP)"           shift, and go to state 251
4170    '<'                           shift, and go to state 252
4171    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
4172    '>'                           shift, and go to state 254
4173    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
4174    "<< (T_SL)"                   shift, and go to state 256
4175    ">> (T_SR)"                   shift, and go to state 257
4176    '+'                           shift, and go to state 258
4177    '-'                           shift, and go to state 259
4178    '.'                           shift, and go to state 260
4179    '*'                           shift, and go to state 261
4180    '/'                           shift, and go to state 262
4181    '%'                           shift, and go to state 263
4182    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
4183    "** (T_POW)"                  shift, and go to state 265
4184    ';'                           shift, and go to state 266
4185
4186
4187State 99
4188
4189  165 function_declaration_statement: function . returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
4190  376 expr: function . returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
4191
4192    '&'  shift, and go to state 267
4193
4194    $default  reduce using rule 381 (returns_ref)
4195
4196    returns_ref  go to state 268
4197
4198
4199State 100
4200
4201  440 callable_variable: function_call .
4202
4203    $default  reduce using rule 440 (callable_variable)
4204
4205
4206State 101
4207
4208  390 function_call: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list
4209  424 constant: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier
4210  447 static_member: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable
4211
4212    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  shift, and go to state 269
4213
4214
4215State 102
4216
4217  421 scalar: dereferencable_scalar .
4218  431 dereferencable: dereferencable_scalar .
4219  434 callable_expr: dereferencable_scalar .
4220
4221    '['                            reduce using rule 431 (dereferencable)
4222    "-> (T_OBJECT_OPERATOR)"       reduce using rule 431 (dereferencable)
4223    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 431 (dereferencable)
4224    '('                            reduce using rule 434 (callable_expr)
4225    '{'                            reduce using rule 431 (dereferencable)
4226    $default                       reduce using rule 421 (scalar)
4227
4228
4229State 103
4230
4231  369 expr: scalar .
4232
4233    $default  reduce using rule 369 (expr)
4234
4235
4236State 104
4237
4238  422 scalar: constant .
4239  437 callable_variable: constant . '[' optional_expr ']'
4240
4241    '['  shift, and go to state 270
4242
4243    $default  reduce using rule 422 (scalar)
4244
4245
4246State 105
4247
4248  391 function_call: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list
4249  425 constant: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier
4250  448 static_member: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable
4251
4252    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  shift, and go to state 271
4253
4254
4255State 106
4256
4257  428 variable_class_name: dereferencable .
4258  436 callable_variable: dereferencable . '[' optional_expr ']'
4259  438                  | dereferencable . '{' expr '}'
4260  439                  | dereferencable . "-> (T_OBJECT_OPERATOR)" property_name argument_list
4261  443 variable: dereferencable . "-> (T_OBJECT_OPERATOR)" property_name
4262
4263    '['                       shift, and go to state 272
4264    "-> (T_OBJECT_OPERATOR)"  shift, and go to state 273
4265    '{'                       shift, and go to state 274
4266
4267    $default  reduce using rule 428 (variable_class_name)
4268
4269
4270State 107
4271
4272  392 function_call: callable_expr . argument_list
4273
4274    '('  shift, and go to state 228
4275
4276    argument_list  go to state 275
4277
4278
4279State 108
4280
4281  432 callable_expr: callable_variable .
4282  441 variable: callable_variable .
4283
4284    '('       reduce using rule 432 (callable_expr)
4285    $default  reduce using rule 441 (variable)
4286
4287
4288State 109
4289
4290  301 expr: variable .
4291  304     | variable . '=' expr
4292  305     | variable . '=' '&' variable
4293  307     | variable . "+= (T_PLUS_EQUAL)" expr
4294  308     | variable . "-= (T_MINUS_EQUAL)" expr
4295  309     | variable . "*= (T_MUL_EQUAL)" expr
4296  310     | variable . "**= (T_POW_EQUAL)" expr
4297  311     | variable . "/= (T_DIV_EQUAL)" expr
4298  312     | variable . ".= (T_CONCAT_EQUAL)" expr
4299  313     | variable . "%= (T_MOD_EQUAL)" expr
4300  314     | variable . "&= (T_AND_EQUAL)" expr
4301  315     | variable . "|= (T_OR_EQUAL)" expr
4302  316     | variable . "^= (T_XOR_EQUAL)" expr
4303  317     | variable . "<<= (T_SL_EQUAL)" expr
4304  318     | variable . ">>= (T_SR_EQUAL)" expr
4305  319     | variable . "++ (T_INC)"
4306  321     | variable . "-- (T_DEC)"
4307  429 dereferencable: variable .
4308
4309    '='                    shift, and go to state 276
4310    "+= (T_PLUS_EQUAL)"    shift, and go to state 277
4311    "-= (T_MINUS_EQUAL)"   shift, and go to state 278
4312    "*= (T_MUL_EQUAL)"     shift, and go to state 279
4313    "/= (T_DIV_EQUAL)"     shift, and go to state 280
4314    ".= (T_CONCAT_EQUAL)"  shift, and go to state 281
4315    "%= (T_MOD_EQUAL)"     shift, and go to state 282
4316    "&= (T_AND_EQUAL)"     shift, and go to state 283
4317    "|= (T_OR_EQUAL)"      shift, and go to state 284
4318    "^= (T_XOR_EQUAL)"     shift, and go to state 285
4319    "<<= (T_SL_EQUAL)"     shift, and go to state 286
4320    ">>= (T_SR_EQUAL)"     shift, and go to state 287
4321    "**= (T_POW_EQUAL)"    shift, and go to state 288
4322    "++ (T_INC)"           shift, and go to state 289
4323    "-- (T_DEC)"           shift, and go to state 290
4324
4325    '['                            reduce using rule 429 (dereferencable)
4326    "-> (T_OBJECT_OPERATOR)"       reduce using rule 429 (dereferencable)
4327    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 429 (dereferencable)
4328    '{'                            reduce using rule 429 (dereferencable)
4329    $default                       reduce using rule 301 (expr)
4330
4331
4332State 110
4333
4334  435 callable_variable: simple_variable .
4335
4336    $default  reduce using rule 435 (callable_variable)
4337
4338
4339State 111
4340
4341  442 variable: static_member .
4342
4343    $default  reduce using rule 442 (variable)
4344
4345
4346State 112
4347
4348  359 expr: internal_functions_in_yacc .
4349
4350    $default  reduce using rule 359 (expr)
4351
4352
4353State 113
4354
4355  377 expr: "static (T_STATIC)" . function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
4356  393 class_name: "static (T_STATIC)" .
4357
4358    "function (T_FUNCTION)"  shift, and go to state 50
4359
4360    $default  reduce using rule 393 (class_name)
4361
4362    function  go to state 162
4363
4364
4365State 114
4366
4367   80 namespace_name: "identifier (T_STRING)" .
4368
4369    $default  reduce using rule 80 (namespace_name)
4370
4371
4372State 115
4373
4374   83 name: "namespace (T_NAMESPACE)" . "\\ (T_NS_SEPARATOR)" namespace_name
4375
4376    "\\ (T_NS_SEPARATOR)"  shift, and go to state 214
4377
4378
4379State 116
4380
4381  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
4382  324     | expr . "&& (T_BOOLEAN_AND)" expr
4383  325     | expr . "or (T_LOGICAL_OR)" expr
4384  326     | expr . "and (T_LOGICAL_AND)" expr
4385  327     | expr . "xor (T_LOGICAL_XOR)" expr
4386  328     | expr . '|' expr
4387  329     | expr . '&' expr
4388  330     | expr . '^' expr
4389  331     | expr . '.' expr
4390  332     | expr . '+' expr
4391  333     | expr . '-' expr
4392  334     | expr . '*' expr
4393  335     | expr . "** (T_POW)" expr
4394  336     | expr . '/' expr
4395  337     | expr . '%' expr
4396  338     | expr . "<< (T_SL)" expr
4397  339     | expr . ">> (T_SR)" expr
4398  344     | expr . "=== (T_IS_IDENTICAL)" expr
4399  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
4400  346     | expr . "== (T_IS_EQUAL)" expr
4401  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
4402  348     | expr . '<' expr
4403  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
4404  350     | expr . '>' expr
4405  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
4406  352     | expr . "<=> (T_SPACESHIP)" expr
4407  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
4408  356     | expr . '?' expr ':' expr
4409  357     | expr . '?' ':' expr
4410  358     | expr . "?? (T_COALESCE)" expr
4411  489 internal_functions_in_yacc: "include (T_INCLUDE)" expr .
4412
4413    "or (T_LOGICAL_OR)"           shift, and go to state 237
4414    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
4415    "and (T_LOGICAL_AND)"         shift, and go to state 239
4416    '?'                           shift, and go to state 240
4417    "?? (T_COALESCE)"             shift, and go to state 241
4418    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
4419    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
4420    '|'                           shift, and go to state 244
4421    '^'                           shift, and go to state 245
4422    '&'                           shift, and go to state 246
4423    "== (T_IS_EQUAL)"             shift, and go to state 247
4424    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
4425    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
4426    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
4427    "<=> (T_SPACESHIP)"           shift, and go to state 251
4428    '<'                           shift, and go to state 252
4429    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
4430    '>'                           shift, and go to state 254
4431    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
4432    "<< (T_SL)"                   shift, and go to state 256
4433    ">> (T_SR)"                   shift, and go to state 257
4434    '+'                           shift, and go to state 258
4435    '-'                           shift, and go to state 259
4436    '.'                           shift, and go to state 260
4437    '*'                           shift, and go to state 261
4438    '/'                           shift, and go to state 262
4439    '%'                           shift, and go to state 263
4440    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
4441    "** (T_POW)"                  shift, and go to state 265
4442
4443    $default  reduce using rule 489 (internal_functions_in_yacc)
4444
4445
4446State 117
4447
4448  376 expr: function . returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
4449
4450    '&'  shift, and go to state 267
4451
4452    $default  reduce using rule 381 (returns_ref)
4453
4454    returns_ref  go to state 291
4455
4456
4457State 118
4458
4459  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
4460  324     | expr . "&& (T_BOOLEAN_AND)" expr
4461  325     | expr . "or (T_LOGICAL_OR)" expr
4462  326     | expr . "and (T_LOGICAL_AND)" expr
4463  327     | expr . "xor (T_LOGICAL_XOR)" expr
4464  328     | expr . '|' expr
4465  329     | expr . '&' expr
4466  330     | expr . '^' expr
4467  331     | expr . '.' expr
4468  332     | expr . '+' expr
4469  333     | expr . '-' expr
4470  334     | expr . '*' expr
4471  335     | expr . "** (T_POW)" expr
4472  336     | expr . '/' expr
4473  337     | expr . '%' expr
4474  338     | expr . "<< (T_SL)" expr
4475  339     | expr . ">> (T_SR)" expr
4476  344     | expr . "=== (T_IS_IDENTICAL)" expr
4477  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
4478  346     | expr . "== (T_IS_EQUAL)" expr
4479  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
4480  348     | expr . '<' expr
4481  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
4482  350     | expr . '>' expr
4483  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
4484  352     | expr . "<=> (T_SPACESHIP)" expr
4485  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
4486  356     | expr . '?' expr ':' expr
4487  357     | expr . '?' ':' expr
4488  358     | expr . "?? (T_COALESCE)" expr
4489  490 internal_functions_in_yacc: "include_once (T_INCLUDE_ONCE)" expr .
4490
4491    "or (T_LOGICAL_OR)"           shift, and go to state 237
4492    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
4493    "and (T_LOGICAL_AND)"         shift, and go to state 239
4494    '?'                           shift, and go to state 240
4495    "?? (T_COALESCE)"             shift, and go to state 241
4496    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
4497    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
4498    '|'                           shift, and go to state 244
4499    '^'                           shift, and go to state 245
4500    '&'                           shift, and go to state 246
4501    "== (T_IS_EQUAL)"             shift, and go to state 247
4502    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
4503    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
4504    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
4505    "<=> (T_SPACESHIP)"           shift, and go to state 251
4506    '<'                           shift, and go to state 252
4507    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
4508    '>'                           shift, and go to state 254
4509    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
4510    "<< (T_SL)"                   shift, and go to state 256
4511    ">> (T_SR)"                   shift, and go to state 257
4512    '+'                           shift, and go to state 258
4513    '-'                           shift, and go to state 259
4514    '.'                           shift, and go to state 260
4515    '*'                           shift, and go to state 261
4516    '/'                           shift, and go to state 262
4517    '%'                           shift, and go to state 263
4518    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
4519    "** (T_POW)"                  shift, and go to state 265
4520
4521    $default  reduce using rule 490 (internal_functions_in_yacc)
4522
4523
4524State 119
4525
4526  491 internal_functions_in_yacc: "eval (T_EVAL)" '(' . expr ')'
4527
4528    "include (T_INCLUDE)"                         shift, and go to state 4
4529    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
4530    "eval (T_EVAL)"                               shift, and go to state 6
4531    "require (T_REQUIRE)"                         shift, and go to state 7
4532    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
4533    "print (T_PRINT)"                             shift, and go to state 9
4534    "yield (T_YIELD)"                             shift, and go to state 10
4535    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
4536    '+'                                           shift, and go to state 12
4537    '-'                                           shift, and go to state 13
4538    '!'                                           shift, and go to state 14
4539    '~'                                           shift, and go to state 15
4540    "++ (T_INC)"                                  shift, and go to state 16
4541    "-- (T_DEC)"                                  shift, and go to state 17
4542    "(int) (T_INT_CAST)"                          shift, and go to state 18
4543    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
4544    "(string) (T_STRING_CAST)"                    shift, and go to state 20
4545    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
4546    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
4547    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
4548    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
4549    '@'                                           shift, and go to state 25
4550    '['                                           shift, and go to state 26
4551    "new (T_NEW)"                                 shift, and go to state 27
4552    "clone (T_CLONE)"                             shift, and go to state 28
4553    "static (T_STATIC)"                           shift, and go to state 113
4554    "integer number (T_LNUMBER)"                  shift, and go to state 32
4555    "floating-point number (T_DNUMBER)"           shift, and go to state 33
4556    "identifier (T_STRING)"                       shift, and go to state 114
4557    "variable (T_VARIABLE)"                       shift, and go to state 35
4558    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
4559    "exit (T_EXIT)"                               shift, and go to state 38
4560    "function (T_FUNCTION)"                       shift, and go to state 50
4561    "isset (T_ISSET)"                             shift, and go to state 58
4562    "empty (T_EMPTY)"                             shift, and go to state 59
4563    "list (T_LIST)"                               shift, and go to state 64
4564    "array (T_ARRAY)"                             shift, and go to state 65
4565    "__LINE__ (T_LINE)"                           shift, and go to state 66
4566    "__FILE__ (T_FILE)"                           shift, and go to state 67
4567    "__DIR__ (T_DIR)"                             shift, and go to state 68
4568    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
4569    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
4570    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
4571    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
4572    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
4573    "namespace (T_NAMESPACE)"                     shift, and go to state 115
4574    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
4575    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
4576    '('                                           shift, and go to state 77
4577    '`'                                           shift, and go to state 80
4578    '"'                                           shift, and go to state 81
4579    '$'                                           shift, and go to state 82
4580
4581    namespace_name              go to state 83
4582    name                        go to state 84
4583    new_expr                    go to state 97
4584    expr                        go to state 292
4585    function                    go to state 117
4586    function_call               go to state 100
4587    class_name                  go to state 101
4588    dereferencable_scalar       go to state 102
4589    scalar                      go to state 103
4590    constant                    go to state 104
4591    variable_class_name         go to state 105
4592    dereferencable              go to state 106
4593    callable_expr               go to state 107
4594    callable_variable           go to state 108
4595    variable                    go to state 109
4596    simple_variable             go to state 110
4597    static_member               go to state 111
4598    internal_functions_in_yacc  go to state 112
4599
4600
4601State 120
4602
4603  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
4604  324     | expr . "&& (T_BOOLEAN_AND)" expr
4605  325     | expr . "or (T_LOGICAL_OR)" expr
4606  326     | expr . "and (T_LOGICAL_AND)" expr
4607  327     | expr . "xor (T_LOGICAL_XOR)" expr
4608  328     | expr . '|' expr
4609  329     | expr . '&' expr
4610  330     | expr . '^' expr
4611  331     | expr . '.' expr
4612  332     | expr . '+' expr
4613  333     | expr . '-' expr
4614  334     | expr . '*' expr
4615  335     | expr . "** (T_POW)" expr
4616  336     | expr . '/' expr
4617  337     | expr . '%' expr
4618  338     | expr . "<< (T_SL)" expr
4619  339     | expr . ">> (T_SR)" expr
4620  344     | expr . "=== (T_IS_IDENTICAL)" expr
4621  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
4622  346     | expr . "== (T_IS_EQUAL)" expr
4623  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
4624  348     | expr . '<' expr
4625  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
4626  350     | expr . '>' expr
4627  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
4628  352     | expr . "<=> (T_SPACESHIP)" expr
4629  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
4630  356     | expr . '?' expr ':' expr
4631  357     | expr . '?' ':' expr
4632  358     | expr . "?? (T_COALESCE)" expr
4633  492 internal_functions_in_yacc: "require (T_REQUIRE)" expr .
4634
4635    "or (T_LOGICAL_OR)"           shift, and go to state 237
4636    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
4637    "and (T_LOGICAL_AND)"         shift, and go to state 239
4638    '?'                           shift, and go to state 240
4639    "?? (T_COALESCE)"             shift, and go to state 241
4640    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
4641    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
4642    '|'                           shift, and go to state 244
4643    '^'                           shift, and go to state 245
4644    '&'                           shift, and go to state 246
4645    "== (T_IS_EQUAL)"             shift, and go to state 247
4646    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
4647    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
4648    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
4649    "<=> (T_SPACESHIP)"           shift, and go to state 251
4650    '<'                           shift, and go to state 252
4651    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
4652    '>'                           shift, and go to state 254
4653    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
4654    "<< (T_SL)"                   shift, and go to state 256
4655    ">> (T_SR)"                   shift, and go to state 257
4656    '+'                           shift, and go to state 258
4657    '-'                           shift, and go to state 259
4658    '.'                           shift, and go to state 260
4659    '*'                           shift, and go to state 261
4660    '/'                           shift, and go to state 262
4661    '%'                           shift, and go to state 263
4662    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
4663    "** (T_POW)"                  shift, and go to state 265
4664
4665    $default  reduce using rule 492 (internal_functions_in_yacc)
4666
4667
4668State 121
4669
4670  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
4671  324     | expr . "&& (T_BOOLEAN_AND)" expr
4672  325     | expr . "or (T_LOGICAL_OR)" expr
4673  326     | expr . "and (T_LOGICAL_AND)" expr
4674  327     | expr . "xor (T_LOGICAL_XOR)" expr
4675  328     | expr . '|' expr
4676  329     | expr . '&' expr
4677  330     | expr . '^' expr
4678  331     | expr . '.' expr
4679  332     | expr . '+' expr
4680  333     | expr . '-' expr
4681  334     | expr . '*' expr
4682  335     | expr . "** (T_POW)" expr
4683  336     | expr . '/' expr
4684  337     | expr . '%' expr
4685  338     | expr . "<< (T_SL)" expr
4686  339     | expr . ">> (T_SR)" expr
4687  344     | expr . "=== (T_IS_IDENTICAL)" expr
4688  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
4689  346     | expr . "== (T_IS_EQUAL)" expr
4690  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
4691  348     | expr . '<' expr
4692  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
4693  350     | expr . '>' expr
4694  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
4695  352     | expr . "<=> (T_SPACESHIP)" expr
4696  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
4697  356     | expr . '?' expr ':' expr
4698  357     | expr . '?' ':' expr
4699  358     | expr . "?? (T_COALESCE)" expr
4700  493 internal_functions_in_yacc: "require_once (T_REQUIRE_ONCE)" expr .
4701
4702    "or (T_LOGICAL_OR)"           shift, and go to state 237
4703    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
4704    "and (T_LOGICAL_AND)"         shift, and go to state 239
4705    '?'                           shift, and go to state 240
4706    "?? (T_COALESCE)"             shift, and go to state 241
4707    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
4708    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
4709    '|'                           shift, and go to state 244
4710    '^'                           shift, and go to state 245
4711    '&'                           shift, and go to state 246
4712    "== (T_IS_EQUAL)"             shift, and go to state 247
4713    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
4714    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
4715    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
4716    "<=> (T_SPACESHIP)"           shift, and go to state 251
4717    '<'                           shift, and go to state 252
4718    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
4719    '>'                           shift, and go to state 254
4720    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
4721    "<< (T_SL)"                   shift, and go to state 256
4722    ">> (T_SR)"                   shift, and go to state 257
4723    '+'                           shift, and go to state 258
4724    '-'                           shift, and go to state 259
4725    '.'                           shift, and go to state 260
4726    '*'                           shift, and go to state 261
4727    '/'                           shift, and go to state 262
4728    '%'                           shift, and go to state 263
4729    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
4730    "** (T_POW)"                  shift, and go to state 265
4731
4732    $default  reduce using rule 493 (internal_functions_in_yacc)
4733
4734
4735State 122
4736
4737  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
4738  324     | expr . "&& (T_BOOLEAN_AND)" expr
4739  325     | expr . "or (T_LOGICAL_OR)" expr
4740  326     | expr . "and (T_LOGICAL_AND)" expr
4741  327     | expr . "xor (T_LOGICAL_XOR)" expr
4742  328     | expr . '|' expr
4743  329     | expr . '&' expr
4744  330     | expr . '^' expr
4745  331     | expr . '.' expr
4746  332     | expr . '+' expr
4747  333     | expr . '-' expr
4748  334     | expr . '*' expr
4749  335     | expr . "** (T_POW)" expr
4750  336     | expr . '/' expr
4751  337     | expr . '%' expr
4752  338     | expr . "<< (T_SL)" expr
4753  339     | expr . ">> (T_SR)" expr
4754  344     | expr . "=== (T_IS_IDENTICAL)" expr
4755  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
4756  346     | expr . "== (T_IS_EQUAL)" expr
4757  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
4758  348     | expr . '<' expr
4759  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
4760  350     | expr . '>' expr
4761  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
4762  352     | expr . "<=> (T_SPACESHIP)" expr
4763  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
4764  356     | expr . '?' expr ':' expr
4765  357     | expr . '?' ':' expr
4766  358     | expr . "?? (T_COALESCE)" expr
4767  371     | "print (T_PRINT)" expr .
4768
4769    '?'                           shift, and go to state 240
4770    "?? (T_COALESCE)"             shift, and go to state 241
4771    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
4772    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
4773    '|'                           shift, and go to state 244
4774    '^'                           shift, and go to state 245
4775    '&'                           shift, and go to state 246
4776    "== (T_IS_EQUAL)"             shift, and go to state 247
4777    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
4778    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
4779    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
4780    "<=> (T_SPACESHIP)"           shift, and go to state 251
4781    '<'                           shift, and go to state 252
4782    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
4783    '>'                           shift, and go to state 254
4784    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
4785    "<< (T_SL)"                   shift, and go to state 256
4786    ">> (T_SR)"                   shift, and go to state 257
4787    '+'                           shift, and go to state 258
4788    '-'                           shift, and go to state 259
4789    '.'                           shift, and go to state 260
4790    '*'                           shift, and go to state 261
4791    '/'                           shift, and go to state 262
4792    '%'                           shift, and go to state 263
4793    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
4794    "** (T_POW)"                  shift, and go to state 265
4795
4796    $default  reduce using rule 371 (expr)
4797
4798
4799State 123
4800
4801  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
4802  324     | expr . "&& (T_BOOLEAN_AND)" expr
4803  325     | expr . "or (T_LOGICAL_OR)" expr
4804  326     | expr . "and (T_LOGICAL_AND)" expr
4805  327     | expr . "xor (T_LOGICAL_XOR)" expr
4806  328     | expr . '|' expr
4807  329     | expr . '&' expr
4808  330     | expr . '^' expr
4809  331     | expr . '.' expr
4810  332     | expr . '+' expr
4811  333     | expr . '-' expr
4812  334     | expr . '*' expr
4813  335     | expr . "** (T_POW)" expr
4814  336     | expr . '/' expr
4815  337     | expr . '%' expr
4816  338     | expr . "<< (T_SL)" expr
4817  339     | expr . ">> (T_SR)" expr
4818  344     | expr . "=== (T_IS_IDENTICAL)" expr
4819  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
4820  346     | expr . "== (T_IS_EQUAL)" expr
4821  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
4822  348     | expr . '<' expr
4823  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
4824  350     | expr . '>' expr
4825  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
4826  352     | expr . "<=> (T_SPACESHIP)" expr
4827  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
4828  356     | expr . '?' expr ':' expr
4829  357     | expr . '?' ':' expr
4830  358     | expr . "?? (T_COALESCE)" expr
4831  373     | "yield (T_YIELD)" expr .
4832  374     | "yield (T_YIELD)" expr . "=> (T_DOUBLE_ARROW)" expr
4833
4834    "=> (T_DOUBLE_ARROW)"         shift, and go to state 293
4835    '?'                           shift, and go to state 240
4836    "?? (T_COALESCE)"             shift, and go to state 241
4837    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
4838    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
4839    '|'                           shift, and go to state 244
4840    '^'                           shift, and go to state 245
4841    '&'                           shift, and go to state 246
4842    "== (T_IS_EQUAL)"             shift, and go to state 247
4843    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
4844    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
4845    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
4846    "<=> (T_SPACESHIP)"           shift, and go to state 251
4847    '<'                           shift, and go to state 252
4848    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
4849    '>'                           shift, and go to state 254
4850    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
4851    "<< (T_SL)"                   shift, and go to state 256
4852    ">> (T_SR)"                   shift, and go to state 257
4853    '+'                           shift, and go to state 258
4854    '-'                           shift, and go to state 259
4855    '.'                           shift, and go to state 260
4856    '*'                           shift, and go to state 261
4857    '/'                           shift, and go to state 262
4858    '%'                           shift, and go to state 263
4859    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
4860    "** (T_POW)"                  shift, and go to state 265
4861
4862    $default  reduce using rule 373 (expr)
4863
4864
4865State 124
4866
4867  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
4868  324     | expr . "&& (T_BOOLEAN_AND)" expr
4869  325     | expr . "or (T_LOGICAL_OR)" expr
4870  326     | expr . "and (T_LOGICAL_AND)" expr
4871  327     | expr . "xor (T_LOGICAL_XOR)" expr
4872  328     | expr . '|' expr
4873  329     | expr . '&' expr
4874  330     | expr . '^' expr
4875  331     | expr . '.' expr
4876  332     | expr . '+' expr
4877  333     | expr . '-' expr
4878  334     | expr . '*' expr
4879  335     | expr . "** (T_POW)" expr
4880  336     | expr . '/' expr
4881  337     | expr . '%' expr
4882  338     | expr . "<< (T_SL)" expr
4883  339     | expr . ">> (T_SR)" expr
4884  344     | expr . "=== (T_IS_IDENTICAL)" expr
4885  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
4886  346     | expr . "== (T_IS_EQUAL)" expr
4887  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
4888  348     | expr . '<' expr
4889  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
4890  350     | expr . '>' expr
4891  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
4892  352     | expr . "<=> (T_SPACESHIP)" expr
4893  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
4894  356     | expr . '?' expr ':' expr
4895  357     | expr . '?' ':' expr
4896  358     | expr . "?? (T_COALESCE)" expr
4897  375     | "yield from (T_YIELD_FROM)" expr .
4898
4899    '?'                           shift, and go to state 240
4900    "?? (T_COALESCE)"             shift, and go to state 241
4901    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
4902    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
4903    '|'                           shift, and go to state 244
4904    '^'                           shift, and go to state 245
4905    '&'                           shift, and go to state 246
4906    "== (T_IS_EQUAL)"             shift, and go to state 247
4907    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
4908    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
4909    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
4910    "<=> (T_SPACESHIP)"           shift, and go to state 251
4911    '<'                           shift, and go to state 252
4912    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
4913    '>'                           shift, and go to state 254
4914    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
4915    "<< (T_SL)"                   shift, and go to state 256
4916    ">> (T_SR)"                   shift, and go to state 257
4917    '+'                           shift, and go to state 258
4918    '-'                           shift, and go to state 259
4919    '.'                           shift, and go to state 260
4920    '*'                           shift, and go to state 261
4921    '/'                           shift, and go to state 262
4922    '%'                           shift, and go to state 263
4923    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
4924    "** (T_POW)"                  shift, and go to state 265
4925
4926    $default  reduce using rule 375 (expr)
4927
4928
4929State 125
4930
4931  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
4932  324     | expr . "&& (T_BOOLEAN_AND)" expr
4933  325     | expr . "or (T_LOGICAL_OR)" expr
4934  326     | expr . "and (T_LOGICAL_AND)" expr
4935  327     | expr . "xor (T_LOGICAL_XOR)" expr
4936  328     | expr . '|' expr
4937  329     | expr . '&' expr
4938  330     | expr . '^' expr
4939  331     | expr . '.' expr
4940  332     | expr . '+' expr
4941  333     | expr . '-' expr
4942  334     | expr . '*' expr
4943  335     | expr . "** (T_POW)" expr
4944  336     | expr . '/' expr
4945  337     | expr . '%' expr
4946  338     | expr . "<< (T_SL)" expr
4947  339     | expr . ">> (T_SR)" expr
4948  340     | '+' expr .
4949  344     | expr . "=== (T_IS_IDENTICAL)" expr
4950  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
4951  346     | expr . "== (T_IS_EQUAL)" expr
4952  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
4953  348     | expr . '<' expr
4954  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
4955  350     | expr . '>' expr
4956  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
4957  352     | expr . "<=> (T_SPACESHIP)" expr
4958  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
4959  356     | expr . '?' expr ':' expr
4960  357     | expr . '?' ':' expr
4961  358     | expr . "?? (T_COALESCE)" expr
4962
4963    "** (T_POW)"  shift, and go to state 265
4964
4965    $default  reduce using rule 340 (expr)
4966
4967
4968State 126
4969
4970  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
4971  324     | expr . "&& (T_BOOLEAN_AND)" expr
4972  325     | expr . "or (T_LOGICAL_OR)" expr
4973  326     | expr . "and (T_LOGICAL_AND)" expr
4974  327     | expr . "xor (T_LOGICAL_XOR)" expr
4975  328     | expr . '|' expr
4976  329     | expr . '&' expr
4977  330     | expr . '^' expr
4978  331     | expr . '.' expr
4979  332     | expr . '+' expr
4980  333     | expr . '-' expr
4981  334     | expr . '*' expr
4982  335     | expr . "** (T_POW)" expr
4983  336     | expr . '/' expr
4984  337     | expr . '%' expr
4985  338     | expr . "<< (T_SL)" expr
4986  339     | expr . ">> (T_SR)" expr
4987  341     | '-' expr .
4988  344     | expr . "=== (T_IS_IDENTICAL)" expr
4989  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
4990  346     | expr . "== (T_IS_EQUAL)" expr
4991  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
4992  348     | expr . '<' expr
4993  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
4994  350     | expr . '>' expr
4995  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
4996  352     | expr . "<=> (T_SPACESHIP)" expr
4997  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
4998  356     | expr . '?' expr ':' expr
4999  357     | expr . '?' ':' expr
5000  358     | expr . "?? (T_COALESCE)" expr
5001
5002    "** (T_POW)"  shift, and go to state 265
5003
5004    $default  reduce using rule 341 (expr)
5005
5006
5007State 127
5008
5009  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
5010  324     | expr . "&& (T_BOOLEAN_AND)" expr
5011  325     | expr . "or (T_LOGICAL_OR)" expr
5012  326     | expr . "and (T_LOGICAL_AND)" expr
5013  327     | expr . "xor (T_LOGICAL_XOR)" expr
5014  328     | expr . '|' expr
5015  329     | expr . '&' expr
5016  330     | expr . '^' expr
5017  331     | expr . '.' expr
5018  332     | expr . '+' expr
5019  333     | expr . '-' expr
5020  334     | expr . '*' expr
5021  335     | expr . "** (T_POW)" expr
5022  336     | expr . '/' expr
5023  337     | expr . '%' expr
5024  338     | expr . "<< (T_SL)" expr
5025  339     | expr . ">> (T_SR)" expr
5026  342     | '!' expr .
5027  344     | expr . "=== (T_IS_IDENTICAL)" expr
5028  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
5029  346     | expr . "== (T_IS_EQUAL)" expr
5030  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
5031  348     | expr . '<' expr
5032  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
5033  350     | expr . '>' expr
5034  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
5035  352     | expr . "<=> (T_SPACESHIP)" expr
5036  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
5037  356     | expr . '?' expr ':' expr
5038  357     | expr . '?' ':' expr
5039  358     | expr . "?? (T_COALESCE)" expr
5040
5041    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
5042    "** (T_POW)"                 shift, and go to state 265
5043
5044    $default  reduce using rule 342 (expr)
5045
5046
5047State 128
5048
5049  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
5050  324     | expr . "&& (T_BOOLEAN_AND)" expr
5051  325     | expr . "or (T_LOGICAL_OR)" expr
5052  326     | expr . "and (T_LOGICAL_AND)" expr
5053  327     | expr . "xor (T_LOGICAL_XOR)" expr
5054  328     | expr . '|' expr
5055  329     | expr . '&' expr
5056  330     | expr . '^' expr
5057  331     | expr . '.' expr
5058  332     | expr . '+' expr
5059  333     | expr . '-' expr
5060  334     | expr . '*' expr
5061  335     | expr . "** (T_POW)" expr
5062  336     | expr . '/' expr
5063  337     | expr . '%' expr
5064  338     | expr . "<< (T_SL)" expr
5065  339     | expr . ">> (T_SR)" expr
5066  343     | '~' expr .
5067  344     | expr . "=== (T_IS_IDENTICAL)" expr
5068  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
5069  346     | expr . "== (T_IS_EQUAL)" expr
5070  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
5071  348     | expr . '<' expr
5072  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
5073  350     | expr . '>' expr
5074  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
5075  352     | expr . "<=> (T_SPACESHIP)" expr
5076  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
5077  356     | expr . '?' expr ':' expr
5078  357     | expr . '?' ':' expr
5079  358     | expr . "?? (T_COALESCE)" expr
5080
5081    "** (T_POW)"  shift, and go to state 265
5082
5083    $default  reduce using rule 343 (expr)
5084
5085
5086State 129
5087
5088  405 dereferencable_scalar: '[' . array_pair_list ']'
5089
5090    "include (T_INCLUDE)"                         shift, and go to state 4
5091    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
5092    "eval (T_EVAL)"                               shift, and go to state 6
5093    "require (T_REQUIRE)"                         shift, and go to state 7
5094    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
5095    "print (T_PRINT)"                             shift, and go to state 9
5096    "yield (T_YIELD)"                             shift, and go to state 10
5097    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
5098    '&'                                           shift, and go to state 144
5099    '+'                                           shift, and go to state 12
5100    '-'                                           shift, and go to state 13
5101    '!'                                           shift, and go to state 14
5102    '~'                                           shift, and go to state 15
5103    "++ (T_INC)"                                  shift, and go to state 16
5104    "-- (T_DEC)"                                  shift, and go to state 17
5105    "(int) (T_INT_CAST)"                          shift, and go to state 18
5106    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
5107    "(string) (T_STRING_CAST)"                    shift, and go to state 20
5108    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
5109    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
5110    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
5111    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
5112    '@'                                           shift, and go to state 25
5113    '['                                           shift, and go to state 26
5114    "new (T_NEW)"                                 shift, and go to state 27
5115    "clone (T_CLONE)"                             shift, and go to state 28
5116    "static (T_STATIC)"                           shift, and go to state 113
5117    "integer number (T_LNUMBER)"                  shift, and go to state 32
5118    "floating-point number (T_DNUMBER)"           shift, and go to state 33
5119    "identifier (T_STRING)"                       shift, and go to state 114
5120    "variable (T_VARIABLE)"                       shift, and go to state 35
5121    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
5122    "exit (T_EXIT)"                               shift, and go to state 38
5123    "function (T_FUNCTION)"                       shift, and go to state 50
5124    "isset (T_ISSET)"                             shift, and go to state 58
5125    "empty (T_EMPTY)"                             shift, and go to state 59
5126    "list (T_LIST)"                               shift, and go to state 145
5127    "array (T_ARRAY)"                             shift, and go to state 65
5128    "__LINE__ (T_LINE)"                           shift, and go to state 66
5129    "__FILE__ (T_FILE)"                           shift, and go to state 67
5130    "__DIR__ (T_DIR)"                             shift, and go to state 68
5131    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
5132    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
5133    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
5134    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
5135    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
5136    "namespace (T_NAMESPACE)"                     shift, and go to state 115
5137    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
5138    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
5139    '('                                           shift, and go to state 77
5140    '`'                                           shift, and go to state 80
5141    '"'                                           shift, and go to state 81
5142    '$'                                           shift, and go to state 82
5143
5144    $default  reduce using rule 462 (possible_array_pair)
5145
5146    namespace_name              go to state 83
5147    name                        go to state 84
5148    new_expr                    go to state 97
5149    expr                        go to state 146
5150    function                    go to state 117
5151    function_call               go to state 100
5152    class_name                  go to state 101
5153    dereferencable_scalar       go to state 102
5154    scalar                      go to state 103
5155    constant                    go to state 104
5156    variable_class_name         go to state 105
5157    dereferencable              go to state 106
5158    callable_expr               go to state 107
5159    callable_variable           go to state 108
5160    variable                    go to state 109
5161    simple_variable             go to state 110
5162    static_member               go to state 111
5163    array_pair_list             go to state 294
5164    possible_array_pair         go to state 148
5165    non_empty_array_pair_list   go to state 149
5166    array_pair                  go to state 150
5167    internal_functions_in_yacc  go to state 112
5168
5169
5170State 130
5171
5172  393 class_name: "static (T_STATIC)" .
5173
5174    $default  reduce using rule 393 (class_name)
5175
5176
5177State 131
5178
5179  430 dereferencable: '(' . expr ')'
5180  433 callable_expr: '(' . expr ')'
5181
5182    "include (T_INCLUDE)"                         shift, and go to state 4
5183    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
5184    "eval (T_EVAL)"                               shift, and go to state 6
5185    "require (T_REQUIRE)"                         shift, and go to state 7
5186    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
5187    "print (T_PRINT)"                             shift, and go to state 9
5188    "yield (T_YIELD)"                             shift, and go to state 10
5189    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
5190    '+'                                           shift, and go to state 12
5191    '-'                                           shift, and go to state 13
5192    '!'                                           shift, and go to state 14
5193    '~'                                           shift, and go to state 15
5194    "++ (T_INC)"                                  shift, and go to state 16
5195    "-- (T_DEC)"                                  shift, and go to state 17
5196    "(int) (T_INT_CAST)"                          shift, and go to state 18
5197    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
5198    "(string) (T_STRING_CAST)"                    shift, and go to state 20
5199    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
5200    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
5201    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
5202    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
5203    '@'                                           shift, and go to state 25
5204    '['                                           shift, and go to state 26
5205    "new (T_NEW)"                                 shift, and go to state 27
5206    "clone (T_CLONE)"                             shift, and go to state 28
5207    "static (T_STATIC)"                           shift, and go to state 113
5208    "integer number (T_LNUMBER)"                  shift, and go to state 32
5209    "floating-point number (T_DNUMBER)"           shift, and go to state 33
5210    "identifier (T_STRING)"                       shift, and go to state 114
5211    "variable (T_VARIABLE)"                       shift, and go to state 35
5212    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
5213    "exit (T_EXIT)"                               shift, and go to state 38
5214    "function (T_FUNCTION)"                       shift, and go to state 50
5215    "isset (T_ISSET)"                             shift, and go to state 58
5216    "empty (T_EMPTY)"                             shift, and go to state 59
5217    "list (T_LIST)"                               shift, and go to state 64
5218    "array (T_ARRAY)"                             shift, and go to state 65
5219    "__LINE__ (T_LINE)"                           shift, and go to state 66
5220    "__FILE__ (T_FILE)"                           shift, and go to state 67
5221    "__DIR__ (T_DIR)"                             shift, and go to state 68
5222    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
5223    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
5224    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
5225    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
5226    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
5227    "namespace (T_NAMESPACE)"                     shift, and go to state 115
5228    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
5229    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
5230    '('                                           shift, and go to state 77
5231    '`'                                           shift, and go to state 80
5232    '"'                                           shift, and go to state 81
5233    '$'                                           shift, and go to state 82
5234
5235    namespace_name              go to state 83
5236    name                        go to state 84
5237    new_expr                    go to state 97
5238    expr                        go to state 295
5239    function                    go to state 117
5240    function_call               go to state 100
5241    class_name                  go to state 101
5242    dereferencable_scalar       go to state 102
5243    scalar                      go to state 103
5244    constant                    go to state 104
5245    variable_class_name         go to state 105
5246    dereferencable              go to state 106
5247    callable_expr               go to state 107
5248    callable_variable           go to state 108
5249    variable                    go to state 109
5250    simple_variable             go to state 110
5251    static_member               go to state 111
5252    internal_functions_in_yacc  go to state 112
5253
5254
5255State 132
5256
5257  431 dereferencable: dereferencable_scalar .
5258  434 callable_expr: dereferencable_scalar .
5259
5260    '('       reduce using rule 434 (callable_expr)
5261    $default  reduce using rule 431 (dereferencable)
5262
5263
5264State 133
5265
5266  437 callable_variable: constant . '[' optional_expr ']'
5267
5268    '['  shift, and go to state 270
5269
5270
5271State 134
5272
5273  320 expr: "++ (T_INC)" variable .
5274  429 dereferencable: variable .
5275
5276    '['                            reduce using rule 429 (dereferencable)
5277    "-> (T_OBJECT_OPERATOR)"       reduce using rule 429 (dereferencable)
5278    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 429 (dereferencable)
5279    '{'                            reduce using rule 429 (dereferencable)
5280    $default                       reduce using rule 320 (expr)
5281
5282
5283State 135
5284
5285  322 expr: "-- (T_DEC)" variable .
5286  429 dereferencable: variable .
5287
5288    '['                            reduce using rule 429 (dereferencable)
5289    "-> (T_OBJECT_OPERATOR)"       reduce using rule 429 (dereferencable)
5290    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 429 (dereferencable)
5291    '{'                            reduce using rule 429 (dereferencable)
5292    $default                       reduce using rule 322 (expr)
5293
5294
5295State 136
5296
5297  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
5298  324     | expr . "&& (T_BOOLEAN_AND)" expr
5299  325     | expr . "or (T_LOGICAL_OR)" expr
5300  326     | expr . "and (T_LOGICAL_AND)" expr
5301  327     | expr . "xor (T_LOGICAL_XOR)" expr
5302  328     | expr . '|' expr
5303  329     | expr . '&' expr
5304  330     | expr . '^' expr
5305  331     | expr . '.' expr
5306  332     | expr . '+' expr
5307  333     | expr . '-' expr
5308  334     | expr . '*' expr
5309  335     | expr . "** (T_POW)" expr
5310  336     | expr . '/' expr
5311  337     | expr . '%' expr
5312  338     | expr . "<< (T_SL)" expr
5313  339     | expr . ">> (T_SR)" expr
5314  344     | expr . "=== (T_IS_IDENTICAL)" expr
5315  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
5316  346     | expr . "== (T_IS_EQUAL)" expr
5317  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
5318  348     | expr . '<' expr
5319  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
5320  350     | expr . '>' expr
5321  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
5322  352     | expr . "<=> (T_SPACESHIP)" expr
5323  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
5324  356     | expr . '?' expr ':' expr
5325  357     | expr . '?' ':' expr
5326  358     | expr . "?? (T_COALESCE)" expr
5327  360     | "(int) (T_INT_CAST)" expr .
5328
5329    "** (T_POW)"  shift, and go to state 265
5330
5331    $default  reduce using rule 360 (expr)
5332
5333
5334State 137
5335
5336  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
5337  324     | expr . "&& (T_BOOLEAN_AND)" expr
5338  325     | expr . "or (T_LOGICAL_OR)" expr
5339  326     | expr . "and (T_LOGICAL_AND)" expr
5340  327     | expr . "xor (T_LOGICAL_XOR)" expr
5341  328     | expr . '|' expr
5342  329     | expr . '&' expr
5343  330     | expr . '^' expr
5344  331     | expr . '.' expr
5345  332     | expr . '+' expr
5346  333     | expr . '-' expr
5347  334     | expr . '*' expr
5348  335     | expr . "** (T_POW)" expr
5349  336     | expr . '/' expr
5350  337     | expr . '%' expr
5351  338     | expr . "<< (T_SL)" expr
5352  339     | expr . ">> (T_SR)" expr
5353  344     | expr . "=== (T_IS_IDENTICAL)" expr
5354  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
5355  346     | expr . "== (T_IS_EQUAL)" expr
5356  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
5357  348     | expr . '<' expr
5358  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
5359  350     | expr . '>' expr
5360  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
5361  352     | expr . "<=> (T_SPACESHIP)" expr
5362  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
5363  356     | expr . '?' expr ':' expr
5364  357     | expr . '?' ':' expr
5365  358     | expr . "?? (T_COALESCE)" expr
5366  361     | "(double) (T_DOUBLE_CAST)" expr .
5367
5368    "** (T_POW)"  shift, and go to state 265
5369
5370    $default  reduce using rule 361 (expr)
5371
5372
5373State 138
5374
5375  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
5376  324     | expr . "&& (T_BOOLEAN_AND)" expr
5377  325     | expr . "or (T_LOGICAL_OR)" expr
5378  326     | expr . "and (T_LOGICAL_AND)" expr
5379  327     | expr . "xor (T_LOGICAL_XOR)" expr
5380  328     | expr . '|' expr
5381  329     | expr . '&' expr
5382  330     | expr . '^' expr
5383  331     | expr . '.' expr
5384  332     | expr . '+' expr
5385  333     | expr . '-' expr
5386  334     | expr . '*' expr
5387  335     | expr . "** (T_POW)" expr
5388  336     | expr . '/' expr
5389  337     | expr . '%' expr
5390  338     | expr . "<< (T_SL)" expr
5391  339     | expr . ">> (T_SR)" expr
5392  344     | expr . "=== (T_IS_IDENTICAL)" expr
5393  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
5394  346     | expr . "== (T_IS_EQUAL)" expr
5395  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
5396  348     | expr . '<' expr
5397  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
5398  350     | expr . '>' expr
5399  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
5400  352     | expr . "<=> (T_SPACESHIP)" expr
5401  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
5402  356     | expr . '?' expr ':' expr
5403  357     | expr . '?' ':' expr
5404  358     | expr . "?? (T_COALESCE)" expr
5405  362     | "(string) (T_STRING_CAST)" expr .
5406
5407    "** (T_POW)"  shift, and go to state 265
5408
5409    $default  reduce using rule 362 (expr)
5410
5411
5412State 139
5413
5414  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
5415  324     | expr . "&& (T_BOOLEAN_AND)" expr
5416  325     | expr . "or (T_LOGICAL_OR)" expr
5417  326     | expr . "and (T_LOGICAL_AND)" expr
5418  327     | expr . "xor (T_LOGICAL_XOR)" expr
5419  328     | expr . '|' expr
5420  329     | expr . '&' expr
5421  330     | expr . '^' expr
5422  331     | expr . '.' expr
5423  332     | expr . '+' expr
5424  333     | expr . '-' expr
5425  334     | expr . '*' expr
5426  335     | expr . "** (T_POW)" expr
5427  336     | expr . '/' expr
5428  337     | expr . '%' expr
5429  338     | expr . "<< (T_SL)" expr
5430  339     | expr . ">> (T_SR)" expr
5431  344     | expr . "=== (T_IS_IDENTICAL)" expr
5432  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
5433  346     | expr . "== (T_IS_EQUAL)" expr
5434  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
5435  348     | expr . '<' expr
5436  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
5437  350     | expr . '>' expr
5438  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
5439  352     | expr . "<=> (T_SPACESHIP)" expr
5440  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
5441  356     | expr . '?' expr ':' expr
5442  357     | expr . '?' ':' expr
5443  358     | expr . "?? (T_COALESCE)" expr
5444  363     | "(array) (T_ARRAY_CAST)" expr .
5445
5446    "** (T_POW)"  shift, and go to state 265
5447
5448    $default  reduce using rule 363 (expr)
5449
5450
5451State 140
5452
5453  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
5454  324     | expr . "&& (T_BOOLEAN_AND)" expr
5455  325     | expr . "or (T_LOGICAL_OR)" expr
5456  326     | expr . "and (T_LOGICAL_AND)" expr
5457  327     | expr . "xor (T_LOGICAL_XOR)" expr
5458  328     | expr . '|' expr
5459  329     | expr . '&' expr
5460  330     | expr . '^' expr
5461  331     | expr . '.' expr
5462  332     | expr . '+' expr
5463  333     | expr . '-' expr
5464  334     | expr . '*' expr
5465  335     | expr . "** (T_POW)" expr
5466  336     | expr . '/' expr
5467  337     | expr . '%' expr
5468  338     | expr . "<< (T_SL)" expr
5469  339     | expr . ">> (T_SR)" expr
5470  344     | expr . "=== (T_IS_IDENTICAL)" expr
5471  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
5472  346     | expr . "== (T_IS_EQUAL)" expr
5473  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
5474  348     | expr . '<' expr
5475  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
5476  350     | expr . '>' expr
5477  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
5478  352     | expr . "<=> (T_SPACESHIP)" expr
5479  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
5480  356     | expr . '?' expr ':' expr
5481  357     | expr . '?' ':' expr
5482  358     | expr . "?? (T_COALESCE)" expr
5483  364     | "(object) (T_OBJECT_CAST)" expr .
5484
5485    "** (T_POW)"  shift, and go to state 265
5486
5487    $default  reduce using rule 364 (expr)
5488
5489
5490State 141
5491
5492  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
5493  324     | expr . "&& (T_BOOLEAN_AND)" expr
5494  325     | expr . "or (T_LOGICAL_OR)" expr
5495  326     | expr . "and (T_LOGICAL_AND)" expr
5496  327     | expr . "xor (T_LOGICAL_XOR)" expr
5497  328     | expr . '|' expr
5498  329     | expr . '&' expr
5499  330     | expr . '^' expr
5500  331     | expr . '.' expr
5501  332     | expr . '+' expr
5502  333     | expr . '-' expr
5503  334     | expr . '*' expr
5504  335     | expr . "** (T_POW)" expr
5505  336     | expr . '/' expr
5506  337     | expr . '%' expr
5507  338     | expr . "<< (T_SL)" expr
5508  339     | expr . ">> (T_SR)" expr
5509  344     | expr . "=== (T_IS_IDENTICAL)" expr
5510  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
5511  346     | expr . "== (T_IS_EQUAL)" expr
5512  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
5513  348     | expr . '<' expr
5514  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
5515  350     | expr . '>' expr
5516  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
5517  352     | expr . "<=> (T_SPACESHIP)" expr
5518  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
5519  356     | expr . '?' expr ':' expr
5520  357     | expr . '?' ':' expr
5521  358     | expr . "?? (T_COALESCE)" expr
5522  365     | "(bool) (T_BOOL_CAST)" expr .
5523
5524    "** (T_POW)"  shift, and go to state 265
5525
5526    $default  reduce using rule 365 (expr)
5527
5528
5529State 142
5530
5531  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
5532  324     | expr . "&& (T_BOOLEAN_AND)" expr
5533  325     | expr . "or (T_LOGICAL_OR)" expr
5534  326     | expr . "and (T_LOGICAL_AND)" expr
5535  327     | expr . "xor (T_LOGICAL_XOR)" expr
5536  328     | expr . '|' expr
5537  329     | expr . '&' expr
5538  330     | expr . '^' expr
5539  331     | expr . '.' expr
5540  332     | expr . '+' expr
5541  333     | expr . '-' expr
5542  334     | expr . '*' expr
5543  335     | expr . "** (T_POW)" expr
5544  336     | expr . '/' expr
5545  337     | expr . '%' expr
5546  338     | expr . "<< (T_SL)" expr
5547  339     | expr . ">> (T_SR)" expr
5548  344     | expr . "=== (T_IS_IDENTICAL)" expr
5549  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
5550  346     | expr . "== (T_IS_EQUAL)" expr
5551  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
5552  348     | expr . '<' expr
5553  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
5554  350     | expr . '>' expr
5555  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
5556  352     | expr . "<=> (T_SPACESHIP)" expr
5557  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
5558  356     | expr . '?' expr ':' expr
5559  357     | expr . '?' ':' expr
5560  358     | expr . "?? (T_COALESCE)" expr
5561  366     | "(unset) (T_UNSET_CAST)" expr .
5562
5563    "** (T_POW)"  shift, and go to state 265
5564
5565    $default  reduce using rule 366 (expr)
5566
5567
5568State 143
5569
5570  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
5571  324     | expr . "&& (T_BOOLEAN_AND)" expr
5572  325     | expr . "or (T_LOGICAL_OR)" expr
5573  326     | expr . "and (T_LOGICAL_AND)" expr
5574  327     | expr . "xor (T_LOGICAL_XOR)" expr
5575  328     | expr . '|' expr
5576  329     | expr . '&' expr
5577  330     | expr . '^' expr
5578  331     | expr . '.' expr
5579  332     | expr . '+' expr
5580  333     | expr . '-' expr
5581  334     | expr . '*' expr
5582  335     | expr . "** (T_POW)" expr
5583  336     | expr . '/' expr
5584  337     | expr . '%' expr
5585  338     | expr . "<< (T_SL)" expr
5586  339     | expr . ">> (T_SR)" expr
5587  344     | expr . "=== (T_IS_IDENTICAL)" expr
5588  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
5589  346     | expr . "== (T_IS_EQUAL)" expr
5590  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
5591  348     | expr . '<' expr
5592  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
5593  350     | expr . '>' expr
5594  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
5595  352     | expr . "<=> (T_SPACESHIP)" expr
5596  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
5597  356     | expr . '?' expr ':' expr
5598  357     | expr . '?' ':' expr
5599  358     | expr . "?? (T_COALESCE)" expr
5600  368     | '@' expr .
5601
5602    "** (T_POW)"  shift, and go to state 265
5603
5604    $default  reduce using rule 368 (expr)
5605
5606
5607State 144
5608
5609  469 array_pair: '&' . variable
5610
5611    '['                                           shift, and go to state 129
5612    "static (T_STATIC)"                           shift, and go to state 130
5613    "identifier (T_STRING)"                       shift, and go to state 114
5614    "variable (T_VARIABLE)"                       shift, and go to state 35
5615    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
5616    "array (T_ARRAY)"                             shift, and go to state 65
5617    "namespace (T_NAMESPACE)"                     shift, and go to state 115
5618    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
5619    '('                                           shift, and go to state 131
5620    '$'                                           shift, and go to state 82
5621
5622    namespace_name         go to state 83
5623    name                   go to state 84
5624    function_call          go to state 100
5625    class_name             go to state 101
5626    dereferencable_scalar  go to state 132
5627    constant               go to state 133
5628    variable_class_name    go to state 105
5629    dereferencable         go to state 106
5630    callable_expr          go to state 107
5631    callable_variable      go to state 108
5632    variable               go to state 296
5633    simple_variable        go to state 110
5634    static_member          go to state 111
5635
5636
5637State 145
5638
5639  302 expr: "list (T_LIST)" . '(' array_pair_list ')' '=' expr
5640  471 array_pair: "list (T_LIST)" . '(' array_pair_list ')'
5641
5642    '('  shift, and go to state 297
5643
5644
5645State 146
5646
5647  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
5648  324     | expr . "&& (T_BOOLEAN_AND)" expr
5649  325     | expr . "or (T_LOGICAL_OR)" expr
5650  326     | expr . "and (T_LOGICAL_AND)" expr
5651  327     | expr . "xor (T_LOGICAL_XOR)" expr
5652  328     | expr . '|' expr
5653  329     | expr . '&' expr
5654  330     | expr . '^' expr
5655  331     | expr . '.' expr
5656  332     | expr . '+' expr
5657  333     | expr . '-' expr
5658  334     | expr . '*' expr
5659  335     | expr . "** (T_POW)" expr
5660  336     | expr . '/' expr
5661  337     | expr . '%' expr
5662  338     | expr . "<< (T_SL)" expr
5663  339     | expr . ">> (T_SR)" expr
5664  344     | expr . "=== (T_IS_IDENTICAL)" expr
5665  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
5666  346     | expr . "== (T_IS_EQUAL)" expr
5667  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
5668  348     | expr . '<' expr
5669  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
5670  350     | expr . '>' expr
5671  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
5672  352     | expr . "<=> (T_SPACESHIP)" expr
5673  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
5674  356     | expr . '?' expr ':' expr
5675  357     | expr . '?' ':' expr
5676  358     | expr . "?? (T_COALESCE)" expr
5677  466 array_pair: expr . "=> (T_DOUBLE_ARROW)" expr
5678  467           | expr .
5679  468           | expr . "=> (T_DOUBLE_ARROW)" '&' variable
5680  470           | expr . "=> (T_DOUBLE_ARROW)" "list (T_LIST)" '(' array_pair_list ')'
5681
5682    "or (T_LOGICAL_OR)"           shift, and go to state 237
5683    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
5684    "and (T_LOGICAL_AND)"         shift, and go to state 239
5685    "=> (T_DOUBLE_ARROW)"         shift, and go to state 298
5686    '?'                           shift, and go to state 240
5687    "?? (T_COALESCE)"             shift, and go to state 241
5688    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
5689    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
5690    '|'                           shift, and go to state 244
5691    '^'                           shift, and go to state 245
5692    '&'                           shift, and go to state 246
5693    "== (T_IS_EQUAL)"             shift, and go to state 247
5694    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
5695    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
5696    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
5697    "<=> (T_SPACESHIP)"           shift, and go to state 251
5698    '<'                           shift, and go to state 252
5699    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
5700    '>'                           shift, and go to state 254
5701    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
5702    "<< (T_SL)"                   shift, and go to state 256
5703    ">> (T_SR)"                   shift, and go to state 257
5704    '+'                           shift, and go to state 258
5705    '-'                           shift, and go to state 259
5706    '.'                           shift, and go to state 260
5707    '*'                           shift, and go to state 261
5708    '/'                           shift, and go to state 262
5709    '%'                           shift, and go to state 263
5710    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
5711    "** (T_POW)"                  shift, and go to state 265
5712
5713    $default  reduce using rule 467 (array_pair)
5714
5715
5716State 147
5717
5718  303 expr: '[' array_pair_list . ']' '=' expr
5719  405 dereferencable_scalar: '[' array_pair_list . ']'
5720
5721    ']'  shift, and go to state 299
5722
5723
5724State 148
5725
5726  465 non_empty_array_pair_list: possible_array_pair .
5727
5728    $default  reduce using rule 465 (non_empty_array_pair_list)
5729
5730
5731State 149
5732
5733  461 array_pair_list: non_empty_array_pair_list .
5734  464 non_empty_array_pair_list: non_empty_array_pair_list . ',' possible_array_pair
5735
5736    ','  shift, and go to state 300
5737
5738    $default  reduce using rule 461 (array_pair_list)
5739
5740
5741State 150
5742
5743  463 possible_array_pair: array_pair .
5744
5745    $default  reduce using rule 463 (possible_array_pair)
5746
5747
5748State 151
5749
5750  298 anonymous_class: "class (T_CLASS)" . @8 ctor_arguments extends_from implements_list backup_doc_comment '{' class_statement_list '}'
5751
5752    $default  reduce using rule 297 (@8)
5753
5754    @8  go to state 301
5755
5756
5757State 152
5758
5759  394 class_name: name .
5760
5761    $default  reduce using rule 394 (class_name)
5762
5763
5764State 153
5765
5766  300 new_expr: "new (T_NEW)" anonymous_class .
5767
5768    $default  reduce using rule 300 (new_expr)
5769
5770
5771State 154
5772
5773  395 class_name_reference: class_name .
5774  453 new_variable: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable
5775
5776    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  shift, and go to state 302
5777
5778    $default  reduce using rule 395 (class_name_reference)
5779
5780
5781State 155
5782
5783  299 new_expr: "new (T_NEW)" class_name_reference . ctor_arguments
5784
5785    '('  shift, and go to state 228
5786
5787    $default  reduce using rule 402 (ctor_arguments)
5788
5789    argument_list   go to state 303
5790    ctor_arguments  go to state 304
5791
5792
5793State 156
5794
5795  449 new_variable: simple_variable .
5796
5797    $default  reduce using rule 449 (new_variable)
5798
5799
5800State 157
5801
5802  396 class_name_reference: new_variable .
5803  450 new_variable: new_variable . '[' optional_expr ']'
5804  451             | new_variable . '{' expr '}'
5805  452             | new_variable . "-> (T_OBJECT_OPERATOR)" property_name
5806  454             | new_variable . ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable
5807
5808    '['                            shift, and go to state 305
5809    "-> (T_OBJECT_OPERATOR)"       shift, and go to state 306
5810    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  shift, and go to state 307
5811    '{'                            shift, and go to state 308
5812
5813    $default  reduce using rule 396 (class_name_reference)
5814
5815
5816State 158
5817
5818  306 expr: "clone (T_CLONE)" expr .
5819  323     | expr . "|| (T_BOOLEAN_OR)" expr
5820  324     | expr . "&& (T_BOOLEAN_AND)" expr
5821  325     | expr . "or (T_LOGICAL_OR)" expr
5822  326     | expr . "and (T_LOGICAL_AND)" expr
5823  327     | expr . "xor (T_LOGICAL_XOR)" expr
5824  328     | expr . '|' expr
5825  329     | expr . '&' expr
5826  330     | expr . '^' expr
5827  331     | expr . '.' expr
5828  332     | expr . '+' expr
5829  333     | expr . '-' expr
5830  334     | expr . '*' expr
5831  335     | expr . "** (T_POW)" expr
5832  336     | expr . '/' expr
5833  337     | expr . '%' expr
5834  338     | expr . "<< (T_SL)" expr
5835  339     | expr . ">> (T_SR)" expr
5836  344     | expr . "=== (T_IS_IDENTICAL)" expr
5837  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
5838  346     | expr . "== (T_IS_EQUAL)" expr
5839  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
5840  348     | expr . '<' expr
5841  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
5842  350     | expr . '>' expr
5843  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
5844  352     | expr . "<=> (T_SPACESHIP)" expr
5845  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
5846  356     | expr . '?' expr ':' expr
5847  357     | expr . '?' ':' expr
5848  358     | expr . "?? (T_COALESCE)" expr
5849
5850    $default  reduce using rule 306 (expr)
5851
5852
5853State 159
5854
5855  243 static_var: "variable (T_VARIABLE)" .
5856  244           | "variable (T_VARIABLE)" . '=' expr
5857
5858    '='  shift, and go to state 309
5859
5860    $default  reduce using rule 243 (static_var)
5861
5862
5863State 160
5864
5865  142 statement: "static (T_STATIC)" static_var_list . ';'
5866  241 static_var_list: static_var_list . ',' static_var
5867
5868    ','  shift, and go to state 310
5869    ';'  shift, and go to state 311
5870
5871
5872State 161
5873
5874  242 static_var_list: static_var .
5875
5876    $default  reduce using rule 242 (static_var_list)
5877
5878
5879State 162
5880
5881  377 expr: "static (T_STATIC)" function . returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
5882
5883    '&'  shift, and go to state 267
5884
5885    $default  reduce using rule 381 (returns_ref)
5886
5887    returns_ref  go to state 312
5888
5889
5890State 163
5891
5892  155 statement: "identifier (T_STRING)" ':' .
5893
5894    $default  reduce using rule 155 (statement)
5895
5896
5897State 164
5898
5899  398 exit_expr: '(' . optional_expr ')'
5900
5901    "include (T_INCLUDE)"                         shift, and go to state 4
5902    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
5903    "eval (T_EVAL)"                               shift, and go to state 6
5904    "require (T_REQUIRE)"                         shift, and go to state 7
5905    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
5906    "print (T_PRINT)"                             shift, and go to state 9
5907    "yield (T_YIELD)"                             shift, and go to state 10
5908    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
5909    '+'                                           shift, and go to state 12
5910    '-'                                           shift, and go to state 13
5911    '!'                                           shift, and go to state 14
5912    '~'                                           shift, and go to state 15
5913    "++ (T_INC)"                                  shift, and go to state 16
5914    "-- (T_DEC)"                                  shift, and go to state 17
5915    "(int) (T_INT_CAST)"                          shift, and go to state 18
5916    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
5917    "(string) (T_STRING_CAST)"                    shift, and go to state 20
5918    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
5919    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
5920    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
5921    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
5922    '@'                                           shift, and go to state 25
5923    '['                                           shift, and go to state 26
5924    "new (T_NEW)"                                 shift, and go to state 27
5925    "clone (T_CLONE)"                             shift, and go to state 28
5926    "static (T_STATIC)"                           shift, and go to state 113
5927    "integer number (T_LNUMBER)"                  shift, and go to state 32
5928    "floating-point number (T_DNUMBER)"           shift, and go to state 33
5929    "identifier (T_STRING)"                       shift, and go to state 114
5930    "variable (T_VARIABLE)"                       shift, and go to state 35
5931    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
5932    "exit (T_EXIT)"                               shift, and go to state 38
5933    "function (T_FUNCTION)"                       shift, and go to state 50
5934    "isset (T_ISSET)"                             shift, and go to state 58
5935    "empty (T_EMPTY)"                             shift, and go to state 59
5936    "list (T_LIST)"                               shift, and go to state 64
5937    "array (T_ARRAY)"                             shift, and go to state 65
5938    "__LINE__ (T_LINE)"                           shift, and go to state 66
5939    "__FILE__ (T_FILE)"                           shift, and go to state 67
5940    "__DIR__ (T_DIR)"                             shift, and go to state 68
5941    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
5942    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
5943    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
5944    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
5945    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
5946    "namespace (T_NAMESPACE)"                     shift, and go to state 115
5947    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
5948    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
5949    '('                                           shift, and go to state 77
5950    '`'                                           shift, and go to state 80
5951    '"'                                           shift, and go to state 81
5952    '$'                                           shift, and go to state 82
5953
5954    $default  reduce using rule 426 (optional_expr)
5955
5956    namespace_name              go to state 83
5957    name                        go to state 84
5958    new_expr                    go to state 97
5959    expr                        go to state 176
5960    function                    go to state 117
5961    function_call               go to state 100
5962    class_name                  go to state 101
5963    dereferencable_scalar       go to state 102
5964    scalar                      go to state 103
5965    constant                    go to state 104
5966    optional_expr               go to state 313
5967    variable_class_name         go to state 105
5968    dereferencable              go to state 106
5969    callable_expr               go to state 107
5970    callable_variable           go to state 108
5971    variable                    go to state 109
5972    simple_variable             go to state 110
5973    static_member               go to state 111
5974    internal_functions_in_yacc  go to state 112
5975
5976
5977State 165
5978
5979  367 expr: "exit (T_EXIT)" exit_expr .
5980
5981    $default  reduce using rule 367 (expr)
5982
5983
5984State 166
5985
5986  209 if_stmt_without_else: "if (T_IF)" '(' . expr ')' statement
5987  213 alt_if_stmt_without_else: "if (T_IF)" '(' . expr ')' ':' inner_statement_list
5988
5989    "include (T_INCLUDE)"                         shift, and go to state 4
5990    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
5991    "eval (T_EVAL)"                               shift, and go to state 6
5992    "require (T_REQUIRE)"                         shift, and go to state 7
5993    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
5994    "print (T_PRINT)"                             shift, and go to state 9
5995    "yield (T_YIELD)"                             shift, and go to state 10
5996    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
5997    '+'                                           shift, and go to state 12
5998    '-'                                           shift, and go to state 13
5999    '!'                                           shift, and go to state 14
6000    '~'                                           shift, and go to state 15
6001    "++ (T_INC)"                                  shift, and go to state 16
6002    "-- (T_DEC)"                                  shift, and go to state 17
6003    "(int) (T_INT_CAST)"                          shift, and go to state 18
6004    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
6005    "(string) (T_STRING_CAST)"                    shift, and go to state 20
6006    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
6007    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
6008    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
6009    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
6010    '@'                                           shift, and go to state 25
6011    '['                                           shift, and go to state 26
6012    "new (T_NEW)"                                 shift, and go to state 27
6013    "clone (T_CLONE)"                             shift, and go to state 28
6014    "static (T_STATIC)"                           shift, and go to state 113
6015    "integer number (T_LNUMBER)"                  shift, and go to state 32
6016    "floating-point number (T_DNUMBER)"           shift, and go to state 33
6017    "identifier (T_STRING)"                       shift, and go to state 114
6018    "variable (T_VARIABLE)"                       shift, and go to state 35
6019    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
6020    "exit (T_EXIT)"                               shift, and go to state 38
6021    "function (T_FUNCTION)"                       shift, and go to state 50
6022    "isset (T_ISSET)"                             shift, and go to state 58
6023    "empty (T_EMPTY)"                             shift, and go to state 59
6024    "list (T_LIST)"                               shift, and go to state 64
6025    "array (T_ARRAY)"                             shift, and go to state 65
6026    "__LINE__ (T_LINE)"                           shift, and go to state 66
6027    "__FILE__ (T_FILE)"                           shift, and go to state 67
6028    "__DIR__ (T_DIR)"                             shift, and go to state 68
6029    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
6030    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
6031    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
6032    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
6033    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
6034    "namespace (T_NAMESPACE)"                     shift, and go to state 115
6035    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
6036    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
6037    '('                                           shift, and go to state 77
6038    '`'                                           shift, and go to state 80
6039    '"'                                           shift, and go to state 81
6040    '$'                                           shift, and go to state 82
6041
6042    namespace_name              go to state 83
6043    name                        go to state 84
6044    new_expr                    go to state 97
6045    expr                        go to state 314
6046    function                    go to state 117
6047    function_call               go to state 100
6048    class_name                  go to state 101
6049    dereferencable_scalar       go to state 102
6050    scalar                      go to state 103
6051    constant                    go to state 104
6052    variable_class_name         go to state 105
6053    dereferencable              go to state 106
6054    callable_expr               go to state 107
6055    callable_variable           go to state 108
6056    variable                    go to state 109
6057    simple_variable             go to state 110
6058    static_member               go to state 111
6059    internal_functions_in_yacc  go to state 112
6060
6061
6062State 167
6063
6064  143 statement: "echo (T_ECHO)" echo_expr_list . ';'
6065  290 echo_expr_list: echo_expr_list . ',' echo_expr
6066
6067    ','  shift, and go to state 315
6068    ';'  shift, and go to state 316
6069
6070
6071State 168
6072
6073  291 echo_expr_list: echo_expr .
6074
6075    $default  reduce using rule 291 (echo_expr_list)
6076
6077
6078State 169
6079
6080  292 echo_expr: expr .
6081  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
6082  324     | expr . "&& (T_BOOLEAN_AND)" expr
6083  325     | expr . "or (T_LOGICAL_OR)" expr
6084  326     | expr . "and (T_LOGICAL_AND)" expr
6085  327     | expr . "xor (T_LOGICAL_XOR)" expr
6086  328     | expr . '|' expr
6087  329     | expr . '&' expr
6088  330     | expr . '^' expr
6089  331     | expr . '.' expr
6090  332     | expr . '+' expr
6091  333     | expr . '-' expr
6092  334     | expr . '*' expr
6093  335     | expr . "** (T_POW)" expr
6094  336     | expr . '/' expr
6095  337     | expr . '%' expr
6096  338     | expr . "<< (T_SL)" expr
6097  339     | expr . ">> (T_SR)" expr
6098  344     | expr . "=== (T_IS_IDENTICAL)" expr
6099  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
6100  346     | expr . "== (T_IS_EQUAL)" expr
6101  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
6102  348     | expr . '<' expr
6103  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
6104  350     | expr . '>' expr
6105  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
6106  352     | expr . "<=> (T_SPACESHIP)" expr
6107  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
6108  356     | expr . '?' expr ':' expr
6109  357     | expr . '?' ':' expr
6110  358     | expr . "?? (T_COALESCE)" expr
6111
6112    "or (T_LOGICAL_OR)"           shift, and go to state 237
6113    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
6114    "and (T_LOGICAL_AND)"         shift, and go to state 239
6115    '?'                           shift, and go to state 240
6116    "?? (T_COALESCE)"             shift, and go to state 241
6117    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
6118    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
6119    '|'                           shift, and go to state 244
6120    '^'                           shift, and go to state 245
6121    '&'                           shift, and go to state 246
6122    "== (T_IS_EQUAL)"             shift, and go to state 247
6123    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
6124    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
6125    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
6126    "<=> (T_SPACESHIP)"           shift, and go to state 251
6127    '<'                           shift, and go to state 252
6128    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
6129    '>'                           shift, and go to state 254
6130    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
6131    "<< (T_SL)"                   shift, and go to state 256
6132    ">> (T_SR)"                   shift, and go to state 257
6133    '+'                           shift, and go to state 258
6134    '-'                           shift, and go to state 259
6135    '.'                           shift, and go to state 260
6136    '*'                           shift, and go to state 261
6137    '/'                           shift, and go to state 262
6138    '%'                           shift, and go to state 263
6139    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
6140    "** (T_POW)"                  shift, and go to state 265
6141
6142    $default  reduce using rule 292 (echo_expr)
6143
6144
6145State 170
6146
6147  135 statement: "do (T_DO)" statement . "while (T_WHILE)" '(' expr ')' ';'
6148
6149    "while (T_WHILE)"  shift, and go to state 317
6150
6151
6152State 171
6153
6154  134 statement: "while (T_WHILE)" '(' . expr ')' while_statement
6155
6156    "include (T_INCLUDE)"                         shift, and go to state 4
6157    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
6158    "eval (T_EVAL)"                               shift, and go to state 6
6159    "require (T_REQUIRE)"                         shift, and go to state 7
6160    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
6161    "print (T_PRINT)"                             shift, and go to state 9
6162    "yield (T_YIELD)"                             shift, and go to state 10
6163    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
6164    '+'                                           shift, and go to state 12
6165    '-'                                           shift, and go to state 13
6166    '!'                                           shift, and go to state 14
6167    '~'                                           shift, and go to state 15
6168    "++ (T_INC)"                                  shift, and go to state 16
6169    "-- (T_DEC)"                                  shift, and go to state 17
6170    "(int) (T_INT_CAST)"                          shift, and go to state 18
6171    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
6172    "(string) (T_STRING_CAST)"                    shift, and go to state 20
6173    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
6174    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
6175    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
6176    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
6177    '@'                                           shift, and go to state 25
6178    '['                                           shift, and go to state 26
6179    "new (T_NEW)"                                 shift, and go to state 27
6180    "clone (T_CLONE)"                             shift, and go to state 28
6181    "static (T_STATIC)"                           shift, and go to state 113
6182    "integer number (T_LNUMBER)"                  shift, and go to state 32
6183    "floating-point number (T_DNUMBER)"           shift, and go to state 33
6184    "identifier (T_STRING)"                       shift, and go to state 114
6185    "variable (T_VARIABLE)"                       shift, and go to state 35
6186    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
6187    "exit (T_EXIT)"                               shift, and go to state 38
6188    "function (T_FUNCTION)"                       shift, and go to state 50
6189    "isset (T_ISSET)"                             shift, and go to state 58
6190    "empty (T_EMPTY)"                             shift, and go to state 59
6191    "list (T_LIST)"                               shift, and go to state 64
6192    "array (T_ARRAY)"                             shift, and go to state 65
6193    "__LINE__ (T_LINE)"                           shift, and go to state 66
6194    "__FILE__ (T_FILE)"                           shift, and go to state 67
6195    "__DIR__ (T_DIR)"                             shift, and go to state 68
6196    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
6197    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
6198    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
6199    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
6200    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
6201    "namespace (T_NAMESPACE)"                     shift, and go to state 115
6202    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
6203    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
6204    '('                                           shift, and go to state 77
6205    '`'                                           shift, and go to state 80
6206    '"'                                           shift, and go to state 81
6207    '$'                                           shift, and go to state 82
6208
6209    namespace_name              go to state 83
6210    name                        go to state 84
6211    new_expr                    go to state 97
6212    expr                        go to state 318
6213    function                    go to state 117
6214    function_call               go to state 100
6215    class_name                  go to state 101
6216    dereferencable_scalar       go to state 102
6217    scalar                      go to state 103
6218    constant                    go to state 104
6219    variable_class_name         go to state 105
6220    dereferencable              go to state 106
6221    callable_expr               go to state 107
6222    callable_variable           go to state 108
6223    variable                    go to state 109
6224    simple_variable             go to state 110
6225    static_member               go to state 111
6226    internal_functions_in_yacc  go to state 112
6227
6228
6229State 172
6230
6231  136 statement: "for (T_FOR)" '(' . for_exprs ';' for_exprs ';' for_exprs ')' for_statement
6232
6233    "include (T_INCLUDE)"                         shift, and go to state 4
6234    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
6235    "eval (T_EVAL)"                               shift, and go to state 6
6236    "require (T_REQUIRE)"                         shift, and go to state 7
6237    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
6238    "print (T_PRINT)"                             shift, and go to state 9
6239    "yield (T_YIELD)"                             shift, and go to state 10
6240    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
6241    '+'                                           shift, and go to state 12
6242    '-'                                           shift, and go to state 13
6243    '!'                                           shift, and go to state 14
6244    '~'                                           shift, and go to state 15
6245    "++ (T_INC)"                                  shift, and go to state 16
6246    "-- (T_DEC)"                                  shift, and go to state 17
6247    "(int) (T_INT_CAST)"                          shift, and go to state 18
6248    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
6249    "(string) (T_STRING_CAST)"                    shift, and go to state 20
6250    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
6251    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
6252    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
6253    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
6254    '@'                                           shift, and go to state 25
6255    '['                                           shift, and go to state 26
6256    "new (T_NEW)"                                 shift, and go to state 27
6257    "clone (T_CLONE)"                             shift, and go to state 28
6258    "static (T_STATIC)"                           shift, and go to state 113
6259    "integer number (T_LNUMBER)"                  shift, and go to state 32
6260    "floating-point number (T_DNUMBER)"           shift, and go to state 33
6261    "identifier (T_STRING)"                       shift, and go to state 114
6262    "variable (T_VARIABLE)"                       shift, and go to state 35
6263    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
6264    "exit (T_EXIT)"                               shift, and go to state 38
6265    "function (T_FUNCTION)"                       shift, and go to state 50
6266    "isset (T_ISSET)"                             shift, and go to state 58
6267    "empty (T_EMPTY)"                             shift, and go to state 59
6268    "list (T_LIST)"                               shift, and go to state 64
6269    "array (T_ARRAY)"                             shift, and go to state 65
6270    "__LINE__ (T_LINE)"                           shift, and go to state 66
6271    "__FILE__ (T_FILE)"                           shift, and go to state 67
6272    "__DIR__ (T_DIR)"                             shift, and go to state 68
6273    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
6274    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
6275    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
6276    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
6277    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
6278    "namespace (T_NAMESPACE)"                     shift, and go to state 115
6279    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
6280    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
6281    '('                                           shift, and go to state 77
6282    '`'                                           shift, and go to state 80
6283    '"'                                           shift, and go to state 81
6284    '$'                                           shift, and go to state 82
6285
6286    $default  reduce using rule 293 (for_exprs)
6287
6288    namespace_name              go to state 83
6289    name                        go to state 84
6290    for_exprs                   go to state 319
6291    non_empty_for_exprs         go to state 320
6292    new_expr                    go to state 97
6293    expr                        go to state 321
6294    function                    go to state 117
6295    function_call               go to state 100
6296    class_name                  go to state 101
6297    dereferencable_scalar       go to state 102
6298    scalar                      go to state 103
6299    constant                    go to state 104
6300    variable_class_name         go to state 105
6301    dereferencable              go to state 106
6302    callable_expr               go to state 107
6303    callable_variable           go to state 108
6304    variable                    go to state 109
6305    simple_variable             go to state 110
6306    static_member               go to state 111
6307    internal_functions_in_yacc  go to state 112
6308
6309
6310State 173
6311
6312  147 statement: "foreach (T_FOREACH)" '(' . expr "as (T_AS)" foreach_variable ')' foreach_statement
6313  148          | "foreach (T_FOREACH)" '(' . expr "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable ')' foreach_statement
6314
6315    "include (T_INCLUDE)"                         shift, and go to state 4
6316    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
6317    "eval (T_EVAL)"                               shift, and go to state 6
6318    "require (T_REQUIRE)"                         shift, and go to state 7
6319    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
6320    "print (T_PRINT)"                             shift, and go to state 9
6321    "yield (T_YIELD)"                             shift, and go to state 10
6322    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
6323    '+'                                           shift, and go to state 12
6324    '-'                                           shift, and go to state 13
6325    '!'                                           shift, and go to state 14
6326    '~'                                           shift, and go to state 15
6327    "++ (T_INC)"                                  shift, and go to state 16
6328    "-- (T_DEC)"                                  shift, and go to state 17
6329    "(int) (T_INT_CAST)"                          shift, and go to state 18
6330    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
6331    "(string) (T_STRING_CAST)"                    shift, and go to state 20
6332    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
6333    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
6334    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
6335    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
6336    '@'                                           shift, and go to state 25
6337    '['                                           shift, and go to state 26
6338    "new (T_NEW)"                                 shift, and go to state 27
6339    "clone (T_CLONE)"                             shift, and go to state 28
6340    "static (T_STATIC)"                           shift, and go to state 113
6341    "integer number (T_LNUMBER)"                  shift, and go to state 32
6342    "floating-point number (T_DNUMBER)"           shift, and go to state 33
6343    "identifier (T_STRING)"                       shift, and go to state 114
6344    "variable (T_VARIABLE)"                       shift, and go to state 35
6345    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
6346    "exit (T_EXIT)"                               shift, and go to state 38
6347    "function (T_FUNCTION)"                       shift, and go to state 50
6348    "isset (T_ISSET)"                             shift, and go to state 58
6349    "empty (T_EMPTY)"                             shift, and go to state 59
6350    "list (T_LIST)"                               shift, and go to state 64
6351    "array (T_ARRAY)"                             shift, and go to state 65
6352    "__LINE__ (T_LINE)"                           shift, and go to state 66
6353    "__FILE__ (T_FILE)"                           shift, and go to state 67
6354    "__DIR__ (T_DIR)"                             shift, and go to state 68
6355    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
6356    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
6357    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
6358    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
6359    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
6360    "namespace (T_NAMESPACE)"                     shift, and go to state 115
6361    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
6362    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
6363    '('                                           shift, and go to state 77
6364    '`'                                           shift, and go to state 80
6365    '"'                                           shift, and go to state 81
6366    '$'                                           shift, and go to state 82
6367
6368    namespace_name              go to state 83
6369    name                        go to state 84
6370    new_expr                    go to state 97
6371    expr                        go to state 322
6372    function                    go to state 117
6373    function_call               go to state 100
6374    class_name                  go to state 101
6375    dereferencable_scalar       go to state 102
6376    scalar                      go to state 103
6377    constant                    go to state 104
6378    variable_class_name         go to state 105
6379    dereferencable              go to state 106
6380    callable_expr               go to state 107
6381    callable_variable           go to state 108
6382    variable                    go to state 109
6383    simple_variable             go to state 110
6384    static_member               go to state 111
6385    internal_functions_in_yacc  go to state 112
6386
6387
6388State 174
6389
6390  150 statement: "declare (T_DECLARE)" '(' . const_list ')' $@3 declare_statement
6391
6392    "identifier (T_STRING)"  shift, and go to state 180
6393
6394    const_list  go to state 323
6395    const_decl  go to state 182
6396
6397
6398State 175
6399
6400  137 statement: "switch (T_SWITCH)" '(' . expr ')' switch_case_list
6401
6402    "include (T_INCLUDE)"                         shift, and go to state 4
6403    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
6404    "eval (T_EVAL)"                               shift, and go to state 6
6405    "require (T_REQUIRE)"                         shift, and go to state 7
6406    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
6407    "print (T_PRINT)"                             shift, and go to state 9
6408    "yield (T_YIELD)"                             shift, and go to state 10
6409    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
6410    '+'                                           shift, and go to state 12
6411    '-'                                           shift, and go to state 13
6412    '!'                                           shift, and go to state 14
6413    '~'                                           shift, and go to state 15
6414    "++ (T_INC)"                                  shift, and go to state 16
6415    "-- (T_DEC)"                                  shift, and go to state 17
6416    "(int) (T_INT_CAST)"                          shift, and go to state 18
6417    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
6418    "(string) (T_STRING_CAST)"                    shift, and go to state 20
6419    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
6420    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
6421    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
6422    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
6423    '@'                                           shift, and go to state 25
6424    '['                                           shift, and go to state 26
6425    "new (T_NEW)"                                 shift, and go to state 27
6426    "clone (T_CLONE)"                             shift, and go to state 28
6427    "static (T_STATIC)"                           shift, and go to state 113
6428    "integer number (T_LNUMBER)"                  shift, and go to state 32
6429    "floating-point number (T_DNUMBER)"           shift, and go to state 33
6430    "identifier (T_STRING)"                       shift, and go to state 114
6431    "variable (T_VARIABLE)"                       shift, and go to state 35
6432    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
6433    "exit (T_EXIT)"                               shift, and go to state 38
6434    "function (T_FUNCTION)"                       shift, and go to state 50
6435    "isset (T_ISSET)"                             shift, and go to state 58
6436    "empty (T_EMPTY)"                             shift, and go to state 59
6437    "list (T_LIST)"                               shift, and go to state 64
6438    "array (T_ARRAY)"                             shift, and go to state 65
6439    "__LINE__ (T_LINE)"                           shift, and go to state 66
6440    "__FILE__ (T_FILE)"                           shift, and go to state 67
6441    "__DIR__ (T_DIR)"                             shift, and go to state 68
6442    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
6443    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
6444    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
6445    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
6446    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
6447    "namespace (T_NAMESPACE)"                     shift, and go to state 115
6448    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
6449    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
6450    '('                                           shift, and go to state 77
6451    '`'                                           shift, and go to state 80
6452    '"'                                           shift, and go to state 81
6453    '$'                                           shift, and go to state 82
6454
6455    namespace_name              go to state 83
6456    name                        go to state 84
6457    new_expr                    go to state 97
6458    expr                        go to state 324
6459    function                    go to state 117
6460    function_call               go to state 100
6461    class_name                  go to state 101
6462    dereferencable_scalar       go to state 102
6463    scalar                      go to state 103
6464    constant                    go to state 104
6465    variable_class_name         go to state 105
6466    dereferencable              go to state 106
6467    callable_expr               go to state 107
6468    callable_variable           go to state 108
6469    variable                    go to state 109
6470    simple_variable             go to state 110
6471    static_member               go to state 111
6472    internal_functions_in_yacc  go to state 112
6473
6474
6475State 176
6476
6477  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
6478  324     | expr . "&& (T_BOOLEAN_AND)" expr
6479  325     | expr . "or (T_LOGICAL_OR)" expr
6480  326     | expr . "and (T_LOGICAL_AND)" expr
6481  327     | expr . "xor (T_LOGICAL_XOR)" expr
6482  328     | expr . '|' expr
6483  329     | expr . '&' expr
6484  330     | expr . '^' expr
6485  331     | expr . '.' expr
6486  332     | expr . '+' expr
6487  333     | expr . '-' expr
6488  334     | expr . '*' expr
6489  335     | expr . "** (T_POW)" expr
6490  336     | expr . '/' expr
6491  337     | expr . '%' expr
6492  338     | expr . "<< (T_SL)" expr
6493  339     | expr . ">> (T_SR)" expr
6494  344     | expr . "=== (T_IS_IDENTICAL)" expr
6495  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
6496  346     | expr . "== (T_IS_EQUAL)" expr
6497  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
6498  348     | expr . '<' expr
6499  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
6500  350     | expr . '>' expr
6501  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
6502  352     | expr . "<=> (T_SPACESHIP)" expr
6503  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
6504  356     | expr . '?' expr ':' expr
6505  357     | expr . '?' ':' expr
6506  358     | expr . "?? (T_COALESCE)" expr
6507  427 optional_expr: expr .
6508
6509    "or (T_LOGICAL_OR)"           shift, and go to state 237
6510    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
6511    "and (T_LOGICAL_AND)"         shift, and go to state 239
6512    '?'                           shift, and go to state 240
6513    "?? (T_COALESCE)"             shift, and go to state 241
6514    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
6515    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
6516    '|'                           shift, and go to state 244
6517    '^'                           shift, and go to state 245
6518    '&'                           shift, and go to state 246
6519    "== (T_IS_EQUAL)"             shift, and go to state 247
6520    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
6521    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
6522    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
6523    "<=> (T_SPACESHIP)"           shift, and go to state 251
6524    '<'                           shift, and go to state 252
6525    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
6526    '>'                           shift, and go to state 254
6527    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
6528    "<< (T_SL)"                   shift, and go to state 256
6529    ">> (T_SR)"                   shift, and go to state 257
6530    '+'                           shift, and go to state 258
6531    '-'                           shift, and go to state 259
6532    '.'                           shift, and go to state 260
6533    '*'                           shift, and go to state 261
6534    '/'                           shift, and go to state 262
6535    '%'                           shift, and go to state 263
6536    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
6537    "** (T_POW)"                  shift, and go to state 265
6538
6539    $default  reduce using rule 427 (optional_expr)
6540
6541
6542State 177
6543
6544  138 statement: "break (T_BREAK)" optional_expr . ';'
6545
6546    ';'  shift, and go to state 325
6547
6548
6549State 178
6550
6551  139 statement: "continue (T_CONTINUE)" optional_expr . ';'
6552
6553    ';'  shift, and go to state 326
6554
6555
6556State 179
6557
6558  154 statement: "goto (T_GOTO)" "identifier (T_STRING)" . ';'
6559
6560    ';'  shift, and go to state 327
6561
6562
6563State 180
6564
6565  289 const_decl: "identifier (T_STRING)" . '=' expr backup_doc_comment
6566
6567    '='  shift, and go to state 328
6568
6569
6570State 181
6571
6572  100 top_statement: "const (T_CONST)" const_list . ';'
6573  121 const_list: const_list . ',' const_decl
6574
6575    ','  shift, and go to state 329
6576    ';'  shift, and go to state 330
6577
6578
6579State 182
6580
6581  122 const_list: const_decl .
6582
6583    $default  reduce using rule 122 (const_list)
6584
6585
6586State 183
6587
6588  140 statement: "return (T_RETURN)" optional_expr . ';'
6589
6590    ';'  shift, and go to state 331
6591
6592
6593State 184
6594
6595  152 statement: "try (T_TRY)" '{' . inner_statement_list '}' catch_list finally_statement
6596
6597    $default  reduce using rule 124 (inner_statement_list)
6598
6599    inner_statement_list  go to state 332
6600
6601
6602State 185
6603
6604  153 statement: "throw (T_THROW)" expr . ';'
6605  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
6606  324     | expr . "&& (T_BOOLEAN_AND)" expr
6607  325     | expr . "or (T_LOGICAL_OR)" expr
6608  326     | expr . "and (T_LOGICAL_AND)" expr
6609  327     | expr . "xor (T_LOGICAL_XOR)" expr
6610  328     | expr . '|' expr
6611  329     | expr . '&' expr
6612  330     | expr . '^' expr
6613  331     | expr . '.' expr
6614  332     | expr . '+' expr
6615  333     | expr . '-' expr
6616  334     | expr . '*' expr
6617  335     | expr . "** (T_POW)" expr
6618  336     | expr . '/' expr
6619  337     | expr . '%' expr
6620  338     | expr . "<< (T_SL)" expr
6621  339     | expr . ">> (T_SR)" expr
6622  344     | expr . "=== (T_IS_IDENTICAL)" expr
6623  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
6624  346     | expr . "== (T_IS_EQUAL)" expr
6625  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
6626  348     | expr . '<' expr
6627  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
6628  350     | expr . '>' expr
6629  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
6630  352     | expr . "<=> (T_SPACESHIP)" expr
6631  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
6632  356     | expr . '?' expr ':' expr
6633  357     | expr . '?' ':' expr
6634  358     | expr . "?? (T_COALESCE)" expr
6635
6636    "or (T_LOGICAL_OR)"           shift, and go to state 237
6637    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
6638    "and (T_LOGICAL_AND)"         shift, and go to state 239
6639    '?'                           shift, and go to state 240
6640    "?? (T_COALESCE)"             shift, and go to state 241
6641    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
6642    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
6643    '|'                           shift, and go to state 244
6644    '^'                           shift, and go to state 245
6645    '&'                           shift, and go to state 246
6646    "== (T_IS_EQUAL)"             shift, and go to state 247
6647    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
6648    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
6649    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
6650    "<=> (T_SPACESHIP)"           shift, and go to state 251
6651    '<'                           shift, and go to state 252
6652    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
6653    '>'                           shift, and go to state 254
6654    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
6655    "<< (T_SL)"                   shift, and go to state 256
6656    ">> (T_SR)"                   shift, and go to state 257
6657    '+'                           shift, and go to state 258
6658    '-'                           shift, and go to state 259
6659    '.'                           shift, and go to state 260
6660    '*'                           shift, and go to state 261
6661    '/'                           shift, and go to state 262
6662    '%'                           shift, and go to state 263
6663    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
6664    "** (T_POW)"                  shift, and go to state 265
6665    ';'                           shift, and go to state 333
6666
6667
6668State 186
6669
6670  101 use_type: "function (T_FUNCTION)" .
6671
6672    $default  reduce using rule 101 (use_type)
6673
6674
6675State 187
6676
6677  102 use_type: "const (T_CONST)" .
6678
6679    $default  reduce using rule 102 (use_type)
6680
6681
6682State 188
6683
6684  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" . namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}'
6685  120 use_declaration: "\\ (T_NS_SEPARATOR)" . unprefixed_use_declaration
6686
6687    "identifier (T_STRING)"  shift, and go to state 114
6688
6689    namespace_name              go to state 334
6690    unprefixed_use_declaration  go to state 335
6691
6692
6693State 189
6694
6695   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
6696  105 mixed_group_use_declaration: namespace_name . "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}'
6697  117 unprefixed_use_declaration: namespace_name .
6698  118                           | namespace_name . "as (T_AS)" "identifier (T_STRING)"
6699
6700    "as (T_AS)"            shift, and go to state 336
6701    "\\ (T_NS_SEPARATOR)"  shift, and go to state 337
6702
6703    $default  reduce using rule 117 (unprefixed_use_declaration)
6704
6705
6706State 190
6707
6708   97 top_statement: "use (T_USE)" use_type . group_use_declaration ';'
6709   99              | "use (T_USE)" use_type . use_declarations ';'
6710
6711    "identifier (T_STRING)"  shift, and go to state 114
6712    "\\ (T_NS_SEPARATOR)"    shift, and go to state 338
6713
6714    namespace_name              go to state 339
6715    group_use_declaration       go to state 340
6716    use_declarations            go to state 341
6717    unprefixed_use_declaration  go to state 193
6718    use_declaration             go to state 194
6719
6720
6721State 191
6722
6723   96 top_statement: "use (T_USE)" mixed_group_use_declaration . ';'
6724
6725    ';'  shift, and go to state 342
6726
6727
6728State 192
6729
6730   98 top_statement: "use (T_USE)" use_declarations . ';'
6731  113 use_declarations: use_declarations . ',' use_declaration
6732
6733    ','  shift, and go to state 343
6734    ';'  shift, and go to state 344
6735
6736
6737State 193
6738
6739  119 use_declaration: unprefixed_use_declaration .
6740
6741    $default  reduce using rule 119 (use_declaration)
6742
6743
6744State 194
6745
6746  114 use_declarations: use_declaration .
6747
6748    $default  reduce using rule 114 (use_declarations)
6749
6750
6751State 195
6752
6753  141 statement: "global (T_GLOBAL)" global_var_list . ';'
6754  238 global_var_list: global_var_list . ',' global_var
6755
6756    ','  shift, and go to state 345
6757    ';'  shift, and go to state 346
6758
6759
6760State 196
6761
6762  239 global_var_list: global_var .
6763
6764    $default  reduce using rule 239 (global_var_list)
6765
6766
6767State 197
6768
6769  240 global_var: simple_variable .
6770
6771    $default  reduce using rule 240 (global_var)
6772
6773
6774State 198
6775
6776  146 statement: "unset (T_UNSET)" '(' . unset_variables possible_comma ')' ';'
6777
6778    '['                                           shift, and go to state 129
6779    "static (T_STATIC)"                           shift, and go to state 130
6780    "identifier (T_STRING)"                       shift, and go to state 114
6781    "variable (T_VARIABLE)"                       shift, and go to state 35
6782    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
6783    "array (T_ARRAY)"                             shift, and go to state 65
6784    "namespace (T_NAMESPACE)"                     shift, and go to state 115
6785    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
6786    '('                                           shift, and go to state 131
6787    '$'                                           shift, and go to state 82
6788
6789    namespace_name         go to state 83
6790    name                   go to state 84
6791    unset_variables        go to state 347
6792    unset_variable         go to state 348
6793    function_call          go to state 100
6794    class_name             go to state 101
6795    dereferencable_scalar  go to state 132
6796    constant               go to state 133
6797    variable_class_name    go to state 105
6798    dereferencable         go to state 106
6799    callable_expr          go to state 107
6800    callable_variable      go to state 108
6801    variable               go to state 349
6802    simple_variable        go to state 110
6803    static_member          go to state 111
6804
6805
6806State 199
6807
6808  487 internal_functions_in_yacc: "isset (T_ISSET)" '(' . isset_variables possible_comma ')'
6809
6810    "include (T_INCLUDE)"                         shift, and go to state 4
6811    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
6812    "eval (T_EVAL)"                               shift, and go to state 6
6813    "require (T_REQUIRE)"                         shift, and go to state 7
6814    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
6815    "print (T_PRINT)"                             shift, and go to state 9
6816    "yield (T_YIELD)"                             shift, and go to state 10
6817    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
6818    '+'                                           shift, and go to state 12
6819    '-'                                           shift, and go to state 13
6820    '!'                                           shift, and go to state 14
6821    '~'                                           shift, and go to state 15
6822    "++ (T_INC)"                                  shift, and go to state 16
6823    "-- (T_DEC)"                                  shift, and go to state 17
6824    "(int) (T_INT_CAST)"                          shift, and go to state 18
6825    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
6826    "(string) (T_STRING_CAST)"                    shift, and go to state 20
6827    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
6828    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
6829    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
6830    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
6831    '@'                                           shift, and go to state 25
6832    '['                                           shift, and go to state 26
6833    "new (T_NEW)"                                 shift, and go to state 27
6834    "clone (T_CLONE)"                             shift, and go to state 28
6835    "static (T_STATIC)"                           shift, and go to state 113
6836    "integer number (T_LNUMBER)"                  shift, and go to state 32
6837    "floating-point number (T_DNUMBER)"           shift, and go to state 33
6838    "identifier (T_STRING)"                       shift, and go to state 114
6839    "variable (T_VARIABLE)"                       shift, and go to state 35
6840    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
6841    "exit (T_EXIT)"                               shift, and go to state 38
6842    "function (T_FUNCTION)"                       shift, and go to state 50
6843    "isset (T_ISSET)"                             shift, and go to state 58
6844    "empty (T_EMPTY)"                             shift, and go to state 59
6845    "list (T_LIST)"                               shift, and go to state 64
6846    "array (T_ARRAY)"                             shift, and go to state 65
6847    "__LINE__ (T_LINE)"                           shift, and go to state 66
6848    "__FILE__ (T_FILE)"                           shift, and go to state 67
6849    "__DIR__ (T_DIR)"                             shift, and go to state 68
6850    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
6851    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
6852    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
6853    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
6854    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
6855    "namespace (T_NAMESPACE)"                     shift, and go to state 115
6856    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
6857    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
6858    '('                                           shift, and go to state 77
6859    '`'                                           shift, and go to state 80
6860    '"'                                           shift, and go to state 81
6861    '$'                                           shift, and go to state 82
6862
6863    namespace_name              go to state 83
6864    name                        go to state 84
6865    new_expr                    go to state 97
6866    expr                        go to state 350
6867    function                    go to state 117
6868    function_call               go to state 100
6869    class_name                  go to state 101
6870    dereferencable_scalar       go to state 102
6871    scalar                      go to state 103
6872    constant                    go to state 104
6873    variable_class_name         go to state 105
6874    dereferencable              go to state 106
6875    callable_expr               go to state 107
6876    callable_variable           go to state 108
6877    variable                    go to state 109
6878    simple_variable             go to state 110
6879    static_member               go to state 111
6880    internal_functions_in_yacc  go to state 112
6881    isset_variables             go to state 351
6882    isset_variable              go to state 352
6883
6884
6885State 200
6886
6887  488 internal_functions_in_yacc: "empty (T_EMPTY)" '(' . expr ')'
6888
6889    "include (T_INCLUDE)"                         shift, and go to state 4
6890    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
6891    "eval (T_EVAL)"                               shift, and go to state 6
6892    "require (T_REQUIRE)"                         shift, and go to state 7
6893    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
6894    "print (T_PRINT)"                             shift, and go to state 9
6895    "yield (T_YIELD)"                             shift, and go to state 10
6896    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
6897    '+'                                           shift, and go to state 12
6898    '-'                                           shift, and go to state 13
6899    '!'                                           shift, and go to state 14
6900    '~'                                           shift, and go to state 15
6901    "++ (T_INC)"                                  shift, and go to state 16
6902    "-- (T_DEC)"                                  shift, and go to state 17
6903    "(int) (T_INT_CAST)"                          shift, and go to state 18
6904    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
6905    "(string) (T_STRING_CAST)"                    shift, and go to state 20
6906    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
6907    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
6908    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
6909    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
6910    '@'                                           shift, and go to state 25
6911    '['                                           shift, and go to state 26
6912    "new (T_NEW)"                                 shift, and go to state 27
6913    "clone (T_CLONE)"                             shift, and go to state 28
6914    "static (T_STATIC)"                           shift, and go to state 113
6915    "integer number (T_LNUMBER)"                  shift, and go to state 32
6916    "floating-point number (T_DNUMBER)"           shift, and go to state 33
6917    "identifier (T_STRING)"                       shift, and go to state 114
6918    "variable (T_VARIABLE)"                       shift, and go to state 35
6919    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
6920    "exit (T_EXIT)"                               shift, and go to state 38
6921    "function (T_FUNCTION)"                       shift, and go to state 50
6922    "isset (T_ISSET)"                             shift, and go to state 58
6923    "empty (T_EMPTY)"                             shift, and go to state 59
6924    "list (T_LIST)"                               shift, and go to state 64
6925    "array (T_ARRAY)"                             shift, and go to state 65
6926    "__LINE__ (T_LINE)"                           shift, and go to state 66
6927    "__FILE__ (T_FILE)"                           shift, and go to state 67
6928    "__DIR__ (T_DIR)"                             shift, and go to state 68
6929    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
6930    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
6931    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
6932    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
6933    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
6934    "namespace (T_NAMESPACE)"                     shift, and go to state 115
6935    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
6936    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
6937    '('                                           shift, and go to state 77
6938    '`'                                           shift, and go to state 80
6939    '"'                                           shift, and go to state 81
6940    '$'                                           shift, and go to state 82
6941
6942    namespace_name              go to state 83
6943    name                        go to state 84
6944    new_expr                    go to state 97
6945    expr                        go to state 353
6946    function                    go to state 117
6947    function_call               go to state 100
6948    class_name                  go to state 101
6949    dereferencable_scalar       go to state 102
6950    scalar                      go to state 103
6951    constant                    go to state 104
6952    variable_class_name         go to state 105
6953    dereferencable              go to state 106
6954    callable_expr               go to state 107
6955    callable_variable           go to state 108
6956    variable                    go to state 109
6957    simple_variable             go to state 110
6958    static_member               go to state 111
6959    internal_functions_in_yacc  go to state 112
6960
6961
6962State 201
6963
6964   90 top_statement: "__halt_compiler (T_HALT_COMPILER)" '(' . ')' ';'
6965
6966    ')'  shift, and go to state 354
6967
6968
6969State 202
6970
6971  173 class_declaration_statement: "class (T_CLASS)" @5 . "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}'
6972
6973    "identifier (T_STRING)"  shift, and go to state 355
6974
6975
6976State 203
6977
6978  179 trait_declaration_statement: "trait (T_TRAIT)" @6 . "identifier (T_STRING)" backup_doc_comment '{' class_statement_list '}'
6979
6980    "identifier (T_STRING)"  shift, and go to state 356
6981
6982
6983State 204
6984
6985  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 . "identifier (T_STRING)" interface_extends_list backup_doc_comment '{' class_statement_list '}'
6986
6987    "identifier (T_STRING)"  shift, and go to state 357
6988
6989
6990State 205
6991
6992  302 expr: "list (T_LIST)" '(' . array_pair_list ')' '=' expr
6993
6994    "include (T_INCLUDE)"                         shift, and go to state 4
6995    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
6996    "eval (T_EVAL)"                               shift, and go to state 6
6997    "require (T_REQUIRE)"                         shift, and go to state 7
6998    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
6999    "print (T_PRINT)"                             shift, and go to state 9
7000    "yield (T_YIELD)"                             shift, and go to state 10
7001    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
7002    '&'                                           shift, and go to state 144
7003    '+'                                           shift, and go to state 12
7004    '-'                                           shift, and go to state 13
7005    '!'                                           shift, and go to state 14
7006    '~'                                           shift, and go to state 15
7007    "++ (T_INC)"                                  shift, and go to state 16
7008    "-- (T_DEC)"                                  shift, and go to state 17
7009    "(int) (T_INT_CAST)"                          shift, and go to state 18
7010    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
7011    "(string) (T_STRING_CAST)"                    shift, and go to state 20
7012    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
7013    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
7014    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
7015    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
7016    '@'                                           shift, and go to state 25
7017    '['                                           shift, and go to state 26
7018    "new (T_NEW)"                                 shift, and go to state 27
7019    "clone (T_CLONE)"                             shift, and go to state 28
7020    "static (T_STATIC)"                           shift, and go to state 113
7021    "integer number (T_LNUMBER)"                  shift, and go to state 32
7022    "floating-point number (T_DNUMBER)"           shift, and go to state 33
7023    "identifier (T_STRING)"                       shift, and go to state 114
7024    "variable (T_VARIABLE)"                       shift, and go to state 35
7025    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
7026    "exit (T_EXIT)"                               shift, and go to state 38
7027    "function (T_FUNCTION)"                       shift, and go to state 50
7028    "isset (T_ISSET)"                             shift, and go to state 58
7029    "empty (T_EMPTY)"                             shift, and go to state 59
7030    "list (T_LIST)"                               shift, and go to state 145
7031    "array (T_ARRAY)"                             shift, and go to state 65
7032    "__LINE__ (T_LINE)"                           shift, and go to state 66
7033    "__FILE__ (T_FILE)"                           shift, and go to state 67
7034    "__DIR__ (T_DIR)"                             shift, and go to state 68
7035    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
7036    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
7037    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
7038    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
7039    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
7040    "namespace (T_NAMESPACE)"                     shift, and go to state 115
7041    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
7042    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
7043    '('                                           shift, and go to state 77
7044    '`'                                           shift, and go to state 80
7045    '"'                                           shift, and go to state 81
7046    '$'                                           shift, and go to state 82
7047
7048    $default  reduce using rule 462 (possible_array_pair)
7049
7050    namespace_name              go to state 83
7051    name                        go to state 84
7052    new_expr                    go to state 97
7053    expr                        go to state 146
7054    function                    go to state 117
7055    function_call               go to state 100
7056    class_name                  go to state 101
7057    dereferencable_scalar       go to state 102
7058    scalar                      go to state 103
7059    constant                    go to state 104
7060    variable_class_name         go to state 105
7061    dereferencable              go to state 106
7062    callable_expr               go to state 107
7063    callable_variable           go to state 108
7064    variable                    go to state 109
7065    simple_variable             go to state 110
7066    static_member               go to state 111
7067    array_pair_list             go to state 358
7068    possible_array_pair         go to state 148
7069    non_empty_array_pair_list   go to state 149
7070    array_pair                  go to state 150
7071    internal_functions_in_yacc  go to state 112
7072
7073
7074State 206
7075
7076  404 dereferencable_scalar: "array (T_ARRAY)" '(' . array_pair_list ')'
7077
7078    "include (T_INCLUDE)"                         shift, and go to state 4
7079    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
7080    "eval (T_EVAL)"                               shift, and go to state 6
7081    "require (T_REQUIRE)"                         shift, and go to state 7
7082    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
7083    "print (T_PRINT)"                             shift, and go to state 9
7084    "yield (T_YIELD)"                             shift, and go to state 10
7085    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
7086    '&'                                           shift, and go to state 144
7087    '+'                                           shift, and go to state 12
7088    '-'                                           shift, and go to state 13
7089    '!'                                           shift, and go to state 14
7090    '~'                                           shift, and go to state 15
7091    "++ (T_INC)"                                  shift, and go to state 16
7092    "-- (T_DEC)"                                  shift, and go to state 17
7093    "(int) (T_INT_CAST)"                          shift, and go to state 18
7094    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
7095    "(string) (T_STRING_CAST)"                    shift, and go to state 20
7096    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
7097    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
7098    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
7099    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
7100    '@'                                           shift, and go to state 25
7101    '['                                           shift, and go to state 26
7102    "new (T_NEW)"                                 shift, and go to state 27
7103    "clone (T_CLONE)"                             shift, and go to state 28
7104    "static (T_STATIC)"                           shift, and go to state 113
7105    "integer number (T_LNUMBER)"                  shift, and go to state 32
7106    "floating-point number (T_DNUMBER)"           shift, and go to state 33
7107    "identifier (T_STRING)"                       shift, and go to state 114
7108    "variable (T_VARIABLE)"                       shift, and go to state 35
7109    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
7110    "exit (T_EXIT)"                               shift, and go to state 38
7111    "function (T_FUNCTION)"                       shift, and go to state 50
7112    "isset (T_ISSET)"                             shift, and go to state 58
7113    "empty (T_EMPTY)"                             shift, and go to state 59
7114    "list (T_LIST)"                               shift, and go to state 145
7115    "array (T_ARRAY)"                             shift, and go to state 65
7116    "__LINE__ (T_LINE)"                           shift, and go to state 66
7117    "__FILE__ (T_FILE)"                           shift, and go to state 67
7118    "__DIR__ (T_DIR)"                             shift, and go to state 68
7119    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
7120    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
7121    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
7122    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
7123    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
7124    "namespace (T_NAMESPACE)"                     shift, and go to state 115
7125    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
7126    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
7127    '('                                           shift, and go to state 77
7128    '`'                                           shift, and go to state 80
7129    '"'                                           shift, and go to state 81
7130    '$'                                           shift, and go to state 82
7131
7132    $default  reduce using rule 462 (possible_array_pair)
7133
7134    namespace_name              go to state 83
7135    name                        go to state 84
7136    new_expr                    go to state 97
7137    expr                        go to state 146
7138    function                    go to state 117
7139    function_call               go to state 100
7140    class_name                  go to state 101
7141    dereferencable_scalar       go to state 102
7142    scalar                      go to state 103
7143    constant                    go to state 104
7144    variable_class_name         go to state 105
7145    dereferencable              go to state 106
7146    callable_expr               go to state 107
7147    callable_variable           go to state 108
7148    variable                    go to state 109
7149    simple_variable             go to state 110
7150    static_member               go to state 111
7151    array_pair_list             go to state 359
7152    possible_array_pair         go to state 148
7153    non_empty_array_pair_list   go to state 149
7154    array_pair                  go to state 150
7155    internal_functions_in_yacc  go to state 112
7156
7157
7158State 207
7159
7160  476 encaps_var: "variable (T_VARIABLE)" .
7161  477           | "variable (T_VARIABLE)" . '[' encaps_var_offset ']'
7162  478           | "variable (T_VARIABLE)" . "-> (T_OBJECT_OPERATOR)" "identifier (T_STRING)"
7163
7164    '['                       shift, and go to state 360
7165    "-> (T_OBJECT_OPERATOR)"  shift, and go to state 361
7166
7167    $default  reduce using rule 476 (encaps_var)
7168
7169
7170State 208
7171
7172  417 scalar: "heredoc start (T_START_HEREDOC)" "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . "heredoc end (T_END_HEREDOC)"
7173  475 encaps_list: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . encaps_var
7174
7175    "variable (T_VARIABLE)"            shift, and go to state 207
7176    "heredoc end (T_END_HEREDOC)"      shift, and go to state 362
7177    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"  shift, and go to state 210
7178    "{$ (T_CURLY_OPEN)"                shift, and go to state 211
7179
7180    encaps_var  go to state 363
7181
7182
7183State 209
7184
7185  418 scalar: "heredoc start (T_START_HEREDOC)" "heredoc end (T_END_HEREDOC)" .
7186
7187    $default  reduce using rule 418 (scalar)
7188
7189
7190State 210
7191
7192  479 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" . expr '}'
7193  480           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" . "variable name (T_STRING_VARNAME)" '}'
7194  481           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" . "variable name (T_STRING_VARNAME)" '[' expr ']' '}'
7195
7196    "include (T_INCLUDE)"                         shift, and go to state 4
7197    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
7198    "eval (T_EVAL)"                               shift, and go to state 6
7199    "require (T_REQUIRE)"                         shift, and go to state 7
7200    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
7201    "print (T_PRINT)"                             shift, and go to state 9
7202    "yield (T_YIELD)"                             shift, and go to state 10
7203    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
7204    '+'                                           shift, and go to state 12
7205    '-'                                           shift, and go to state 13
7206    '!'                                           shift, and go to state 14
7207    '~'                                           shift, and go to state 15
7208    "++ (T_INC)"                                  shift, and go to state 16
7209    "-- (T_DEC)"                                  shift, and go to state 17
7210    "(int) (T_INT_CAST)"                          shift, and go to state 18
7211    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
7212    "(string) (T_STRING_CAST)"                    shift, and go to state 20
7213    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
7214    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
7215    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
7216    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
7217    '@'                                           shift, and go to state 25
7218    '['                                           shift, and go to state 26
7219    "new (T_NEW)"                                 shift, and go to state 27
7220    "clone (T_CLONE)"                             shift, and go to state 28
7221    "static (T_STATIC)"                           shift, and go to state 113
7222    "integer number (T_LNUMBER)"                  shift, and go to state 32
7223    "floating-point number (T_DNUMBER)"           shift, and go to state 33
7224    "identifier (T_STRING)"                       shift, and go to state 114
7225    "variable (T_VARIABLE)"                       shift, and go to state 35
7226    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
7227    "variable name (T_STRING_VARNAME)"            shift, and go to state 364
7228    "exit (T_EXIT)"                               shift, and go to state 38
7229    "function (T_FUNCTION)"                       shift, and go to state 50
7230    "isset (T_ISSET)"                             shift, and go to state 58
7231    "empty (T_EMPTY)"                             shift, and go to state 59
7232    "list (T_LIST)"                               shift, and go to state 64
7233    "array (T_ARRAY)"                             shift, and go to state 65
7234    "__LINE__ (T_LINE)"                           shift, and go to state 66
7235    "__FILE__ (T_FILE)"                           shift, and go to state 67
7236    "__DIR__ (T_DIR)"                             shift, and go to state 68
7237    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
7238    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
7239    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
7240    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
7241    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
7242    "namespace (T_NAMESPACE)"                     shift, and go to state 115
7243    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
7244    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
7245    '('                                           shift, and go to state 77
7246    '`'                                           shift, and go to state 80
7247    '"'                                           shift, and go to state 81
7248    '$'                                           shift, and go to state 82
7249
7250    namespace_name              go to state 83
7251    name                        go to state 84
7252    new_expr                    go to state 97
7253    expr                        go to state 365
7254    function                    go to state 117
7255    function_call               go to state 100
7256    class_name                  go to state 101
7257    dereferencable_scalar       go to state 102
7258    scalar                      go to state 103
7259    constant                    go to state 104
7260    variable_class_name         go to state 105
7261    dereferencable              go to state 106
7262    callable_expr               go to state 107
7263    callable_variable           go to state 108
7264    variable                    go to state 109
7265    simple_variable             go to state 110
7266    static_member               go to state 111
7267    internal_functions_in_yacc  go to state 112
7268
7269
7270State 211
7271
7272  482 encaps_var: "{$ (T_CURLY_OPEN)" . variable '}'
7273
7274    '['                                           shift, and go to state 129
7275    "static (T_STATIC)"                           shift, and go to state 130
7276    "identifier (T_STRING)"                       shift, and go to state 114
7277    "variable (T_VARIABLE)"                       shift, and go to state 35
7278    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
7279    "array (T_ARRAY)"                             shift, and go to state 65
7280    "namespace (T_NAMESPACE)"                     shift, and go to state 115
7281    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
7282    '('                                           shift, and go to state 131
7283    '$'                                           shift, and go to state 82
7284
7285    namespace_name         go to state 83
7286    name                   go to state 84
7287    function_call          go to state 100
7288    class_name             go to state 101
7289    dereferencable_scalar  go to state 132
7290    constant               go to state 133
7291    variable_class_name    go to state 105
7292    dereferencable         go to state 106
7293    callable_expr          go to state 107
7294    callable_variable      go to state 108
7295    variable               go to state 366
7296    simple_variable        go to state 110
7297    static_member          go to state 111
7298
7299
7300State 212
7301
7302  420 scalar: "heredoc start (T_START_HEREDOC)" encaps_list . "heredoc end (T_END_HEREDOC)"
7303  472 encaps_list: encaps_list . encaps_var
7304  473            | encaps_list . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"
7305
7306    "variable (T_VARIABLE)"                                     shift, and go to state 207
7307    "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"  shift, and go to state 367
7308    "heredoc end (T_END_HEREDOC)"                               shift, and go to state 368
7309    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"                           shift, and go to state 210
7310    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 211
7311
7312    encaps_var  go to state 369
7313
7314
7315State 213
7316
7317  474 encaps_list: encaps_var .
7318
7319    $default  reduce using rule 474 (encaps_list)
7320
7321
7322State 214
7323
7324   83 name: "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" . namespace_name
7325
7326    "identifier (T_STRING)"  shift, and go to state 114
7327
7328    namespace_name  go to state 370
7329
7330
7331State 215
7332
7333   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
7334   91 top_statement: "namespace (T_NAMESPACE)" namespace_name . ';'
7335   93              | "namespace (T_NAMESPACE)" namespace_name . $@1 '{' top_statement_list '}'
7336
7337    "\\ (T_NS_SEPARATOR)"  shift, and go to state 227
7338    ';'                    shift, and go to state 371
7339
7340    $default  reduce using rule 92 ($@1)
7341
7342    $@1  go to state 372
7343
7344
7345State 216
7346
7347   95 top_statement: "namespace (T_NAMESPACE)" $@2 . '{' top_statement_list '}'
7348
7349    '{'  shift, and go to state 373
7350
7351
7352State 217
7353
7354   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
7355   84 name: "\\ (T_NS_SEPARATOR)" namespace_name .
7356
7357    "\\ (T_NS_SEPARATOR)"  shift, and go to state 227
7358
7359    $default  reduce using rule 84 (name)
7360
7361
7362State 218
7363
7364  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
7365  324     | expr . "&& (T_BOOLEAN_AND)" expr
7366  325     | expr . "or (T_LOGICAL_OR)" expr
7367  326     | expr . "and (T_LOGICAL_AND)" expr
7368  327     | expr . "xor (T_LOGICAL_XOR)" expr
7369  328     | expr . '|' expr
7370  329     | expr . '&' expr
7371  330     | expr . '^' expr
7372  331     | expr . '.' expr
7373  332     | expr . '+' expr
7374  333     | expr . '-' expr
7375  334     | expr . '*' expr
7376  335     | expr . "** (T_POW)" expr
7377  336     | expr . '/' expr
7378  337     | expr . '%' expr
7379  338     | expr . "<< (T_SL)" expr
7380  339     | expr . ">> (T_SR)" expr
7381  344     | expr . "=== (T_IS_IDENTICAL)" expr
7382  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
7383  346     | expr . "== (T_IS_EQUAL)" expr
7384  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
7385  348     | expr . '<' expr
7386  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
7387  350     | expr . '>' expr
7388  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
7389  352     | expr . "<=> (T_SPACESHIP)" expr
7390  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
7391  354     | '(' expr . ')'
7392  356     | expr . '?' expr ':' expr
7393  357     | expr . '?' ':' expr
7394  358     | expr . "?? (T_COALESCE)" expr
7395  430 dereferencable: '(' expr . ')'
7396  433 callable_expr: '(' expr . ')'
7397
7398    "or (T_LOGICAL_OR)"           shift, and go to state 237
7399    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
7400    "and (T_LOGICAL_AND)"         shift, and go to state 239
7401    '?'                           shift, and go to state 240
7402    "?? (T_COALESCE)"             shift, and go to state 241
7403    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
7404    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
7405    '|'                           shift, and go to state 244
7406    '^'                           shift, and go to state 245
7407    '&'                           shift, and go to state 246
7408    "== (T_IS_EQUAL)"             shift, and go to state 247
7409    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
7410    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
7411    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
7412    "<=> (T_SPACESHIP)"           shift, and go to state 251
7413    '<'                           shift, and go to state 252
7414    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
7415    '>'                           shift, and go to state 254
7416    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
7417    "<< (T_SL)"                   shift, and go to state 256
7418    ">> (T_SR)"                   shift, and go to state 257
7419    '+'                           shift, and go to state 258
7420    '-'                           shift, and go to state 259
7421    '.'                           shift, and go to state 260
7422    '*'                           shift, and go to state 261
7423    '/'                           shift, and go to state 262
7424    '%'                           shift, and go to state 263
7425    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
7426    "** (T_POW)"                  shift, and go to state 265
7427    ')'                           shift, and go to state 374
7428
7429
7430State 219
7431
7432  123 inner_statement_list: inner_statement_list . inner_statement
7433  131 statement: '{' inner_statement_list . '}'
7434
7435    "include (T_INCLUDE)"                         shift, and go to state 4
7436    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
7437    "eval (T_EVAL)"                               shift, and go to state 6
7438    "require (T_REQUIRE)"                         shift, and go to state 7
7439    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
7440    "print (T_PRINT)"                             shift, and go to state 9
7441    "yield (T_YIELD)"                             shift, and go to state 10
7442    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
7443    '+'                                           shift, and go to state 12
7444    '-'                                           shift, and go to state 13
7445    '!'                                           shift, and go to state 14
7446    '~'                                           shift, and go to state 15
7447    "++ (T_INC)"                                  shift, and go to state 16
7448    "-- (T_DEC)"                                  shift, and go to state 17
7449    "(int) (T_INT_CAST)"                          shift, and go to state 18
7450    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
7451    "(string) (T_STRING_CAST)"                    shift, and go to state 20
7452    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
7453    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
7454    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
7455    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
7456    '@'                                           shift, and go to state 25
7457    '['                                           shift, and go to state 26
7458    "new (T_NEW)"                                 shift, and go to state 27
7459    "clone (T_CLONE)"                             shift, and go to state 28
7460    "static (T_STATIC)"                           shift, and go to state 29
7461    "abstract (T_ABSTRACT)"                       shift, and go to state 30
7462    "final (T_FINAL)"                             shift, and go to state 31
7463    "integer number (T_LNUMBER)"                  shift, and go to state 32
7464    "floating-point number (T_DNUMBER)"           shift, and go to state 33
7465    "identifier (T_STRING)"                       shift, and go to state 34
7466    "variable (T_VARIABLE)"                       shift, and go to state 35
7467    T_INLINE_HTML                                 shift, and go to state 36
7468    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
7469    "exit (T_EXIT)"                               shift, and go to state 38
7470    "if (T_IF)"                                   shift, and go to state 39
7471    "echo (T_ECHO)"                               shift, and go to state 40
7472    "do (T_DO)"                                   shift, and go to state 41
7473    "while (T_WHILE)"                             shift, and go to state 42
7474    "for (T_FOR)"                                 shift, and go to state 43
7475    "foreach (T_FOREACH)"                         shift, and go to state 44
7476    "declare (T_DECLARE)"                         shift, and go to state 45
7477    "switch (T_SWITCH)"                           shift, and go to state 46
7478    "break (T_BREAK)"                             shift, and go to state 47
7479    "continue (T_CONTINUE)"                       shift, and go to state 48
7480    "goto (T_GOTO)"                               shift, and go to state 49
7481    "function (T_FUNCTION)"                       shift, and go to state 50
7482    "return (T_RETURN)"                           shift, and go to state 52
7483    "try (T_TRY)"                                 shift, and go to state 53
7484    "throw (T_THROW)"                             shift, and go to state 54
7485    "global (T_GLOBAL)"                           shift, and go to state 56
7486    "unset (T_UNSET)"                             shift, and go to state 57
7487    "isset (T_ISSET)"                             shift, and go to state 58
7488    "empty (T_EMPTY)"                             shift, and go to state 59
7489    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
7490    "class (T_CLASS)"                             shift, and go to state 61
7491    "trait (T_TRAIT)"                             shift, and go to state 62
7492    "interface (T_INTERFACE)"                     shift, and go to state 63
7493    "list (T_LIST)"                               shift, and go to state 64
7494    "array (T_ARRAY)"                             shift, and go to state 65
7495    "__LINE__ (T_LINE)"                           shift, and go to state 66
7496    "__FILE__ (T_FILE)"                           shift, and go to state 67
7497    "__DIR__ (T_DIR)"                             shift, and go to state 68
7498    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
7499    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
7500    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
7501    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
7502    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
7503    "namespace (T_NAMESPACE)"                     shift, and go to state 115
7504    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
7505    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
7506    '('                                           shift, and go to state 77
7507    ';'                                           shift, and go to state 78
7508    '{'                                           shift, and go to state 79
7509    '}'                                           shift, and go to state 376
7510    '`'                                           shift, and go to state 80
7511    '"'                                           shift, and go to state 81
7512    '$'                                           shift, and go to state 82
7513
7514    namespace_name                   go to state 83
7515    name                             go to state 84
7516    inner_statement                  go to state 377
7517    statement                        go to state 378
7518    function_declaration_statement   go to state 379
7519    class_declaration_statement      go to state 380
7520    class_modifiers                  go to state 89
7521    class_modifier                   go to state 90
7522    trait_declaration_statement      go to state 381
7523    interface_declaration_statement  go to state 382
7524    if_stmt_without_else             go to state 93
7525    if_stmt                          go to state 94
7526    alt_if_stmt_without_else         go to state 95
7527    alt_if_stmt                      go to state 96
7528    new_expr                         go to state 97
7529    expr                             go to state 98
7530    function                         go to state 99
7531    function_call                    go to state 100
7532    class_name                       go to state 101
7533    dereferencable_scalar            go to state 102
7534    scalar                           go to state 103
7535    constant                         go to state 104
7536    variable_class_name              go to state 105
7537    dereferencable                   go to state 106
7538    callable_expr                    go to state 107
7539    callable_variable                go to state 108
7540    variable                         go to state 109
7541    simple_variable                  go to state 110
7542    static_member                    go to state 111
7543    internal_functions_in_yacc       go to state 112
7544
7545
7546State 220
7547
7548  400 backticks_expr: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" .
7549  475 encaps_list: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . encaps_var
7550
7551    "variable (T_VARIABLE)"            shift, and go to state 207
7552    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"  shift, and go to state 210
7553    "{$ (T_CURLY_OPEN)"                shift, and go to state 211
7554
7555    $default  reduce using rule 400 (backticks_expr)
7556
7557    encaps_var  go to state 363
7558
7559
7560State 221
7561
7562  370 expr: '`' backticks_expr . '`'
7563
7564    '`'  shift, and go to state 383
7565
7566
7567State 222
7568
7569  401 backticks_expr: encaps_list .
7570  472 encaps_list: encaps_list . encaps_var
7571  473            | encaps_list . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"
7572
7573    "variable (T_VARIABLE)"                                     shift, and go to state 207
7574    "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"  shift, and go to state 367
7575    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"                           shift, and go to state 210
7576    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 211
7577
7578    $default  reduce using rule 401 (backticks_expr)
7579
7580    encaps_var  go to state 369
7581
7582
7583State 223
7584
7585  475 encaps_list: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . encaps_var
7586
7587    "variable (T_VARIABLE)"            shift, and go to state 207
7588    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"  shift, and go to state 210
7589    "{$ (T_CURLY_OPEN)"                shift, and go to state 211
7590
7591    encaps_var  go to state 363
7592
7593
7594State 224
7595
7596  419 scalar: '"' encaps_list . '"'
7597  472 encaps_list: encaps_list . encaps_var
7598  473            | encaps_list . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"
7599
7600    "variable (T_VARIABLE)"                                     shift, and go to state 207
7601    "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)"  shift, and go to state 367
7602    "${ (T_DOLLAR_OPEN_CURLY_BRACES)"                           shift, and go to state 210
7603    "{$ (T_CURLY_OPEN)"                                         shift, and go to state 211
7604    '"'                                                         shift, and go to state 384
7605
7606    encaps_var  go to state 369
7607
7608
7609State 225
7610
7611  445 simple_variable: '$' '{' . expr '}'
7612
7613    "include (T_INCLUDE)"                         shift, and go to state 4
7614    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
7615    "eval (T_EVAL)"                               shift, and go to state 6
7616    "require (T_REQUIRE)"                         shift, and go to state 7
7617    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
7618    "print (T_PRINT)"                             shift, and go to state 9
7619    "yield (T_YIELD)"                             shift, and go to state 10
7620    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
7621    '+'                                           shift, and go to state 12
7622    '-'                                           shift, and go to state 13
7623    '!'                                           shift, and go to state 14
7624    '~'                                           shift, and go to state 15
7625    "++ (T_INC)"                                  shift, and go to state 16
7626    "-- (T_DEC)"                                  shift, and go to state 17
7627    "(int) (T_INT_CAST)"                          shift, and go to state 18
7628    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
7629    "(string) (T_STRING_CAST)"                    shift, and go to state 20
7630    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
7631    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
7632    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
7633    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
7634    '@'                                           shift, and go to state 25
7635    '['                                           shift, and go to state 26
7636    "new (T_NEW)"                                 shift, and go to state 27
7637    "clone (T_CLONE)"                             shift, and go to state 28
7638    "static (T_STATIC)"                           shift, and go to state 113
7639    "integer number (T_LNUMBER)"                  shift, and go to state 32
7640    "floating-point number (T_DNUMBER)"           shift, and go to state 33
7641    "identifier (T_STRING)"                       shift, and go to state 114
7642    "variable (T_VARIABLE)"                       shift, and go to state 35
7643    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
7644    "exit (T_EXIT)"                               shift, and go to state 38
7645    "function (T_FUNCTION)"                       shift, and go to state 50
7646    "isset (T_ISSET)"                             shift, and go to state 58
7647    "empty (T_EMPTY)"                             shift, and go to state 59
7648    "list (T_LIST)"                               shift, and go to state 64
7649    "array (T_ARRAY)"                             shift, and go to state 65
7650    "__LINE__ (T_LINE)"                           shift, and go to state 66
7651    "__FILE__ (T_FILE)"                           shift, and go to state 67
7652    "__DIR__ (T_DIR)"                             shift, and go to state 68
7653    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
7654    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
7655    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
7656    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
7657    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
7658    "namespace (T_NAMESPACE)"                     shift, and go to state 115
7659    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
7660    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
7661    '('                                           shift, and go to state 77
7662    '`'                                           shift, and go to state 80
7663    '"'                                           shift, and go to state 81
7664    '$'                                           shift, and go to state 82
7665
7666    namespace_name              go to state 83
7667    name                        go to state 84
7668    new_expr                    go to state 97
7669    expr                        go to state 385
7670    function                    go to state 117
7671    function_call               go to state 100
7672    class_name                  go to state 101
7673    dereferencable_scalar       go to state 102
7674    scalar                      go to state 103
7675    constant                    go to state 104
7676    variable_class_name         go to state 105
7677    dereferencable              go to state 106
7678    callable_expr               go to state 107
7679    callable_variable           go to state 108
7680    variable                    go to state 109
7681    simple_variable             go to state 110
7682    static_member               go to state 111
7683    internal_functions_in_yacc  go to state 112
7684
7685
7686State 226
7687
7688  446 simple_variable: '$' simple_variable .
7689
7690    $default  reduce using rule 446 (simple_variable)
7691
7692
7693State 227
7694
7695   81 namespace_name: namespace_name "\\ (T_NS_SEPARATOR)" . "identifier (T_STRING)"
7696
7697    "identifier (T_STRING)"  shift, and go to state 386
7698
7699
7700State 228
7701
7702  232 argument_list: '(' . ')'
7703  233              | '(' . non_empty_argument_list possible_comma ')'
7704
7705    "include (T_INCLUDE)"                         shift, and go to state 4
7706    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
7707    "eval (T_EVAL)"                               shift, and go to state 6
7708    "require (T_REQUIRE)"                         shift, and go to state 7
7709    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
7710    "print (T_PRINT)"                             shift, and go to state 9
7711    "yield (T_YIELD)"                             shift, and go to state 10
7712    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
7713    '+'                                           shift, and go to state 12
7714    '-'                                           shift, and go to state 13
7715    '!'                                           shift, and go to state 14
7716    '~'                                           shift, and go to state 15
7717    "++ (T_INC)"                                  shift, and go to state 16
7718    "-- (T_DEC)"                                  shift, and go to state 17
7719    "(int) (T_INT_CAST)"                          shift, and go to state 18
7720    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
7721    "(string) (T_STRING_CAST)"                    shift, and go to state 20
7722    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
7723    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
7724    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
7725    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
7726    '@'                                           shift, and go to state 25
7727    '['                                           shift, and go to state 26
7728    "new (T_NEW)"                                 shift, and go to state 27
7729    "clone (T_CLONE)"                             shift, and go to state 28
7730    "static (T_STATIC)"                           shift, and go to state 113
7731    "integer number (T_LNUMBER)"                  shift, and go to state 32
7732    "floating-point number (T_DNUMBER)"           shift, and go to state 33
7733    "identifier (T_STRING)"                       shift, and go to state 114
7734    "variable (T_VARIABLE)"                       shift, and go to state 35
7735    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
7736    "exit (T_EXIT)"                               shift, and go to state 38
7737    "function (T_FUNCTION)"                       shift, and go to state 50
7738    "isset (T_ISSET)"                             shift, and go to state 58
7739    "empty (T_EMPTY)"                             shift, and go to state 59
7740    "list (T_LIST)"                               shift, and go to state 64
7741    "array (T_ARRAY)"                             shift, and go to state 65
7742    "__LINE__ (T_LINE)"                           shift, and go to state 66
7743    "__FILE__ (T_FILE)"                           shift, and go to state 67
7744    "__DIR__ (T_DIR)"                             shift, and go to state 68
7745    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
7746    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
7747    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
7748    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
7749    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
7750    "namespace (T_NAMESPACE)"                     shift, and go to state 115
7751    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
7752    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
7753    "... (T_ELLIPSIS)"                            shift, and go to state 387
7754    '('                                           shift, and go to state 77
7755    ')'                                           shift, and go to state 388
7756    '`'                                           shift, and go to state 80
7757    '"'                                           shift, and go to state 81
7758    '$'                                           shift, and go to state 82
7759
7760    namespace_name              go to state 83
7761    name                        go to state 84
7762    non_empty_argument_list     go to state 389
7763    argument                    go to state 390
7764    new_expr                    go to state 97
7765    expr                        go to state 391
7766    function                    go to state 117
7767    function_call               go to state 100
7768    class_name                  go to state 101
7769    dereferencable_scalar       go to state 102
7770    scalar                      go to state 103
7771    constant                    go to state 104
7772    variable_class_name         go to state 105
7773    dereferencable              go to state 106
7774    callable_expr               go to state 107
7775    callable_variable           go to state 108
7776    variable                    go to state 109
7777    simple_variable             go to state 110
7778    static_member               go to state 111
7779    internal_functions_in_yacc  go to state 112
7780
7781
7782State 229
7783
7784  389 function_call: name argument_list .
7785
7786    $default  reduce using rule 389 (function_call)
7787
7788
7789State 230
7790
7791  171 class_declaration_statement: class_modifiers "class (T_CLASS)" . @4 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}'
7792
7793    $default  reduce using rule 170 (@4)
7794
7795    @4  go to state 392
7796
7797
7798State 231
7799
7800  175 class_modifiers: class_modifiers class_modifier .
7801
7802    $default  reduce using rule 175 (class_modifiers)
7803
7804
7805State 232
7806
7807  210 if_stmt_without_else: if_stmt_without_else "elseif (T_ELSEIF)" . '(' expr ')' statement
7808
7809    '('  shift, and go to state 393
7810
7811
7812State 233
7813
7814  212 if_stmt: if_stmt_without_else "else (T_ELSE)" . statement
7815
7816    "include (T_INCLUDE)"                         shift, and go to state 4
7817    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
7818    "eval (T_EVAL)"                               shift, and go to state 6
7819    "require (T_REQUIRE)"                         shift, and go to state 7
7820    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
7821    "print (T_PRINT)"                             shift, and go to state 9
7822    "yield (T_YIELD)"                             shift, and go to state 10
7823    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
7824    '+'                                           shift, and go to state 12
7825    '-'                                           shift, and go to state 13
7826    '!'                                           shift, and go to state 14
7827    '~'                                           shift, and go to state 15
7828    "++ (T_INC)"                                  shift, and go to state 16
7829    "-- (T_DEC)"                                  shift, and go to state 17
7830    "(int) (T_INT_CAST)"                          shift, and go to state 18
7831    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
7832    "(string) (T_STRING_CAST)"                    shift, and go to state 20
7833    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
7834    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
7835    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
7836    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
7837    '@'                                           shift, and go to state 25
7838    '['                                           shift, and go to state 26
7839    "new (T_NEW)"                                 shift, and go to state 27
7840    "clone (T_CLONE)"                             shift, and go to state 28
7841    "static (T_STATIC)"                           shift, and go to state 29
7842    "integer number (T_LNUMBER)"                  shift, and go to state 32
7843    "floating-point number (T_DNUMBER)"           shift, and go to state 33
7844    "identifier (T_STRING)"                       shift, and go to state 34
7845    "variable (T_VARIABLE)"                       shift, and go to state 35
7846    T_INLINE_HTML                                 shift, and go to state 36
7847    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
7848    "exit (T_EXIT)"                               shift, and go to state 38
7849    "if (T_IF)"                                   shift, and go to state 39
7850    "echo (T_ECHO)"                               shift, and go to state 40
7851    "do (T_DO)"                                   shift, and go to state 41
7852    "while (T_WHILE)"                             shift, and go to state 42
7853    "for (T_FOR)"                                 shift, and go to state 43
7854    "foreach (T_FOREACH)"                         shift, and go to state 44
7855    "declare (T_DECLARE)"                         shift, and go to state 45
7856    "switch (T_SWITCH)"                           shift, and go to state 46
7857    "break (T_BREAK)"                             shift, and go to state 47
7858    "continue (T_CONTINUE)"                       shift, and go to state 48
7859    "goto (T_GOTO)"                               shift, and go to state 49
7860    "function (T_FUNCTION)"                       shift, and go to state 50
7861    "return (T_RETURN)"                           shift, and go to state 52
7862    "try (T_TRY)"                                 shift, and go to state 53
7863    "throw (T_THROW)"                             shift, and go to state 54
7864    "global (T_GLOBAL)"                           shift, and go to state 56
7865    "unset (T_UNSET)"                             shift, and go to state 57
7866    "isset (T_ISSET)"                             shift, and go to state 58
7867    "empty (T_EMPTY)"                             shift, and go to state 59
7868    "list (T_LIST)"                               shift, and go to state 64
7869    "array (T_ARRAY)"                             shift, and go to state 65
7870    "__LINE__ (T_LINE)"                           shift, and go to state 66
7871    "__FILE__ (T_FILE)"                           shift, and go to state 67
7872    "__DIR__ (T_DIR)"                             shift, and go to state 68
7873    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
7874    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
7875    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
7876    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
7877    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
7878    "namespace (T_NAMESPACE)"                     shift, and go to state 115
7879    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
7880    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
7881    '('                                           shift, and go to state 77
7882    ';'                                           shift, and go to state 78
7883    '{'                                           shift, and go to state 79
7884    '`'                                           shift, and go to state 80
7885    '"'                                           shift, and go to state 81
7886    '$'                                           shift, and go to state 82
7887
7888    namespace_name              go to state 83
7889    name                        go to state 84
7890    statement                   go to state 394
7891    if_stmt_without_else        go to state 93
7892    if_stmt                     go to state 94
7893    alt_if_stmt_without_else    go to state 95
7894    alt_if_stmt                 go to state 96
7895    new_expr                    go to state 97
7896    expr                        go to state 98
7897    function                    go to state 117
7898    function_call               go to state 100
7899    class_name                  go to state 101
7900    dereferencable_scalar       go to state 102
7901    scalar                      go to state 103
7902    constant                    go to state 104
7903    variable_class_name         go to state 105
7904    dereferencable              go to state 106
7905    callable_expr               go to state 107
7906    callable_variable           go to state 108
7907    variable                    go to state 109
7908    simple_variable             go to state 110
7909    static_member               go to state 111
7910    internal_functions_in_yacc  go to state 112
7911
7912
7913State 234
7914
7915  214 alt_if_stmt_without_else: alt_if_stmt_without_else "elseif (T_ELSEIF)" . '(' expr ')' ':' inner_statement_list
7916
7917    '('  shift, and go to state 395
7918
7919
7920State 235
7921
7922  216 alt_if_stmt: alt_if_stmt_without_else "else (T_ELSE)" . ':' inner_statement_list "endif (T_ENDIF)" ';'
7923
7924    ':'  shift, and go to state 396
7925
7926
7927State 236
7928
7929  215 alt_if_stmt: alt_if_stmt_without_else "endif (T_ENDIF)" . ';'
7930
7931    ';'  shift, and go to state 397
7932
7933
7934State 237
7935
7936  325 expr: expr "or (T_LOGICAL_OR)" . expr
7937
7938    "include (T_INCLUDE)"                         shift, and go to state 4
7939    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
7940    "eval (T_EVAL)"                               shift, and go to state 6
7941    "require (T_REQUIRE)"                         shift, and go to state 7
7942    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
7943    "print (T_PRINT)"                             shift, and go to state 9
7944    "yield (T_YIELD)"                             shift, and go to state 10
7945    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
7946    '+'                                           shift, and go to state 12
7947    '-'                                           shift, and go to state 13
7948    '!'                                           shift, and go to state 14
7949    '~'                                           shift, and go to state 15
7950    "++ (T_INC)"                                  shift, and go to state 16
7951    "-- (T_DEC)"                                  shift, and go to state 17
7952    "(int) (T_INT_CAST)"                          shift, and go to state 18
7953    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
7954    "(string) (T_STRING_CAST)"                    shift, and go to state 20
7955    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
7956    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
7957    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
7958    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
7959    '@'                                           shift, and go to state 25
7960    '['                                           shift, and go to state 26
7961    "new (T_NEW)"                                 shift, and go to state 27
7962    "clone (T_CLONE)"                             shift, and go to state 28
7963    "static (T_STATIC)"                           shift, and go to state 113
7964    "integer number (T_LNUMBER)"                  shift, and go to state 32
7965    "floating-point number (T_DNUMBER)"           shift, and go to state 33
7966    "identifier (T_STRING)"                       shift, and go to state 114
7967    "variable (T_VARIABLE)"                       shift, and go to state 35
7968    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
7969    "exit (T_EXIT)"                               shift, and go to state 38
7970    "function (T_FUNCTION)"                       shift, and go to state 50
7971    "isset (T_ISSET)"                             shift, and go to state 58
7972    "empty (T_EMPTY)"                             shift, and go to state 59
7973    "list (T_LIST)"                               shift, and go to state 64
7974    "array (T_ARRAY)"                             shift, and go to state 65
7975    "__LINE__ (T_LINE)"                           shift, and go to state 66
7976    "__FILE__ (T_FILE)"                           shift, and go to state 67
7977    "__DIR__ (T_DIR)"                             shift, and go to state 68
7978    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
7979    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
7980    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
7981    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
7982    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
7983    "namespace (T_NAMESPACE)"                     shift, and go to state 115
7984    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
7985    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
7986    '('                                           shift, and go to state 77
7987    '`'                                           shift, and go to state 80
7988    '"'                                           shift, and go to state 81
7989    '$'                                           shift, and go to state 82
7990
7991    namespace_name              go to state 83
7992    name                        go to state 84
7993    new_expr                    go to state 97
7994    expr                        go to state 398
7995    function                    go to state 117
7996    function_call               go to state 100
7997    class_name                  go to state 101
7998    dereferencable_scalar       go to state 102
7999    scalar                      go to state 103
8000    constant                    go to state 104
8001    variable_class_name         go to state 105
8002    dereferencable              go to state 106
8003    callable_expr               go to state 107
8004    callable_variable           go to state 108
8005    variable                    go to state 109
8006    simple_variable             go to state 110
8007    static_member               go to state 111
8008    internal_functions_in_yacc  go to state 112
8009
8010
8011State 238
8012
8013  327 expr: expr "xor (T_LOGICAL_XOR)" . expr
8014
8015    "include (T_INCLUDE)"                         shift, and go to state 4
8016    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
8017    "eval (T_EVAL)"                               shift, and go to state 6
8018    "require (T_REQUIRE)"                         shift, and go to state 7
8019    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
8020    "print (T_PRINT)"                             shift, and go to state 9
8021    "yield (T_YIELD)"                             shift, and go to state 10
8022    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
8023    '+'                                           shift, and go to state 12
8024    '-'                                           shift, and go to state 13
8025    '!'                                           shift, and go to state 14
8026    '~'                                           shift, and go to state 15
8027    "++ (T_INC)"                                  shift, and go to state 16
8028    "-- (T_DEC)"                                  shift, and go to state 17
8029    "(int) (T_INT_CAST)"                          shift, and go to state 18
8030    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
8031    "(string) (T_STRING_CAST)"                    shift, and go to state 20
8032    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
8033    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
8034    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
8035    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
8036    '@'                                           shift, and go to state 25
8037    '['                                           shift, and go to state 26
8038    "new (T_NEW)"                                 shift, and go to state 27
8039    "clone (T_CLONE)"                             shift, and go to state 28
8040    "static (T_STATIC)"                           shift, and go to state 113
8041    "integer number (T_LNUMBER)"                  shift, and go to state 32
8042    "floating-point number (T_DNUMBER)"           shift, and go to state 33
8043    "identifier (T_STRING)"                       shift, and go to state 114
8044    "variable (T_VARIABLE)"                       shift, and go to state 35
8045    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
8046    "exit (T_EXIT)"                               shift, and go to state 38
8047    "function (T_FUNCTION)"                       shift, and go to state 50
8048    "isset (T_ISSET)"                             shift, and go to state 58
8049    "empty (T_EMPTY)"                             shift, and go to state 59
8050    "list (T_LIST)"                               shift, and go to state 64
8051    "array (T_ARRAY)"                             shift, and go to state 65
8052    "__LINE__ (T_LINE)"                           shift, and go to state 66
8053    "__FILE__ (T_FILE)"                           shift, and go to state 67
8054    "__DIR__ (T_DIR)"                             shift, and go to state 68
8055    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
8056    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
8057    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
8058    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
8059    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
8060    "namespace (T_NAMESPACE)"                     shift, and go to state 115
8061    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
8062    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
8063    '('                                           shift, and go to state 77
8064    '`'                                           shift, and go to state 80
8065    '"'                                           shift, and go to state 81
8066    '$'                                           shift, and go to state 82
8067
8068    namespace_name              go to state 83
8069    name                        go to state 84
8070    new_expr                    go to state 97
8071    expr                        go to state 399
8072    function                    go to state 117
8073    function_call               go to state 100
8074    class_name                  go to state 101
8075    dereferencable_scalar       go to state 102
8076    scalar                      go to state 103
8077    constant                    go to state 104
8078    variable_class_name         go to state 105
8079    dereferencable              go to state 106
8080    callable_expr               go to state 107
8081    callable_variable           go to state 108
8082    variable                    go to state 109
8083    simple_variable             go to state 110
8084    static_member               go to state 111
8085    internal_functions_in_yacc  go to state 112
8086
8087
8088State 239
8089
8090  326 expr: expr "and (T_LOGICAL_AND)" . expr
8091
8092    "include (T_INCLUDE)"                         shift, and go to state 4
8093    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
8094    "eval (T_EVAL)"                               shift, and go to state 6
8095    "require (T_REQUIRE)"                         shift, and go to state 7
8096    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
8097    "print (T_PRINT)"                             shift, and go to state 9
8098    "yield (T_YIELD)"                             shift, and go to state 10
8099    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
8100    '+'                                           shift, and go to state 12
8101    '-'                                           shift, and go to state 13
8102    '!'                                           shift, and go to state 14
8103    '~'                                           shift, and go to state 15
8104    "++ (T_INC)"                                  shift, and go to state 16
8105    "-- (T_DEC)"                                  shift, and go to state 17
8106    "(int) (T_INT_CAST)"                          shift, and go to state 18
8107    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
8108    "(string) (T_STRING_CAST)"                    shift, and go to state 20
8109    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
8110    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
8111    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
8112    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
8113    '@'                                           shift, and go to state 25
8114    '['                                           shift, and go to state 26
8115    "new (T_NEW)"                                 shift, and go to state 27
8116    "clone (T_CLONE)"                             shift, and go to state 28
8117    "static (T_STATIC)"                           shift, and go to state 113
8118    "integer number (T_LNUMBER)"                  shift, and go to state 32
8119    "floating-point number (T_DNUMBER)"           shift, and go to state 33
8120    "identifier (T_STRING)"                       shift, and go to state 114
8121    "variable (T_VARIABLE)"                       shift, and go to state 35
8122    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
8123    "exit (T_EXIT)"                               shift, and go to state 38
8124    "function (T_FUNCTION)"                       shift, and go to state 50
8125    "isset (T_ISSET)"                             shift, and go to state 58
8126    "empty (T_EMPTY)"                             shift, and go to state 59
8127    "list (T_LIST)"                               shift, and go to state 64
8128    "array (T_ARRAY)"                             shift, and go to state 65
8129    "__LINE__ (T_LINE)"                           shift, and go to state 66
8130    "__FILE__ (T_FILE)"                           shift, and go to state 67
8131    "__DIR__ (T_DIR)"                             shift, and go to state 68
8132    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
8133    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
8134    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
8135    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
8136    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
8137    "namespace (T_NAMESPACE)"                     shift, and go to state 115
8138    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
8139    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
8140    '('                                           shift, and go to state 77
8141    '`'                                           shift, and go to state 80
8142    '"'                                           shift, and go to state 81
8143    '$'                                           shift, and go to state 82
8144
8145    namespace_name              go to state 83
8146    name                        go to state 84
8147    new_expr                    go to state 97
8148    expr                        go to state 400
8149    function                    go to state 117
8150    function_call               go to state 100
8151    class_name                  go to state 101
8152    dereferencable_scalar       go to state 102
8153    scalar                      go to state 103
8154    constant                    go to state 104
8155    variable_class_name         go to state 105
8156    dereferencable              go to state 106
8157    callable_expr               go to state 107
8158    callable_variable           go to state 108
8159    variable                    go to state 109
8160    simple_variable             go to state 110
8161    static_member               go to state 111
8162    internal_functions_in_yacc  go to state 112
8163
8164
8165State 240
8166
8167  356 expr: expr '?' . expr ':' expr
8168  357     | expr '?' . ':' expr
8169
8170    "include (T_INCLUDE)"                         shift, and go to state 4
8171    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
8172    "eval (T_EVAL)"                               shift, and go to state 6
8173    "require (T_REQUIRE)"                         shift, and go to state 7
8174    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
8175    "print (T_PRINT)"                             shift, and go to state 9
8176    "yield (T_YIELD)"                             shift, and go to state 10
8177    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
8178    ':'                                           shift, and go to state 401
8179    '+'                                           shift, and go to state 12
8180    '-'                                           shift, and go to state 13
8181    '!'                                           shift, and go to state 14
8182    '~'                                           shift, and go to state 15
8183    "++ (T_INC)"                                  shift, and go to state 16
8184    "-- (T_DEC)"                                  shift, and go to state 17
8185    "(int) (T_INT_CAST)"                          shift, and go to state 18
8186    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
8187    "(string) (T_STRING_CAST)"                    shift, and go to state 20
8188    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
8189    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
8190    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
8191    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
8192    '@'                                           shift, and go to state 25
8193    '['                                           shift, and go to state 26
8194    "new (T_NEW)"                                 shift, and go to state 27
8195    "clone (T_CLONE)"                             shift, and go to state 28
8196    "static (T_STATIC)"                           shift, and go to state 113
8197    "integer number (T_LNUMBER)"                  shift, and go to state 32
8198    "floating-point number (T_DNUMBER)"           shift, and go to state 33
8199    "identifier (T_STRING)"                       shift, and go to state 114
8200    "variable (T_VARIABLE)"                       shift, and go to state 35
8201    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
8202    "exit (T_EXIT)"                               shift, and go to state 38
8203    "function (T_FUNCTION)"                       shift, and go to state 50
8204    "isset (T_ISSET)"                             shift, and go to state 58
8205    "empty (T_EMPTY)"                             shift, and go to state 59
8206    "list (T_LIST)"                               shift, and go to state 64
8207    "array (T_ARRAY)"                             shift, and go to state 65
8208    "__LINE__ (T_LINE)"                           shift, and go to state 66
8209    "__FILE__ (T_FILE)"                           shift, and go to state 67
8210    "__DIR__ (T_DIR)"                             shift, and go to state 68
8211    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
8212    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
8213    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
8214    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
8215    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
8216    "namespace (T_NAMESPACE)"                     shift, and go to state 115
8217    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
8218    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
8219    '('                                           shift, and go to state 77
8220    '`'                                           shift, and go to state 80
8221    '"'                                           shift, and go to state 81
8222    '$'                                           shift, and go to state 82
8223
8224    namespace_name              go to state 83
8225    name                        go to state 84
8226    new_expr                    go to state 97
8227    expr                        go to state 402
8228    function                    go to state 117
8229    function_call               go to state 100
8230    class_name                  go to state 101
8231    dereferencable_scalar       go to state 102
8232    scalar                      go to state 103
8233    constant                    go to state 104
8234    variable_class_name         go to state 105
8235    dereferencable              go to state 106
8236    callable_expr               go to state 107
8237    callable_variable           go to state 108
8238    variable                    go to state 109
8239    simple_variable             go to state 110
8240    static_member               go to state 111
8241    internal_functions_in_yacc  go to state 112
8242
8243
8244State 241
8245
8246  358 expr: expr "?? (T_COALESCE)" . expr
8247
8248    "include (T_INCLUDE)"                         shift, and go to state 4
8249    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
8250    "eval (T_EVAL)"                               shift, and go to state 6
8251    "require (T_REQUIRE)"                         shift, and go to state 7
8252    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
8253    "print (T_PRINT)"                             shift, and go to state 9
8254    "yield (T_YIELD)"                             shift, and go to state 10
8255    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
8256    '+'                                           shift, and go to state 12
8257    '-'                                           shift, and go to state 13
8258    '!'                                           shift, and go to state 14
8259    '~'                                           shift, and go to state 15
8260    "++ (T_INC)"                                  shift, and go to state 16
8261    "-- (T_DEC)"                                  shift, and go to state 17
8262    "(int) (T_INT_CAST)"                          shift, and go to state 18
8263    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
8264    "(string) (T_STRING_CAST)"                    shift, and go to state 20
8265    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
8266    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
8267    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
8268    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
8269    '@'                                           shift, and go to state 25
8270    '['                                           shift, and go to state 26
8271    "new (T_NEW)"                                 shift, and go to state 27
8272    "clone (T_CLONE)"                             shift, and go to state 28
8273    "static (T_STATIC)"                           shift, and go to state 113
8274    "integer number (T_LNUMBER)"                  shift, and go to state 32
8275    "floating-point number (T_DNUMBER)"           shift, and go to state 33
8276    "identifier (T_STRING)"                       shift, and go to state 114
8277    "variable (T_VARIABLE)"                       shift, and go to state 35
8278    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
8279    "exit (T_EXIT)"                               shift, and go to state 38
8280    "function (T_FUNCTION)"                       shift, and go to state 50
8281    "isset (T_ISSET)"                             shift, and go to state 58
8282    "empty (T_EMPTY)"                             shift, and go to state 59
8283    "list (T_LIST)"                               shift, and go to state 64
8284    "array (T_ARRAY)"                             shift, and go to state 65
8285    "__LINE__ (T_LINE)"                           shift, and go to state 66
8286    "__FILE__ (T_FILE)"                           shift, and go to state 67
8287    "__DIR__ (T_DIR)"                             shift, and go to state 68
8288    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
8289    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
8290    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
8291    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
8292    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
8293    "namespace (T_NAMESPACE)"                     shift, and go to state 115
8294    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
8295    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
8296    '('                                           shift, and go to state 77
8297    '`'                                           shift, and go to state 80
8298    '"'                                           shift, and go to state 81
8299    '$'                                           shift, and go to state 82
8300
8301    namespace_name              go to state 83
8302    name                        go to state 84
8303    new_expr                    go to state 97
8304    expr                        go to state 403
8305    function                    go to state 117
8306    function_call               go to state 100
8307    class_name                  go to state 101
8308    dereferencable_scalar       go to state 102
8309    scalar                      go to state 103
8310    constant                    go to state 104
8311    variable_class_name         go to state 105
8312    dereferencable              go to state 106
8313    callable_expr               go to state 107
8314    callable_variable           go to state 108
8315    variable                    go to state 109
8316    simple_variable             go to state 110
8317    static_member               go to state 111
8318    internal_functions_in_yacc  go to state 112
8319
8320
8321State 242
8322
8323  323 expr: expr "|| (T_BOOLEAN_OR)" . expr
8324
8325    "include (T_INCLUDE)"                         shift, and go to state 4
8326    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
8327    "eval (T_EVAL)"                               shift, and go to state 6
8328    "require (T_REQUIRE)"                         shift, and go to state 7
8329    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
8330    "print (T_PRINT)"                             shift, and go to state 9
8331    "yield (T_YIELD)"                             shift, and go to state 10
8332    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
8333    '+'                                           shift, and go to state 12
8334    '-'                                           shift, and go to state 13
8335    '!'                                           shift, and go to state 14
8336    '~'                                           shift, and go to state 15
8337    "++ (T_INC)"                                  shift, and go to state 16
8338    "-- (T_DEC)"                                  shift, and go to state 17
8339    "(int) (T_INT_CAST)"                          shift, and go to state 18
8340    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
8341    "(string) (T_STRING_CAST)"                    shift, and go to state 20
8342    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
8343    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
8344    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
8345    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
8346    '@'                                           shift, and go to state 25
8347    '['                                           shift, and go to state 26
8348    "new (T_NEW)"                                 shift, and go to state 27
8349    "clone (T_CLONE)"                             shift, and go to state 28
8350    "static (T_STATIC)"                           shift, and go to state 113
8351    "integer number (T_LNUMBER)"                  shift, and go to state 32
8352    "floating-point number (T_DNUMBER)"           shift, and go to state 33
8353    "identifier (T_STRING)"                       shift, and go to state 114
8354    "variable (T_VARIABLE)"                       shift, and go to state 35
8355    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
8356    "exit (T_EXIT)"                               shift, and go to state 38
8357    "function (T_FUNCTION)"                       shift, and go to state 50
8358    "isset (T_ISSET)"                             shift, and go to state 58
8359    "empty (T_EMPTY)"                             shift, and go to state 59
8360    "list (T_LIST)"                               shift, and go to state 64
8361    "array (T_ARRAY)"                             shift, and go to state 65
8362    "__LINE__ (T_LINE)"                           shift, and go to state 66
8363    "__FILE__ (T_FILE)"                           shift, and go to state 67
8364    "__DIR__ (T_DIR)"                             shift, and go to state 68
8365    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
8366    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
8367    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
8368    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
8369    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
8370    "namespace (T_NAMESPACE)"                     shift, and go to state 115
8371    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
8372    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
8373    '('                                           shift, and go to state 77
8374    '`'                                           shift, and go to state 80
8375    '"'                                           shift, and go to state 81
8376    '$'                                           shift, and go to state 82
8377
8378    namespace_name              go to state 83
8379    name                        go to state 84
8380    new_expr                    go to state 97
8381    expr                        go to state 404
8382    function                    go to state 117
8383    function_call               go to state 100
8384    class_name                  go to state 101
8385    dereferencable_scalar       go to state 102
8386    scalar                      go to state 103
8387    constant                    go to state 104
8388    variable_class_name         go to state 105
8389    dereferencable              go to state 106
8390    callable_expr               go to state 107
8391    callable_variable           go to state 108
8392    variable                    go to state 109
8393    simple_variable             go to state 110
8394    static_member               go to state 111
8395    internal_functions_in_yacc  go to state 112
8396
8397
8398State 243
8399
8400  324 expr: expr "&& (T_BOOLEAN_AND)" . expr
8401
8402    "include (T_INCLUDE)"                         shift, and go to state 4
8403    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
8404    "eval (T_EVAL)"                               shift, and go to state 6
8405    "require (T_REQUIRE)"                         shift, and go to state 7
8406    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
8407    "print (T_PRINT)"                             shift, and go to state 9
8408    "yield (T_YIELD)"                             shift, and go to state 10
8409    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
8410    '+'                                           shift, and go to state 12
8411    '-'                                           shift, and go to state 13
8412    '!'                                           shift, and go to state 14
8413    '~'                                           shift, and go to state 15
8414    "++ (T_INC)"                                  shift, and go to state 16
8415    "-- (T_DEC)"                                  shift, and go to state 17
8416    "(int) (T_INT_CAST)"                          shift, and go to state 18
8417    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
8418    "(string) (T_STRING_CAST)"                    shift, and go to state 20
8419    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
8420    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
8421    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
8422    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
8423    '@'                                           shift, and go to state 25
8424    '['                                           shift, and go to state 26
8425    "new (T_NEW)"                                 shift, and go to state 27
8426    "clone (T_CLONE)"                             shift, and go to state 28
8427    "static (T_STATIC)"                           shift, and go to state 113
8428    "integer number (T_LNUMBER)"                  shift, and go to state 32
8429    "floating-point number (T_DNUMBER)"           shift, and go to state 33
8430    "identifier (T_STRING)"                       shift, and go to state 114
8431    "variable (T_VARIABLE)"                       shift, and go to state 35
8432    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
8433    "exit (T_EXIT)"                               shift, and go to state 38
8434    "function (T_FUNCTION)"                       shift, and go to state 50
8435    "isset (T_ISSET)"                             shift, and go to state 58
8436    "empty (T_EMPTY)"                             shift, and go to state 59
8437    "list (T_LIST)"                               shift, and go to state 64
8438    "array (T_ARRAY)"                             shift, and go to state 65
8439    "__LINE__ (T_LINE)"                           shift, and go to state 66
8440    "__FILE__ (T_FILE)"                           shift, and go to state 67
8441    "__DIR__ (T_DIR)"                             shift, and go to state 68
8442    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
8443    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
8444    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
8445    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
8446    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
8447    "namespace (T_NAMESPACE)"                     shift, and go to state 115
8448    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
8449    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
8450    '('                                           shift, and go to state 77
8451    '`'                                           shift, and go to state 80
8452    '"'                                           shift, and go to state 81
8453    '$'                                           shift, and go to state 82
8454
8455    namespace_name              go to state 83
8456    name                        go to state 84
8457    new_expr                    go to state 97
8458    expr                        go to state 405
8459    function                    go to state 117
8460    function_call               go to state 100
8461    class_name                  go to state 101
8462    dereferencable_scalar       go to state 102
8463    scalar                      go to state 103
8464    constant                    go to state 104
8465    variable_class_name         go to state 105
8466    dereferencable              go to state 106
8467    callable_expr               go to state 107
8468    callable_variable           go to state 108
8469    variable                    go to state 109
8470    simple_variable             go to state 110
8471    static_member               go to state 111
8472    internal_functions_in_yacc  go to state 112
8473
8474
8475State 244
8476
8477  328 expr: expr '|' . expr
8478
8479    "include (T_INCLUDE)"                         shift, and go to state 4
8480    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
8481    "eval (T_EVAL)"                               shift, and go to state 6
8482    "require (T_REQUIRE)"                         shift, and go to state 7
8483    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
8484    "print (T_PRINT)"                             shift, and go to state 9
8485    "yield (T_YIELD)"                             shift, and go to state 10
8486    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
8487    '+'                                           shift, and go to state 12
8488    '-'                                           shift, and go to state 13
8489    '!'                                           shift, and go to state 14
8490    '~'                                           shift, and go to state 15
8491    "++ (T_INC)"                                  shift, and go to state 16
8492    "-- (T_DEC)"                                  shift, and go to state 17
8493    "(int) (T_INT_CAST)"                          shift, and go to state 18
8494    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
8495    "(string) (T_STRING_CAST)"                    shift, and go to state 20
8496    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
8497    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
8498    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
8499    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
8500    '@'                                           shift, and go to state 25
8501    '['                                           shift, and go to state 26
8502    "new (T_NEW)"                                 shift, and go to state 27
8503    "clone (T_CLONE)"                             shift, and go to state 28
8504    "static (T_STATIC)"                           shift, and go to state 113
8505    "integer number (T_LNUMBER)"                  shift, and go to state 32
8506    "floating-point number (T_DNUMBER)"           shift, and go to state 33
8507    "identifier (T_STRING)"                       shift, and go to state 114
8508    "variable (T_VARIABLE)"                       shift, and go to state 35
8509    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
8510    "exit (T_EXIT)"                               shift, and go to state 38
8511    "function (T_FUNCTION)"                       shift, and go to state 50
8512    "isset (T_ISSET)"                             shift, and go to state 58
8513    "empty (T_EMPTY)"                             shift, and go to state 59
8514    "list (T_LIST)"                               shift, and go to state 64
8515    "array (T_ARRAY)"                             shift, and go to state 65
8516    "__LINE__ (T_LINE)"                           shift, and go to state 66
8517    "__FILE__ (T_FILE)"                           shift, and go to state 67
8518    "__DIR__ (T_DIR)"                             shift, and go to state 68
8519    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
8520    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
8521    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
8522    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
8523    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
8524    "namespace (T_NAMESPACE)"                     shift, and go to state 115
8525    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
8526    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
8527    '('                                           shift, and go to state 77
8528    '`'                                           shift, and go to state 80
8529    '"'                                           shift, and go to state 81
8530    '$'                                           shift, and go to state 82
8531
8532    namespace_name              go to state 83
8533    name                        go to state 84
8534    new_expr                    go to state 97
8535    expr                        go to state 406
8536    function                    go to state 117
8537    function_call               go to state 100
8538    class_name                  go to state 101
8539    dereferencable_scalar       go to state 102
8540    scalar                      go to state 103
8541    constant                    go to state 104
8542    variable_class_name         go to state 105
8543    dereferencable              go to state 106
8544    callable_expr               go to state 107
8545    callable_variable           go to state 108
8546    variable                    go to state 109
8547    simple_variable             go to state 110
8548    static_member               go to state 111
8549    internal_functions_in_yacc  go to state 112
8550
8551
8552State 245
8553
8554  330 expr: expr '^' . expr
8555
8556    "include (T_INCLUDE)"                         shift, and go to state 4
8557    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
8558    "eval (T_EVAL)"                               shift, and go to state 6
8559    "require (T_REQUIRE)"                         shift, and go to state 7
8560    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
8561    "print (T_PRINT)"                             shift, and go to state 9
8562    "yield (T_YIELD)"                             shift, and go to state 10
8563    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
8564    '+'                                           shift, and go to state 12
8565    '-'                                           shift, and go to state 13
8566    '!'                                           shift, and go to state 14
8567    '~'                                           shift, and go to state 15
8568    "++ (T_INC)"                                  shift, and go to state 16
8569    "-- (T_DEC)"                                  shift, and go to state 17
8570    "(int) (T_INT_CAST)"                          shift, and go to state 18
8571    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
8572    "(string) (T_STRING_CAST)"                    shift, and go to state 20
8573    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
8574    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
8575    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
8576    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
8577    '@'                                           shift, and go to state 25
8578    '['                                           shift, and go to state 26
8579    "new (T_NEW)"                                 shift, and go to state 27
8580    "clone (T_CLONE)"                             shift, and go to state 28
8581    "static (T_STATIC)"                           shift, and go to state 113
8582    "integer number (T_LNUMBER)"                  shift, and go to state 32
8583    "floating-point number (T_DNUMBER)"           shift, and go to state 33
8584    "identifier (T_STRING)"                       shift, and go to state 114
8585    "variable (T_VARIABLE)"                       shift, and go to state 35
8586    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
8587    "exit (T_EXIT)"                               shift, and go to state 38
8588    "function (T_FUNCTION)"                       shift, and go to state 50
8589    "isset (T_ISSET)"                             shift, and go to state 58
8590    "empty (T_EMPTY)"                             shift, and go to state 59
8591    "list (T_LIST)"                               shift, and go to state 64
8592    "array (T_ARRAY)"                             shift, and go to state 65
8593    "__LINE__ (T_LINE)"                           shift, and go to state 66
8594    "__FILE__ (T_FILE)"                           shift, and go to state 67
8595    "__DIR__ (T_DIR)"                             shift, and go to state 68
8596    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
8597    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
8598    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
8599    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
8600    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
8601    "namespace (T_NAMESPACE)"                     shift, and go to state 115
8602    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
8603    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
8604    '('                                           shift, and go to state 77
8605    '`'                                           shift, and go to state 80
8606    '"'                                           shift, and go to state 81
8607    '$'                                           shift, and go to state 82
8608
8609    namespace_name              go to state 83
8610    name                        go to state 84
8611    new_expr                    go to state 97
8612    expr                        go to state 407
8613    function                    go to state 117
8614    function_call               go to state 100
8615    class_name                  go to state 101
8616    dereferencable_scalar       go to state 102
8617    scalar                      go to state 103
8618    constant                    go to state 104
8619    variable_class_name         go to state 105
8620    dereferencable              go to state 106
8621    callable_expr               go to state 107
8622    callable_variable           go to state 108
8623    variable                    go to state 109
8624    simple_variable             go to state 110
8625    static_member               go to state 111
8626    internal_functions_in_yacc  go to state 112
8627
8628
8629State 246
8630
8631  329 expr: expr '&' . expr
8632
8633    "include (T_INCLUDE)"                         shift, and go to state 4
8634    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
8635    "eval (T_EVAL)"                               shift, and go to state 6
8636    "require (T_REQUIRE)"                         shift, and go to state 7
8637    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
8638    "print (T_PRINT)"                             shift, and go to state 9
8639    "yield (T_YIELD)"                             shift, and go to state 10
8640    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
8641    '+'                                           shift, and go to state 12
8642    '-'                                           shift, and go to state 13
8643    '!'                                           shift, and go to state 14
8644    '~'                                           shift, and go to state 15
8645    "++ (T_INC)"                                  shift, and go to state 16
8646    "-- (T_DEC)"                                  shift, and go to state 17
8647    "(int) (T_INT_CAST)"                          shift, and go to state 18
8648    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
8649    "(string) (T_STRING_CAST)"                    shift, and go to state 20
8650    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
8651    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
8652    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
8653    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
8654    '@'                                           shift, and go to state 25
8655    '['                                           shift, and go to state 26
8656    "new (T_NEW)"                                 shift, and go to state 27
8657    "clone (T_CLONE)"                             shift, and go to state 28
8658    "static (T_STATIC)"                           shift, and go to state 113
8659    "integer number (T_LNUMBER)"                  shift, and go to state 32
8660    "floating-point number (T_DNUMBER)"           shift, and go to state 33
8661    "identifier (T_STRING)"                       shift, and go to state 114
8662    "variable (T_VARIABLE)"                       shift, and go to state 35
8663    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
8664    "exit (T_EXIT)"                               shift, and go to state 38
8665    "function (T_FUNCTION)"                       shift, and go to state 50
8666    "isset (T_ISSET)"                             shift, and go to state 58
8667    "empty (T_EMPTY)"                             shift, and go to state 59
8668    "list (T_LIST)"                               shift, and go to state 64
8669    "array (T_ARRAY)"                             shift, and go to state 65
8670    "__LINE__ (T_LINE)"                           shift, and go to state 66
8671    "__FILE__ (T_FILE)"                           shift, and go to state 67
8672    "__DIR__ (T_DIR)"                             shift, and go to state 68
8673    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
8674    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
8675    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
8676    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
8677    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
8678    "namespace (T_NAMESPACE)"                     shift, and go to state 115
8679    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
8680    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
8681    '('                                           shift, and go to state 77
8682    '`'                                           shift, and go to state 80
8683    '"'                                           shift, and go to state 81
8684    '$'                                           shift, and go to state 82
8685
8686    namespace_name              go to state 83
8687    name                        go to state 84
8688    new_expr                    go to state 97
8689    expr                        go to state 408
8690    function                    go to state 117
8691    function_call               go to state 100
8692    class_name                  go to state 101
8693    dereferencable_scalar       go to state 102
8694    scalar                      go to state 103
8695    constant                    go to state 104
8696    variable_class_name         go to state 105
8697    dereferencable              go to state 106
8698    callable_expr               go to state 107
8699    callable_variable           go to state 108
8700    variable                    go to state 109
8701    simple_variable             go to state 110
8702    static_member               go to state 111
8703    internal_functions_in_yacc  go to state 112
8704
8705
8706State 247
8707
8708  346 expr: expr "== (T_IS_EQUAL)" . expr
8709
8710    "include (T_INCLUDE)"                         shift, and go to state 4
8711    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
8712    "eval (T_EVAL)"                               shift, and go to state 6
8713    "require (T_REQUIRE)"                         shift, and go to state 7
8714    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
8715    "print (T_PRINT)"                             shift, and go to state 9
8716    "yield (T_YIELD)"                             shift, and go to state 10
8717    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
8718    '+'                                           shift, and go to state 12
8719    '-'                                           shift, and go to state 13
8720    '!'                                           shift, and go to state 14
8721    '~'                                           shift, and go to state 15
8722    "++ (T_INC)"                                  shift, and go to state 16
8723    "-- (T_DEC)"                                  shift, and go to state 17
8724    "(int) (T_INT_CAST)"                          shift, and go to state 18
8725    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
8726    "(string) (T_STRING_CAST)"                    shift, and go to state 20
8727    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
8728    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
8729    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
8730    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
8731    '@'                                           shift, and go to state 25
8732    '['                                           shift, and go to state 26
8733    "new (T_NEW)"                                 shift, and go to state 27
8734    "clone (T_CLONE)"                             shift, and go to state 28
8735    "static (T_STATIC)"                           shift, and go to state 113
8736    "integer number (T_LNUMBER)"                  shift, and go to state 32
8737    "floating-point number (T_DNUMBER)"           shift, and go to state 33
8738    "identifier (T_STRING)"                       shift, and go to state 114
8739    "variable (T_VARIABLE)"                       shift, and go to state 35
8740    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
8741    "exit (T_EXIT)"                               shift, and go to state 38
8742    "function (T_FUNCTION)"                       shift, and go to state 50
8743    "isset (T_ISSET)"                             shift, and go to state 58
8744    "empty (T_EMPTY)"                             shift, and go to state 59
8745    "list (T_LIST)"                               shift, and go to state 64
8746    "array (T_ARRAY)"                             shift, and go to state 65
8747    "__LINE__ (T_LINE)"                           shift, and go to state 66
8748    "__FILE__ (T_FILE)"                           shift, and go to state 67
8749    "__DIR__ (T_DIR)"                             shift, and go to state 68
8750    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
8751    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
8752    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
8753    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
8754    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
8755    "namespace (T_NAMESPACE)"                     shift, and go to state 115
8756    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
8757    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
8758    '('                                           shift, and go to state 77
8759    '`'                                           shift, and go to state 80
8760    '"'                                           shift, and go to state 81
8761    '$'                                           shift, and go to state 82
8762
8763    namespace_name              go to state 83
8764    name                        go to state 84
8765    new_expr                    go to state 97
8766    expr                        go to state 409
8767    function                    go to state 117
8768    function_call               go to state 100
8769    class_name                  go to state 101
8770    dereferencable_scalar       go to state 102
8771    scalar                      go to state 103
8772    constant                    go to state 104
8773    variable_class_name         go to state 105
8774    dereferencable              go to state 106
8775    callable_expr               go to state 107
8776    callable_variable           go to state 108
8777    variable                    go to state 109
8778    simple_variable             go to state 110
8779    static_member               go to state 111
8780    internal_functions_in_yacc  go to state 112
8781
8782
8783State 248
8784
8785  347 expr: expr "!= (T_IS_NOT_EQUAL)" . expr
8786
8787    "include (T_INCLUDE)"                         shift, and go to state 4
8788    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
8789    "eval (T_EVAL)"                               shift, and go to state 6
8790    "require (T_REQUIRE)"                         shift, and go to state 7
8791    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
8792    "print (T_PRINT)"                             shift, and go to state 9
8793    "yield (T_YIELD)"                             shift, and go to state 10
8794    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
8795    '+'                                           shift, and go to state 12
8796    '-'                                           shift, and go to state 13
8797    '!'                                           shift, and go to state 14
8798    '~'                                           shift, and go to state 15
8799    "++ (T_INC)"                                  shift, and go to state 16
8800    "-- (T_DEC)"                                  shift, and go to state 17
8801    "(int) (T_INT_CAST)"                          shift, and go to state 18
8802    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
8803    "(string) (T_STRING_CAST)"                    shift, and go to state 20
8804    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
8805    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
8806    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
8807    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
8808    '@'                                           shift, and go to state 25
8809    '['                                           shift, and go to state 26
8810    "new (T_NEW)"                                 shift, and go to state 27
8811    "clone (T_CLONE)"                             shift, and go to state 28
8812    "static (T_STATIC)"                           shift, and go to state 113
8813    "integer number (T_LNUMBER)"                  shift, and go to state 32
8814    "floating-point number (T_DNUMBER)"           shift, and go to state 33
8815    "identifier (T_STRING)"                       shift, and go to state 114
8816    "variable (T_VARIABLE)"                       shift, and go to state 35
8817    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
8818    "exit (T_EXIT)"                               shift, and go to state 38
8819    "function (T_FUNCTION)"                       shift, and go to state 50
8820    "isset (T_ISSET)"                             shift, and go to state 58
8821    "empty (T_EMPTY)"                             shift, and go to state 59
8822    "list (T_LIST)"                               shift, and go to state 64
8823    "array (T_ARRAY)"                             shift, and go to state 65
8824    "__LINE__ (T_LINE)"                           shift, and go to state 66
8825    "__FILE__ (T_FILE)"                           shift, and go to state 67
8826    "__DIR__ (T_DIR)"                             shift, and go to state 68
8827    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
8828    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
8829    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
8830    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
8831    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
8832    "namespace (T_NAMESPACE)"                     shift, and go to state 115
8833    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
8834    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
8835    '('                                           shift, and go to state 77
8836    '`'                                           shift, and go to state 80
8837    '"'                                           shift, and go to state 81
8838    '$'                                           shift, and go to state 82
8839
8840    namespace_name              go to state 83
8841    name                        go to state 84
8842    new_expr                    go to state 97
8843    expr                        go to state 410
8844    function                    go to state 117
8845    function_call               go to state 100
8846    class_name                  go to state 101
8847    dereferencable_scalar       go to state 102
8848    scalar                      go to state 103
8849    constant                    go to state 104
8850    variable_class_name         go to state 105
8851    dereferencable              go to state 106
8852    callable_expr               go to state 107
8853    callable_variable           go to state 108
8854    variable                    go to state 109
8855    simple_variable             go to state 110
8856    static_member               go to state 111
8857    internal_functions_in_yacc  go to state 112
8858
8859
8860State 249
8861
8862  344 expr: expr "=== (T_IS_IDENTICAL)" . expr
8863
8864    "include (T_INCLUDE)"                         shift, and go to state 4
8865    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
8866    "eval (T_EVAL)"                               shift, and go to state 6
8867    "require (T_REQUIRE)"                         shift, and go to state 7
8868    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
8869    "print (T_PRINT)"                             shift, and go to state 9
8870    "yield (T_YIELD)"                             shift, and go to state 10
8871    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
8872    '+'                                           shift, and go to state 12
8873    '-'                                           shift, and go to state 13
8874    '!'                                           shift, and go to state 14
8875    '~'                                           shift, and go to state 15
8876    "++ (T_INC)"                                  shift, and go to state 16
8877    "-- (T_DEC)"                                  shift, and go to state 17
8878    "(int) (T_INT_CAST)"                          shift, and go to state 18
8879    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
8880    "(string) (T_STRING_CAST)"                    shift, and go to state 20
8881    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
8882    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
8883    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
8884    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
8885    '@'                                           shift, and go to state 25
8886    '['                                           shift, and go to state 26
8887    "new (T_NEW)"                                 shift, and go to state 27
8888    "clone (T_CLONE)"                             shift, and go to state 28
8889    "static (T_STATIC)"                           shift, and go to state 113
8890    "integer number (T_LNUMBER)"                  shift, and go to state 32
8891    "floating-point number (T_DNUMBER)"           shift, and go to state 33
8892    "identifier (T_STRING)"                       shift, and go to state 114
8893    "variable (T_VARIABLE)"                       shift, and go to state 35
8894    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
8895    "exit (T_EXIT)"                               shift, and go to state 38
8896    "function (T_FUNCTION)"                       shift, and go to state 50
8897    "isset (T_ISSET)"                             shift, and go to state 58
8898    "empty (T_EMPTY)"                             shift, and go to state 59
8899    "list (T_LIST)"                               shift, and go to state 64
8900    "array (T_ARRAY)"                             shift, and go to state 65
8901    "__LINE__ (T_LINE)"                           shift, and go to state 66
8902    "__FILE__ (T_FILE)"                           shift, and go to state 67
8903    "__DIR__ (T_DIR)"                             shift, and go to state 68
8904    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
8905    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
8906    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
8907    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
8908    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
8909    "namespace (T_NAMESPACE)"                     shift, and go to state 115
8910    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
8911    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
8912    '('                                           shift, and go to state 77
8913    '`'                                           shift, and go to state 80
8914    '"'                                           shift, and go to state 81
8915    '$'                                           shift, and go to state 82
8916
8917    namespace_name              go to state 83
8918    name                        go to state 84
8919    new_expr                    go to state 97
8920    expr                        go to state 411
8921    function                    go to state 117
8922    function_call               go to state 100
8923    class_name                  go to state 101
8924    dereferencable_scalar       go to state 102
8925    scalar                      go to state 103
8926    constant                    go to state 104
8927    variable_class_name         go to state 105
8928    dereferencable              go to state 106
8929    callable_expr               go to state 107
8930    callable_variable           go to state 108
8931    variable                    go to state 109
8932    simple_variable             go to state 110
8933    static_member               go to state 111
8934    internal_functions_in_yacc  go to state 112
8935
8936
8937State 250
8938
8939  345 expr: expr "!== (T_IS_NOT_IDENTICAL)" . expr
8940
8941    "include (T_INCLUDE)"                         shift, and go to state 4
8942    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
8943    "eval (T_EVAL)"                               shift, and go to state 6
8944    "require (T_REQUIRE)"                         shift, and go to state 7
8945    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
8946    "print (T_PRINT)"                             shift, and go to state 9
8947    "yield (T_YIELD)"                             shift, and go to state 10
8948    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
8949    '+'                                           shift, and go to state 12
8950    '-'                                           shift, and go to state 13
8951    '!'                                           shift, and go to state 14
8952    '~'                                           shift, and go to state 15
8953    "++ (T_INC)"                                  shift, and go to state 16
8954    "-- (T_DEC)"                                  shift, and go to state 17
8955    "(int) (T_INT_CAST)"                          shift, and go to state 18
8956    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
8957    "(string) (T_STRING_CAST)"                    shift, and go to state 20
8958    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
8959    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
8960    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
8961    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
8962    '@'                                           shift, and go to state 25
8963    '['                                           shift, and go to state 26
8964    "new (T_NEW)"                                 shift, and go to state 27
8965    "clone (T_CLONE)"                             shift, and go to state 28
8966    "static (T_STATIC)"                           shift, and go to state 113
8967    "integer number (T_LNUMBER)"                  shift, and go to state 32
8968    "floating-point number (T_DNUMBER)"           shift, and go to state 33
8969    "identifier (T_STRING)"                       shift, and go to state 114
8970    "variable (T_VARIABLE)"                       shift, and go to state 35
8971    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
8972    "exit (T_EXIT)"                               shift, and go to state 38
8973    "function (T_FUNCTION)"                       shift, and go to state 50
8974    "isset (T_ISSET)"                             shift, and go to state 58
8975    "empty (T_EMPTY)"                             shift, and go to state 59
8976    "list (T_LIST)"                               shift, and go to state 64
8977    "array (T_ARRAY)"                             shift, and go to state 65
8978    "__LINE__ (T_LINE)"                           shift, and go to state 66
8979    "__FILE__ (T_FILE)"                           shift, and go to state 67
8980    "__DIR__ (T_DIR)"                             shift, and go to state 68
8981    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
8982    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
8983    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
8984    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
8985    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
8986    "namespace (T_NAMESPACE)"                     shift, and go to state 115
8987    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
8988    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
8989    '('                                           shift, and go to state 77
8990    '`'                                           shift, and go to state 80
8991    '"'                                           shift, and go to state 81
8992    '$'                                           shift, and go to state 82
8993
8994    namespace_name              go to state 83
8995    name                        go to state 84
8996    new_expr                    go to state 97
8997    expr                        go to state 412
8998    function                    go to state 117
8999    function_call               go to state 100
9000    class_name                  go to state 101
9001    dereferencable_scalar       go to state 102
9002    scalar                      go to state 103
9003    constant                    go to state 104
9004    variable_class_name         go to state 105
9005    dereferencable              go to state 106
9006    callable_expr               go to state 107
9007    callable_variable           go to state 108
9008    variable                    go to state 109
9009    simple_variable             go to state 110
9010    static_member               go to state 111
9011    internal_functions_in_yacc  go to state 112
9012
9013
9014State 251
9015
9016  352 expr: expr "<=> (T_SPACESHIP)" . expr
9017
9018    "include (T_INCLUDE)"                         shift, and go to state 4
9019    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
9020    "eval (T_EVAL)"                               shift, and go to state 6
9021    "require (T_REQUIRE)"                         shift, and go to state 7
9022    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
9023    "print (T_PRINT)"                             shift, and go to state 9
9024    "yield (T_YIELD)"                             shift, and go to state 10
9025    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
9026    '+'                                           shift, and go to state 12
9027    '-'                                           shift, and go to state 13
9028    '!'                                           shift, and go to state 14
9029    '~'                                           shift, and go to state 15
9030    "++ (T_INC)"                                  shift, and go to state 16
9031    "-- (T_DEC)"                                  shift, and go to state 17
9032    "(int) (T_INT_CAST)"                          shift, and go to state 18
9033    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
9034    "(string) (T_STRING_CAST)"                    shift, and go to state 20
9035    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
9036    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
9037    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
9038    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
9039    '@'                                           shift, and go to state 25
9040    '['                                           shift, and go to state 26
9041    "new (T_NEW)"                                 shift, and go to state 27
9042    "clone (T_CLONE)"                             shift, and go to state 28
9043    "static (T_STATIC)"                           shift, and go to state 113
9044    "integer number (T_LNUMBER)"                  shift, and go to state 32
9045    "floating-point number (T_DNUMBER)"           shift, and go to state 33
9046    "identifier (T_STRING)"                       shift, and go to state 114
9047    "variable (T_VARIABLE)"                       shift, and go to state 35
9048    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
9049    "exit (T_EXIT)"                               shift, and go to state 38
9050    "function (T_FUNCTION)"                       shift, and go to state 50
9051    "isset (T_ISSET)"                             shift, and go to state 58
9052    "empty (T_EMPTY)"                             shift, and go to state 59
9053    "list (T_LIST)"                               shift, and go to state 64
9054    "array (T_ARRAY)"                             shift, and go to state 65
9055    "__LINE__ (T_LINE)"                           shift, and go to state 66
9056    "__FILE__ (T_FILE)"                           shift, and go to state 67
9057    "__DIR__ (T_DIR)"                             shift, and go to state 68
9058    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
9059    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
9060    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
9061    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
9062    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
9063    "namespace (T_NAMESPACE)"                     shift, and go to state 115
9064    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
9065    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
9066    '('                                           shift, and go to state 77
9067    '`'                                           shift, and go to state 80
9068    '"'                                           shift, and go to state 81
9069    '$'                                           shift, and go to state 82
9070
9071    namespace_name              go to state 83
9072    name                        go to state 84
9073    new_expr                    go to state 97
9074    expr                        go to state 413
9075    function                    go to state 117
9076    function_call               go to state 100
9077    class_name                  go to state 101
9078    dereferencable_scalar       go to state 102
9079    scalar                      go to state 103
9080    constant                    go to state 104
9081    variable_class_name         go to state 105
9082    dereferencable              go to state 106
9083    callable_expr               go to state 107
9084    callable_variable           go to state 108
9085    variable                    go to state 109
9086    simple_variable             go to state 110
9087    static_member               go to state 111
9088    internal_functions_in_yacc  go to state 112
9089
9090
9091State 252
9092
9093  348 expr: expr '<' . expr
9094
9095    "include (T_INCLUDE)"                         shift, and go to state 4
9096    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
9097    "eval (T_EVAL)"                               shift, and go to state 6
9098    "require (T_REQUIRE)"                         shift, and go to state 7
9099    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
9100    "print (T_PRINT)"                             shift, and go to state 9
9101    "yield (T_YIELD)"                             shift, and go to state 10
9102    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
9103    '+'                                           shift, and go to state 12
9104    '-'                                           shift, and go to state 13
9105    '!'                                           shift, and go to state 14
9106    '~'                                           shift, and go to state 15
9107    "++ (T_INC)"                                  shift, and go to state 16
9108    "-- (T_DEC)"                                  shift, and go to state 17
9109    "(int) (T_INT_CAST)"                          shift, and go to state 18
9110    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
9111    "(string) (T_STRING_CAST)"                    shift, and go to state 20
9112    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
9113    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
9114    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
9115    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
9116    '@'                                           shift, and go to state 25
9117    '['                                           shift, and go to state 26
9118    "new (T_NEW)"                                 shift, and go to state 27
9119    "clone (T_CLONE)"                             shift, and go to state 28
9120    "static (T_STATIC)"                           shift, and go to state 113
9121    "integer number (T_LNUMBER)"                  shift, and go to state 32
9122    "floating-point number (T_DNUMBER)"           shift, and go to state 33
9123    "identifier (T_STRING)"                       shift, and go to state 114
9124    "variable (T_VARIABLE)"                       shift, and go to state 35
9125    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
9126    "exit (T_EXIT)"                               shift, and go to state 38
9127    "function (T_FUNCTION)"                       shift, and go to state 50
9128    "isset (T_ISSET)"                             shift, and go to state 58
9129    "empty (T_EMPTY)"                             shift, and go to state 59
9130    "list (T_LIST)"                               shift, and go to state 64
9131    "array (T_ARRAY)"                             shift, and go to state 65
9132    "__LINE__ (T_LINE)"                           shift, and go to state 66
9133    "__FILE__ (T_FILE)"                           shift, and go to state 67
9134    "__DIR__ (T_DIR)"                             shift, and go to state 68
9135    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
9136    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
9137    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
9138    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
9139    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
9140    "namespace (T_NAMESPACE)"                     shift, and go to state 115
9141    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
9142    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
9143    '('                                           shift, and go to state 77
9144    '`'                                           shift, and go to state 80
9145    '"'                                           shift, and go to state 81
9146    '$'                                           shift, and go to state 82
9147
9148    namespace_name              go to state 83
9149    name                        go to state 84
9150    new_expr                    go to state 97
9151    expr                        go to state 414
9152    function                    go to state 117
9153    function_call               go to state 100
9154    class_name                  go to state 101
9155    dereferencable_scalar       go to state 102
9156    scalar                      go to state 103
9157    constant                    go to state 104
9158    variable_class_name         go to state 105
9159    dereferencable              go to state 106
9160    callable_expr               go to state 107
9161    callable_variable           go to state 108
9162    variable                    go to state 109
9163    simple_variable             go to state 110
9164    static_member               go to state 111
9165    internal_functions_in_yacc  go to state 112
9166
9167
9168State 253
9169
9170  349 expr: expr "<= (T_IS_SMALLER_OR_EQUAL)" . expr
9171
9172    "include (T_INCLUDE)"                         shift, and go to state 4
9173    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
9174    "eval (T_EVAL)"                               shift, and go to state 6
9175    "require (T_REQUIRE)"                         shift, and go to state 7
9176    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
9177    "print (T_PRINT)"                             shift, and go to state 9
9178    "yield (T_YIELD)"                             shift, and go to state 10
9179    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
9180    '+'                                           shift, and go to state 12
9181    '-'                                           shift, and go to state 13
9182    '!'                                           shift, and go to state 14
9183    '~'                                           shift, and go to state 15
9184    "++ (T_INC)"                                  shift, and go to state 16
9185    "-- (T_DEC)"                                  shift, and go to state 17
9186    "(int) (T_INT_CAST)"                          shift, and go to state 18
9187    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
9188    "(string) (T_STRING_CAST)"                    shift, and go to state 20
9189    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
9190    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
9191    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
9192    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
9193    '@'                                           shift, and go to state 25
9194    '['                                           shift, and go to state 26
9195    "new (T_NEW)"                                 shift, and go to state 27
9196    "clone (T_CLONE)"                             shift, and go to state 28
9197    "static (T_STATIC)"                           shift, and go to state 113
9198    "integer number (T_LNUMBER)"                  shift, and go to state 32
9199    "floating-point number (T_DNUMBER)"           shift, and go to state 33
9200    "identifier (T_STRING)"                       shift, and go to state 114
9201    "variable (T_VARIABLE)"                       shift, and go to state 35
9202    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
9203    "exit (T_EXIT)"                               shift, and go to state 38
9204    "function (T_FUNCTION)"                       shift, and go to state 50
9205    "isset (T_ISSET)"                             shift, and go to state 58
9206    "empty (T_EMPTY)"                             shift, and go to state 59
9207    "list (T_LIST)"                               shift, and go to state 64
9208    "array (T_ARRAY)"                             shift, and go to state 65
9209    "__LINE__ (T_LINE)"                           shift, and go to state 66
9210    "__FILE__ (T_FILE)"                           shift, and go to state 67
9211    "__DIR__ (T_DIR)"                             shift, and go to state 68
9212    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
9213    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
9214    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
9215    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
9216    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
9217    "namespace (T_NAMESPACE)"                     shift, and go to state 115
9218    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
9219    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
9220    '('                                           shift, and go to state 77
9221    '`'                                           shift, and go to state 80
9222    '"'                                           shift, and go to state 81
9223    '$'                                           shift, and go to state 82
9224
9225    namespace_name              go to state 83
9226    name                        go to state 84
9227    new_expr                    go to state 97
9228    expr                        go to state 415
9229    function                    go to state 117
9230    function_call               go to state 100
9231    class_name                  go to state 101
9232    dereferencable_scalar       go to state 102
9233    scalar                      go to state 103
9234    constant                    go to state 104
9235    variable_class_name         go to state 105
9236    dereferencable              go to state 106
9237    callable_expr               go to state 107
9238    callable_variable           go to state 108
9239    variable                    go to state 109
9240    simple_variable             go to state 110
9241    static_member               go to state 111
9242    internal_functions_in_yacc  go to state 112
9243
9244
9245State 254
9246
9247  350 expr: expr '>' . expr
9248
9249    "include (T_INCLUDE)"                         shift, and go to state 4
9250    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
9251    "eval (T_EVAL)"                               shift, and go to state 6
9252    "require (T_REQUIRE)"                         shift, and go to state 7
9253    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
9254    "print (T_PRINT)"                             shift, and go to state 9
9255    "yield (T_YIELD)"                             shift, and go to state 10
9256    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
9257    '+'                                           shift, and go to state 12
9258    '-'                                           shift, and go to state 13
9259    '!'                                           shift, and go to state 14
9260    '~'                                           shift, and go to state 15
9261    "++ (T_INC)"                                  shift, and go to state 16
9262    "-- (T_DEC)"                                  shift, and go to state 17
9263    "(int) (T_INT_CAST)"                          shift, and go to state 18
9264    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
9265    "(string) (T_STRING_CAST)"                    shift, and go to state 20
9266    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
9267    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
9268    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
9269    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
9270    '@'                                           shift, and go to state 25
9271    '['                                           shift, and go to state 26
9272    "new (T_NEW)"                                 shift, and go to state 27
9273    "clone (T_CLONE)"                             shift, and go to state 28
9274    "static (T_STATIC)"                           shift, and go to state 113
9275    "integer number (T_LNUMBER)"                  shift, and go to state 32
9276    "floating-point number (T_DNUMBER)"           shift, and go to state 33
9277    "identifier (T_STRING)"                       shift, and go to state 114
9278    "variable (T_VARIABLE)"                       shift, and go to state 35
9279    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
9280    "exit (T_EXIT)"                               shift, and go to state 38
9281    "function (T_FUNCTION)"                       shift, and go to state 50
9282    "isset (T_ISSET)"                             shift, and go to state 58
9283    "empty (T_EMPTY)"                             shift, and go to state 59
9284    "list (T_LIST)"                               shift, and go to state 64
9285    "array (T_ARRAY)"                             shift, and go to state 65
9286    "__LINE__ (T_LINE)"                           shift, and go to state 66
9287    "__FILE__ (T_FILE)"                           shift, and go to state 67
9288    "__DIR__ (T_DIR)"                             shift, and go to state 68
9289    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
9290    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
9291    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
9292    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
9293    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
9294    "namespace (T_NAMESPACE)"                     shift, and go to state 115
9295    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
9296    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
9297    '('                                           shift, and go to state 77
9298    '`'                                           shift, and go to state 80
9299    '"'                                           shift, and go to state 81
9300    '$'                                           shift, and go to state 82
9301
9302    namespace_name              go to state 83
9303    name                        go to state 84
9304    new_expr                    go to state 97
9305    expr                        go to state 416
9306    function                    go to state 117
9307    function_call               go to state 100
9308    class_name                  go to state 101
9309    dereferencable_scalar       go to state 102
9310    scalar                      go to state 103
9311    constant                    go to state 104
9312    variable_class_name         go to state 105
9313    dereferencable              go to state 106
9314    callable_expr               go to state 107
9315    callable_variable           go to state 108
9316    variable                    go to state 109
9317    simple_variable             go to state 110
9318    static_member               go to state 111
9319    internal_functions_in_yacc  go to state 112
9320
9321
9322State 255
9323
9324  351 expr: expr ">= (T_IS_GREATER_OR_EQUAL)" . expr
9325
9326    "include (T_INCLUDE)"                         shift, and go to state 4
9327    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
9328    "eval (T_EVAL)"                               shift, and go to state 6
9329    "require (T_REQUIRE)"                         shift, and go to state 7
9330    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
9331    "print (T_PRINT)"                             shift, and go to state 9
9332    "yield (T_YIELD)"                             shift, and go to state 10
9333    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
9334    '+'                                           shift, and go to state 12
9335    '-'                                           shift, and go to state 13
9336    '!'                                           shift, and go to state 14
9337    '~'                                           shift, and go to state 15
9338    "++ (T_INC)"                                  shift, and go to state 16
9339    "-- (T_DEC)"                                  shift, and go to state 17
9340    "(int) (T_INT_CAST)"                          shift, and go to state 18
9341    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
9342    "(string) (T_STRING_CAST)"                    shift, and go to state 20
9343    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
9344    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
9345    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
9346    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
9347    '@'                                           shift, and go to state 25
9348    '['                                           shift, and go to state 26
9349    "new (T_NEW)"                                 shift, and go to state 27
9350    "clone (T_CLONE)"                             shift, and go to state 28
9351    "static (T_STATIC)"                           shift, and go to state 113
9352    "integer number (T_LNUMBER)"                  shift, and go to state 32
9353    "floating-point number (T_DNUMBER)"           shift, and go to state 33
9354    "identifier (T_STRING)"                       shift, and go to state 114
9355    "variable (T_VARIABLE)"                       shift, and go to state 35
9356    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
9357    "exit (T_EXIT)"                               shift, and go to state 38
9358    "function (T_FUNCTION)"                       shift, and go to state 50
9359    "isset (T_ISSET)"                             shift, and go to state 58
9360    "empty (T_EMPTY)"                             shift, and go to state 59
9361    "list (T_LIST)"                               shift, and go to state 64
9362    "array (T_ARRAY)"                             shift, and go to state 65
9363    "__LINE__ (T_LINE)"                           shift, and go to state 66
9364    "__FILE__ (T_FILE)"                           shift, and go to state 67
9365    "__DIR__ (T_DIR)"                             shift, and go to state 68
9366    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
9367    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
9368    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
9369    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
9370    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
9371    "namespace (T_NAMESPACE)"                     shift, and go to state 115
9372    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
9373    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
9374    '('                                           shift, and go to state 77
9375    '`'                                           shift, and go to state 80
9376    '"'                                           shift, and go to state 81
9377    '$'                                           shift, and go to state 82
9378
9379    namespace_name              go to state 83
9380    name                        go to state 84
9381    new_expr                    go to state 97
9382    expr                        go to state 417
9383    function                    go to state 117
9384    function_call               go to state 100
9385    class_name                  go to state 101
9386    dereferencable_scalar       go to state 102
9387    scalar                      go to state 103
9388    constant                    go to state 104
9389    variable_class_name         go to state 105
9390    dereferencable              go to state 106
9391    callable_expr               go to state 107
9392    callable_variable           go to state 108
9393    variable                    go to state 109
9394    simple_variable             go to state 110
9395    static_member               go to state 111
9396    internal_functions_in_yacc  go to state 112
9397
9398
9399State 256
9400
9401  338 expr: expr "<< (T_SL)" . expr
9402
9403    "include (T_INCLUDE)"                         shift, and go to state 4
9404    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
9405    "eval (T_EVAL)"                               shift, and go to state 6
9406    "require (T_REQUIRE)"                         shift, and go to state 7
9407    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
9408    "print (T_PRINT)"                             shift, and go to state 9
9409    "yield (T_YIELD)"                             shift, and go to state 10
9410    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
9411    '+'                                           shift, and go to state 12
9412    '-'                                           shift, and go to state 13
9413    '!'                                           shift, and go to state 14
9414    '~'                                           shift, and go to state 15
9415    "++ (T_INC)"                                  shift, and go to state 16
9416    "-- (T_DEC)"                                  shift, and go to state 17
9417    "(int) (T_INT_CAST)"                          shift, and go to state 18
9418    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
9419    "(string) (T_STRING_CAST)"                    shift, and go to state 20
9420    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
9421    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
9422    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
9423    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
9424    '@'                                           shift, and go to state 25
9425    '['                                           shift, and go to state 26
9426    "new (T_NEW)"                                 shift, and go to state 27
9427    "clone (T_CLONE)"                             shift, and go to state 28
9428    "static (T_STATIC)"                           shift, and go to state 113
9429    "integer number (T_LNUMBER)"                  shift, and go to state 32
9430    "floating-point number (T_DNUMBER)"           shift, and go to state 33
9431    "identifier (T_STRING)"                       shift, and go to state 114
9432    "variable (T_VARIABLE)"                       shift, and go to state 35
9433    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
9434    "exit (T_EXIT)"                               shift, and go to state 38
9435    "function (T_FUNCTION)"                       shift, and go to state 50
9436    "isset (T_ISSET)"                             shift, and go to state 58
9437    "empty (T_EMPTY)"                             shift, and go to state 59
9438    "list (T_LIST)"                               shift, and go to state 64
9439    "array (T_ARRAY)"                             shift, and go to state 65
9440    "__LINE__ (T_LINE)"                           shift, and go to state 66
9441    "__FILE__ (T_FILE)"                           shift, and go to state 67
9442    "__DIR__ (T_DIR)"                             shift, and go to state 68
9443    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
9444    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
9445    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
9446    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
9447    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
9448    "namespace (T_NAMESPACE)"                     shift, and go to state 115
9449    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
9450    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
9451    '('                                           shift, and go to state 77
9452    '`'                                           shift, and go to state 80
9453    '"'                                           shift, and go to state 81
9454    '$'                                           shift, and go to state 82
9455
9456    namespace_name              go to state 83
9457    name                        go to state 84
9458    new_expr                    go to state 97
9459    expr                        go to state 418
9460    function                    go to state 117
9461    function_call               go to state 100
9462    class_name                  go to state 101
9463    dereferencable_scalar       go to state 102
9464    scalar                      go to state 103
9465    constant                    go to state 104
9466    variable_class_name         go to state 105
9467    dereferencable              go to state 106
9468    callable_expr               go to state 107
9469    callable_variable           go to state 108
9470    variable                    go to state 109
9471    simple_variable             go to state 110
9472    static_member               go to state 111
9473    internal_functions_in_yacc  go to state 112
9474
9475
9476State 257
9477
9478  339 expr: expr ">> (T_SR)" . expr
9479
9480    "include (T_INCLUDE)"                         shift, and go to state 4
9481    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
9482    "eval (T_EVAL)"                               shift, and go to state 6
9483    "require (T_REQUIRE)"                         shift, and go to state 7
9484    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
9485    "print (T_PRINT)"                             shift, and go to state 9
9486    "yield (T_YIELD)"                             shift, and go to state 10
9487    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
9488    '+'                                           shift, and go to state 12
9489    '-'                                           shift, and go to state 13
9490    '!'                                           shift, and go to state 14
9491    '~'                                           shift, and go to state 15
9492    "++ (T_INC)"                                  shift, and go to state 16
9493    "-- (T_DEC)"                                  shift, and go to state 17
9494    "(int) (T_INT_CAST)"                          shift, and go to state 18
9495    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
9496    "(string) (T_STRING_CAST)"                    shift, and go to state 20
9497    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
9498    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
9499    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
9500    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
9501    '@'                                           shift, and go to state 25
9502    '['                                           shift, and go to state 26
9503    "new (T_NEW)"                                 shift, and go to state 27
9504    "clone (T_CLONE)"                             shift, and go to state 28
9505    "static (T_STATIC)"                           shift, and go to state 113
9506    "integer number (T_LNUMBER)"                  shift, and go to state 32
9507    "floating-point number (T_DNUMBER)"           shift, and go to state 33
9508    "identifier (T_STRING)"                       shift, and go to state 114
9509    "variable (T_VARIABLE)"                       shift, and go to state 35
9510    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
9511    "exit (T_EXIT)"                               shift, and go to state 38
9512    "function (T_FUNCTION)"                       shift, and go to state 50
9513    "isset (T_ISSET)"                             shift, and go to state 58
9514    "empty (T_EMPTY)"                             shift, and go to state 59
9515    "list (T_LIST)"                               shift, and go to state 64
9516    "array (T_ARRAY)"                             shift, and go to state 65
9517    "__LINE__ (T_LINE)"                           shift, and go to state 66
9518    "__FILE__ (T_FILE)"                           shift, and go to state 67
9519    "__DIR__ (T_DIR)"                             shift, and go to state 68
9520    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
9521    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
9522    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
9523    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
9524    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
9525    "namespace (T_NAMESPACE)"                     shift, and go to state 115
9526    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
9527    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
9528    '('                                           shift, and go to state 77
9529    '`'                                           shift, and go to state 80
9530    '"'                                           shift, and go to state 81
9531    '$'                                           shift, and go to state 82
9532
9533    namespace_name              go to state 83
9534    name                        go to state 84
9535    new_expr                    go to state 97
9536    expr                        go to state 419
9537    function                    go to state 117
9538    function_call               go to state 100
9539    class_name                  go to state 101
9540    dereferencable_scalar       go to state 102
9541    scalar                      go to state 103
9542    constant                    go to state 104
9543    variable_class_name         go to state 105
9544    dereferencable              go to state 106
9545    callable_expr               go to state 107
9546    callable_variable           go to state 108
9547    variable                    go to state 109
9548    simple_variable             go to state 110
9549    static_member               go to state 111
9550    internal_functions_in_yacc  go to state 112
9551
9552
9553State 258
9554
9555  332 expr: expr '+' . expr
9556
9557    "include (T_INCLUDE)"                         shift, and go to state 4
9558    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
9559    "eval (T_EVAL)"                               shift, and go to state 6
9560    "require (T_REQUIRE)"                         shift, and go to state 7
9561    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
9562    "print (T_PRINT)"                             shift, and go to state 9
9563    "yield (T_YIELD)"                             shift, and go to state 10
9564    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
9565    '+'                                           shift, and go to state 12
9566    '-'                                           shift, and go to state 13
9567    '!'                                           shift, and go to state 14
9568    '~'                                           shift, and go to state 15
9569    "++ (T_INC)"                                  shift, and go to state 16
9570    "-- (T_DEC)"                                  shift, and go to state 17
9571    "(int) (T_INT_CAST)"                          shift, and go to state 18
9572    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
9573    "(string) (T_STRING_CAST)"                    shift, and go to state 20
9574    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
9575    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
9576    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
9577    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
9578    '@'                                           shift, and go to state 25
9579    '['                                           shift, and go to state 26
9580    "new (T_NEW)"                                 shift, and go to state 27
9581    "clone (T_CLONE)"                             shift, and go to state 28
9582    "static (T_STATIC)"                           shift, and go to state 113
9583    "integer number (T_LNUMBER)"                  shift, and go to state 32
9584    "floating-point number (T_DNUMBER)"           shift, and go to state 33
9585    "identifier (T_STRING)"                       shift, and go to state 114
9586    "variable (T_VARIABLE)"                       shift, and go to state 35
9587    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
9588    "exit (T_EXIT)"                               shift, and go to state 38
9589    "function (T_FUNCTION)"                       shift, and go to state 50
9590    "isset (T_ISSET)"                             shift, and go to state 58
9591    "empty (T_EMPTY)"                             shift, and go to state 59
9592    "list (T_LIST)"                               shift, and go to state 64
9593    "array (T_ARRAY)"                             shift, and go to state 65
9594    "__LINE__ (T_LINE)"                           shift, and go to state 66
9595    "__FILE__ (T_FILE)"                           shift, and go to state 67
9596    "__DIR__ (T_DIR)"                             shift, and go to state 68
9597    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
9598    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
9599    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
9600    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
9601    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
9602    "namespace (T_NAMESPACE)"                     shift, and go to state 115
9603    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
9604    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
9605    '('                                           shift, and go to state 77
9606    '`'                                           shift, and go to state 80
9607    '"'                                           shift, and go to state 81
9608    '$'                                           shift, and go to state 82
9609
9610    namespace_name              go to state 83
9611    name                        go to state 84
9612    new_expr                    go to state 97
9613    expr                        go to state 420
9614    function                    go to state 117
9615    function_call               go to state 100
9616    class_name                  go to state 101
9617    dereferencable_scalar       go to state 102
9618    scalar                      go to state 103
9619    constant                    go to state 104
9620    variable_class_name         go to state 105
9621    dereferencable              go to state 106
9622    callable_expr               go to state 107
9623    callable_variable           go to state 108
9624    variable                    go to state 109
9625    simple_variable             go to state 110
9626    static_member               go to state 111
9627    internal_functions_in_yacc  go to state 112
9628
9629
9630State 259
9631
9632  333 expr: expr '-' . expr
9633
9634    "include (T_INCLUDE)"                         shift, and go to state 4
9635    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
9636    "eval (T_EVAL)"                               shift, and go to state 6
9637    "require (T_REQUIRE)"                         shift, and go to state 7
9638    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
9639    "print (T_PRINT)"                             shift, and go to state 9
9640    "yield (T_YIELD)"                             shift, and go to state 10
9641    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
9642    '+'                                           shift, and go to state 12
9643    '-'                                           shift, and go to state 13
9644    '!'                                           shift, and go to state 14
9645    '~'                                           shift, and go to state 15
9646    "++ (T_INC)"                                  shift, and go to state 16
9647    "-- (T_DEC)"                                  shift, and go to state 17
9648    "(int) (T_INT_CAST)"                          shift, and go to state 18
9649    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
9650    "(string) (T_STRING_CAST)"                    shift, and go to state 20
9651    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
9652    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
9653    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
9654    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
9655    '@'                                           shift, and go to state 25
9656    '['                                           shift, and go to state 26
9657    "new (T_NEW)"                                 shift, and go to state 27
9658    "clone (T_CLONE)"                             shift, and go to state 28
9659    "static (T_STATIC)"                           shift, and go to state 113
9660    "integer number (T_LNUMBER)"                  shift, and go to state 32
9661    "floating-point number (T_DNUMBER)"           shift, and go to state 33
9662    "identifier (T_STRING)"                       shift, and go to state 114
9663    "variable (T_VARIABLE)"                       shift, and go to state 35
9664    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
9665    "exit (T_EXIT)"                               shift, and go to state 38
9666    "function (T_FUNCTION)"                       shift, and go to state 50
9667    "isset (T_ISSET)"                             shift, and go to state 58
9668    "empty (T_EMPTY)"                             shift, and go to state 59
9669    "list (T_LIST)"                               shift, and go to state 64
9670    "array (T_ARRAY)"                             shift, and go to state 65
9671    "__LINE__ (T_LINE)"                           shift, and go to state 66
9672    "__FILE__ (T_FILE)"                           shift, and go to state 67
9673    "__DIR__ (T_DIR)"                             shift, and go to state 68
9674    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
9675    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
9676    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
9677    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
9678    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
9679    "namespace (T_NAMESPACE)"                     shift, and go to state 115
9680    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
9681    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
9682    '('                                           shift, and go to state 77
9683    '`'                                           shift, and go to state 80
9684    '"'                                           shift, and go to state 81
9685    '$'                                           shift, and go to state 82
9686
9687    namespace_name              go to state 83
9688    name                        go to state 84
9689    new_expr                    go to state 97
9690    expr                        go to state 421
9691    function                    go to state 117
9692    function_call               go to state 100
9693    class_name                  go to state 101
9694    dereferencable_scalar       go to state 102
9695    scalar                      go to state 103
9696    constant                    go to state 104
9697    variable_class_name         go to state 105
9698    dereferencable              go to state 106
9699    callable_expr               go to state 107
9700    callable_variable           go to state 108
9701    variable                    go to state 109
9702    simple_variable             go to state 110
9703    static_member               go to state 111
9704    internal_functions_in_yacc  go to state 112
9705
9706
9707State 260
9708
9709  331 expr: expr '.' . expr
9710
9711    "include (T_INCLUDE)"                         shift, and go to state 4
9712    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
9713    "eval (T_EVAL)"                               shift, and go to state 6
9714    "require (T_REQUIRE)"                         shift, and go to state 7
9715    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
9716    "print (T_PRINT)"                             shift, and go to state 9
9717    "yield (T_YIELD)"                             shift, and go to state 10
9718    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
9719    '+'                                           shift, and go to state 12
9720    '-'                                           shift, and go to state 13
9721    '!'                                           shift, and go to state 14
9722    '~'                                           shift, and go to state 15
9723    "++ (T_INC)"                                  shift, and go to state 16
9724    "-- (T_DEC)"                                  shift, and go to state 17
9725    "(int) (T_INT_CAST)"                          shift, and go to state 18
9726    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
9727    "(string) (T_STRING_CAST)"                    shift, and go to state 20
9728    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
9729    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
9730    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
9731    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
9732    '@'                                           shift, and go to state 25
9733    '['                                           shift, and go to state 26
9734    "new (T_NEW)"                                 shift, and go to state 27
9735    "clone (T_CLONE)"                             shift, and go to state 28
9736    "static (T_STATIC)"                           shift, and go to state 113
9737    "integer number (T_LNUMBER)"                  shift, and go to state 32
9738    "floating-point number (T_DNUMBER)"           shift, and go to state 33
9739    "identifier (T_STRING)"                       shift, and go to state 114
9740    "variable (T_VARIABLE)"                       shift, and go to state 35
9741    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
9742    "exit (T_EXIT)"                               shift, and go to state 38
9743    "function (T_FUNCTION)"                       shift, and go to state 50
9744    "isset (T_ISSET)"                             shift, and go to state 58
9745    "empty (T_EMPTY)"                             shift, and go to state 59
9746    "list (T_LIST)"                               shift, and go to state 64
9747    "array (T_ARRAY)"                             shift, and go to state 65
9748    "__LINE__ (T_LINE)"                           shift, and go to state 66
9749    "__FILE__ (T_FILE)"                           shift, and go to state 67
9750    "__DIR__ (T_DIR)"                             shift, and go to state 68
9751    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
9752    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
9753    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
9754    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
9755    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
9756    "namespace (T_NAMESPACE)"                     shift, and go to state 115
9757    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
9758    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
9759    '('                                           shift, and go to state 77
9760    '`'                                           shift, and go to state 80
9761    '"'                                           shift, and go to state 81
9762    '$'                                           shift, and go to state 82
9763
9764    namespace_name              go to state 83
9765    name                        go to state 84
9766    new_expr                    go to state 97
9767    expr                        go to state 422
9768    function                    go to state 117
9769    function_call               go to state 100
9770    class_name                  go to state 101
9771    dereferencable_scalar       go to state 102
9772    scalar                      go to state 103
9773    constant                    go to state 104
9774    variable_class_name         go to state 105
9775    dereferencable              go to state 106
9776    callable_expr               go to state 107
9777    callable_variable           go to state 108
9778    variable                    go to state 109
9779    simple_variable             go to state 110
9780    static_member               go to state 111
9781    internal_functions_in_yacc  go to state 112
9782
9783
9784State 261
9785
9786  334 expr: expr '*' . expr
9787
9788    "include (T_INCLUDE)"                         shift, and go to state 4
9789    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
9790    "eval (T_EVAL)"                               shift, and go to state 6
9791    "require (T_REQUIRE)"                         shift, and go to state 7
9792    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
9793    "print (T_PRINT)"                             shift, and go to state 9
9794    "yield (T_YIELD)"                             shift, and go to state 10
9795    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
9796    '+'                                           shift, and go to state 12
9797    '-'                                           shift, and go to state 13
9798    '!'                                           shift, and go to state 14
9799    '~'                                           shift, and go to state 15
9800    "++ (T_INC)"                                  shift, and go to state 16
9801    "-- (T_DEC)"                                  shift, and go to state 17
9802    "(int) (T_INT_CAST)"                          shift, and go to state 18
9803    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
9804    "(string) (T_STRING_CAST)"                    shift, and go to state 20
9805    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
9806    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
9807    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
9808    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
9809    '@'                                           shift, and go to state 25
9810    '['                                           shift, and go to state 26
9811    "new (T_NEW)"                                 shift, and go to state 27
9812    "clone (T_CLONE)"                             shift, and go to state 28
9813    "static (T_STATIC)"                           shift, and go to state 113
9814    "integer number (T_LNUMBER)"                  shift, and go to state 32
9815    "floating-point number (T_DNUMBER)"           shift, and go to state 33
9816    "identifier (T_STRING)"                       shift, and go to state 114
9817    "variable (T_VARIABLE)"                       shift, and go to state 35
9818    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
9819    "exit (T_EXIT)"                               shift, and go to state 38
9820    "function (T_FUNCTION)"                       shift, and go to state 50
9821    "isset (T_ISSET)"                             shift, and go to state 58
9822    "empty (T_EMPTY)"                             shift, and go to state 59
9823    "list (T_LIST)"                               shift, and go to state 64
9824    "array (T_ARRAY)"                             shift, and go to state 65
9825    "__LINE__ (T_LINE)"                           shift, and go to state 66
9826    "__FILE__ (T_FILE)"                           shift, and go to state 67
9827    "__DIR__ (T_DIR)"                             shift, and go to state 68
9828    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
9829    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
9830    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
9831    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
9832    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
9833    "namespace (T_NAMESPACE)"                     shift, and go to state 115
9834    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
9835    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
9836    '('                                           shift, and go to state 77
9837    '`'                                           shift, and go to state 80
9838    '"'                                           shift, and go to state 81
9839    '$'                                           shift, and go to state 82
9840
9841    namespace_name              go to state 83
9842    name                        go to state 84
9843    new_expr                    go to state 97
9844    expr                        go to state 423
9845    function                    go to state 117
9846    function_call               go to state 100
9847    class_name                  go to state 101
9848    dereferencable_scalar       go to state 102
9849    scalar                      go to state 103
9850    constant                    go to state 104
9851    variable_class_name         go to state 105
9852    dereferencable              go to state 106
9853    callable_expr               go to state 107
9854    callable_variable           go to state 108
9855    variable                    go to state 109
9856    simple_variable             go to state 110
9857    static_member               go to state 111
9858    internal_functions_in_yacc  go to state 112
9859
9860
9861State 262
9862
9863  336 expr: expr '/' . expr
9864
9865    "include (T_INCLUDE)"                         shift, and go to state 4
9866    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
9867    "eval (T_EVAL)"                               shift, and go to state 6
9868    "require (T_REQUIRE)"                         shift, and go to state 7
9869    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
9870    "print (T_PRINT)"                             shift, and go to state 9
9871    "yield (T_YIELD)"                             shift, and go to state 10
9872    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
9873    '+'                                           shift, and go to state 12
9874    '-'                                           shift, and go to state 13
9875    '!'                                           shift, and go to state 14
9876    '~'                                           shift, and go to state 15
9877    "++ (T_INC)"                                  shift, and go to state 16
9878    "-- (T_DEC)"                                  shift, and go to state 17
9879    "(int) (T_INT_CAST)"                          shift, and go to state 18
9880    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
9881    "(string) (T_STRING_CAST)"                    shift, and go to state 20
9882    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
9883    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
9884    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
9885    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
9886    '@'                                           shift, and go to state 25
9887    '['                                           shift, and go to state 26
9888    "new (T_NEW)"                                 shift, and go to state 27
9889    "clone (T_CLONE)"                             shift, and go to state 28
9890    "static (T_STATIC)"                           shift, and go to state 113
9891    "integer number (T_LNUMBER)"                  shift, and go to state 32
9892    "floating-point number (T_DNUMBER)"           shift, and go to state 33
9893    "identifier (T_STRING)"                       shift, and go to state 114
9894    "variable (T_VARIABLE)"                       shift, and go to state 35
9895    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
9896    "exit (T_EXIT)"                               shift, and go to state 38
9897    "function (T_FUNCTION)"                       shift, and go to state 50
9898    "isset (T_ISSET)"                             shift, and go to state 58
9899    "empty (T_EMPTY)"                             shift, and go to state 59
9900    "list (T_LIST)"                               shift, and go to state 64
9901    "array (T_ARRAY)"                             shift, and go to state 65
9902    "__LINE__ (T_LINE)"                           shift, and go to state 66
9903    "__FILE__ (T_FILE)"                           shift, and go to state 67
9904    "__DIR__ (T_DIR)"                             shift, and go to state 68
9905    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
9906    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
9907    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
9908    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
9909    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
9910    "namespace (T_NAMESPACE)"                     shift, and go to state 115
9911    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
9912    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
9913    '('                                           shift, and go to state 77
9914    '`'                                           shift, and go to state 80
9915    '"'                                           shift, and go to state 81
9916    '$'                                           shift, and go to state 82
9917
9918    namespace_name              go to state 83
9919    name                        go to state 84
9920    new_expr                    go to state 97
9921    expr                        go to state 424
9922    function                    go to state 117
9923    function_call               go to state 100
9924    class_name                  go to state 101
9925    dereferencable_scalar       go to state 102
9926    scalar                      go to state 103
9927    constant                    go to state 104
9928    variable_class_name         go to state 105
9929    dereferencable              go to state 106
9930    callable_expr               go to state 107
9931    callable_variable           go to state 108
9932    variable                    go to state 109
9933    simple_variable             go to state 110
9934    static_member               go to state 111
9935    internal_functions_in_yacc  go to state 112
9936
9937
9938State 263
9939
9940  337 expr: expr '%' . expr
9941
9942    "include (T_INCLUDE)"                         shift, and go to state 4
9943    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
9944    "eval (T_EVAL)"                               shift, and go to state 6
9945    "require (T_REQUIRE)"                         shift, and go to state 7
9946    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
9947    "print (T_PRINT)"                             shift, and go to state 9
9948    "yield (T_YIELD)"                             shift, and go to state 10
9949    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
9950    '+'                                           shift, and go to state 12
9951    '-'                                           shift, and go to state 13
9952    '!'                                           shift, and go to state 14
9953    '~'                                           shift, and go to state 15
9954    "++ (T_INC)"                                  shift, and go to state 16
9955    "-- (T_DEC)"                                  shift, and go to state 17
9956    "(int) (T_INT_CAST)"                          shift, and go to state 18
9957    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
9958    "(string) (T_STRING_CAST)"                    shift, and go to state 20
9959    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
9960    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
9961    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
9962    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
9963    '@'                                           shift, and go to state 25
9964    '['                                           shift, and go to state 26
9965    "new (T_NEW)"                                 shift, and go to state 27
9966    "clone (T_CLONE)"                             shift, and go to state 28
9967    "static (T_STATIC)"                           shift, and go to state 113
9968    "integer number (T_LNUMBER)"                  shift, and go to state 32
9969    "floating-point number (T_DNUMBER)"           shift, and go to state 33
9970    "identifier (T_STRING)"                       shift, and go to state 114
9971    "variable (T_VARIABLE)"                       shift, and go to state 35
9972    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
9973    "exit (T_EXIT)"                               shift, and go to state 38
9974    "function (T_FUNCTION)"                       shift, and go to state 50
9975    "isset (T_ISSET)"                             shift, and go to state 58
9976    "empty (T_EMPTY)"                             shift, and go to state 59
9977    "list (T_LIST)"                               shift, and go to state 64
9978    "array (T_ARRAY)"                             shift, and go to state 65
9979    "__LINE__ (T_LINE)"                           shift, and go to state 66
9980    "__FILE__ (T_FILE)"                           shift, and go to state 67
9981    "__DIR__ (T_DIR)"                             shift, and go to state 68
9982    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
9983    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
9984    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
9985    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
9986    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
9987    "namespace (T_NAMESPACE)"                     shift, and go to state 115
9988    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
9989    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
9990    '('                                           shift, and go to state 77
9991    '`'                                           shift, and go to state 80
9992    '"'                                           shift, and go to state 81
9993    '$'                                           shift, and go to state 82
9994
9995    namespace_name              go to state 83
9996    name                        go to state 84
9997    new_expr                    go to state 97
9998    expr                        go to state 425
9999    function                    go to state 117
10000    function_call               go to state 100
10001    class_name                  go to state 101
10002    dereferencable_scalar       go to state 102
10003    scalar                      go to state 103
10004    constant                    go to state 104
10005    variable_class_name         go to state 105
10006    dereferencable              go to state 106
10007    callable_expr               go to state 107
10008    callable_variable           go to state 108
10009    variable                    go to state 109
10010    simple_variable             go to state 110
10011    static_member               go to state 111
10012    internal_functions_in_yacc  go to state 112
10013
10014
10015State 264
10016
10017  353 expr: expr "instanceof (T_INSTANCEOF)" . class_name_reference
10018
10019    "static (T_STATIC)"        shift, and go to state 130
10020    "identifier (T_STRING)"    shift, and go to state 114
10021    "variable (T_VARIABLE)"    shift, and go to state 35
10022    "namespace (T_NAMESPACE)"  shift, and go to state 115
10023    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
10024    '$'                        shift, and go to state 82
10025
10026    namespace_name        go to state 83
10027    name                  go to state 152
10028    class_name            go to state 154
10029    class_name_reference  go to state 426
10030    simple_variable       go to state 156
10031    new_variable          go to state 157
10032
10033
10034State 265
10035
10036  335 expr: expr "** (T_POW)" . expr
10037
10038    "include (T_INCLUDE)"                         shift, and go to state 4
10039    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
10040    "eval (T_EVAL)"                               shift, and go to state 6
10041    "require (T_REQUIRE)"                         shift, and go to state 7
10042    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
10043    "print (T_PRINT)"                             shift, and go to state 9
10044    "yield (T_YIELD)"                             shift, and go to state 10
10045    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
10046    '+'                                           shift, and go to state 12
10047    '-'                                           shift, and go to state 13
10048    '!'                                           shift, and go to state 14
10049    '~'                                           shift, and go to state 15
10050    "++ (T_INC)"                                  shift, and go to state 16
10051    "-- (T_DEC)"                                  shift, and go to state 17
10052    "(int) (T_INT_CAST)"                          shift, and go to state 18
10053    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
10054    "(string) (T_STRING_CAST)"                    shift, and go to state 20
10055    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
10056    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
10057    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
10058    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
10059    '@'                                           shift, and go to state 25
10060    '['                                           shift, and go to state 26
10061    "new (T_NEW)"                                 shift, and go to state 27
10062    "clone (T_CLONE)"                             shift, and go to state 28
10063    "static (T_STATIC)"                           shift, and go to state 113
10064    "integer number (T_LNUMBER)"                  shift, and go to state 32
10065    "floating-point number (T_DNUMBER)"           shift, and go to state 33
10066    "identifier (T_STRING)"                       shift, and go to state 114
10067    "variable (T_VARIABLE)"                       shift, and go to state 35
10068    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
10069    "exit (T_EXIT)"                               shift, and go to state 38
10070    "function (T_FUNCTION)"                       shift, and go to state 50
10071    "isset (T_ISSET)"                             shift, and go to state 58
10072    "empty (T_EMPTY)"                             shift, and go to state 59
10073    "list (T_LIST)"                               shift, and go to state 64
10074    "array (T_ARRAY)"                             shift, and go to state 65
10075    "__LINE__ (T_LINE)"                           shift, and go to state 66
10076    "__FILE__ (T_FILE)"                           shift, and go to state 67
10077    "__DIR__ (T_DIR)"                             shift, and go to state 68
10078    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
10079    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
10080    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
10081    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
10082    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
10083    "namespace (T_NAMESPACE)"                     shift, and go to state 115
10084    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
10085    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
10086    '('                                           shift, and go to state 77
10087    '`'                                           shift, and go to state 80
10088    '"'                                           shift, and go to state 81
10089    '$'                                           shift, and go to state 82
10090
10091    namespace_name              go to state 83
10092    name                        go to state 84
10093    new_expr                    go to state 97
10094    expr                        go to state 427
10095    function                    go to state 117
10096    function_call               go to state 100
10097    class_name                  go to state 101
10098    dereferencable_scalar       go to state 102
10099    scalar                      go to state 103
10100    constant                    go to state 104
10101    variable_class_name         go to state 105
10102    dereferencable              go to state 106
10103    callable_expr               go to state 107
10104    callable_variable           go to state 108
10105    variable                    go to state 109
10106    simple_variable             go to state 110
10107    static_member               go to state 111
10108    internal_functions_in_yacc  go to state 112
10109
10110
10111State 266
10112
10113  145 statement: expr ';' .
10114
10115    $default  reduce using rule 145 (statement)
10116
10117
10118State 267
10119
10120  382 returns_ref: '&' .
10121
10122    $default  reduce using rule 382 (returns_ref)
10123
10124
10125State 268
10126
10127  165 function_declaration_statement: function returns_ref . "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
10128  376 expr: function returns_ref . backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
10129
10130    "identifier (T_STRING)"  shift, and go to state 428
10131
10132    $default  reduce using rule 379 (backup_doc_comment)
10133
10134    backup_doc_comment  go to state 429
10135
10136
10137State 269
10138
10139  390 function_call: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . member_name argument_list
10140  424 constant: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . identifier
10141  447 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . simple_variable
10142
10143    "include (T_INCLUDE)"            shift, and go to state 430
10144    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 431
10145    "eval (T_EVAL)"                  shift, and go to state 432
10146    "require (T_REQUIRE)"            shift, and go to state 433
10147    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 434
10148    "or (T_LOGICAL_OR)"              shift, and go to state 435
10149    "xor (T_LOGICAL_XOR)"            shift, and go to state 436
10150    "and (T_LOGICAL_AND)"            shift, and go to state 437
10151    "print (T_PRINT)"                shift, and go to state 438
10152    "yield (T_YIELD)"                shift, and go to state 439
10153    "instanceof (T_INSTANCEOF)"      shift, and go to state 440
10154    "new (T_NEW)"                    shift, and go to state 441
10155    "clone (T_CLONE)"                shift, and go to state 442
10156    "elseif (T_ELSEIF)"              shift, and go to state 443
10157    "else (T_ELSE)"                  shift, and go to state 444
10158    "endif (T_ENDIF)"                shift, and go to state 445
10159    "static (T_STATIC)"              shift, and go to state 446
10160    "abstract (T_ABSTRACT)"          shift, and go to state 447
10161    "final (T_FINAL)"                shift, and go to state 448
10162    "private (T_PRIVATE)"            shift, and go to state 449
10163    "protected (T_PROTECTED)"        shift, and go to state 450
10164    "public (T_PUBLIC)"              shift, and go to state 451
10165    "identifier (T_STRING)"          shift, and go to state 452
10166    "variable (T_VARIABLE)"          shift, and go to state 35
10167    "exit (T_EXIT)"                  shift, and go to state 453
10168    "if (T_IF)"                      shift, and go to state 454
10169    "echo (T_ECHO)"                  shift, and go to state 455
10170    "do (T_DO)"                      shift, and go to state 456
10171    "while (T_WHILE)"                shift, and go to state 457
10172    "endwhile (T_ENDWHILE)"          shift, and go to state 458
10173    "for (T_FOR)"                    shift, and go to state 459
10174    "endfor (T_ENDFOR)"              shift, and go to state 460
10175    "foreach (T_FOREACH)"            shift, and go to state 461
10176    "endforeach (T_ENDFOREACH)"      shift, and go to state 462
10177    "declare (T_DECLARE)"            shift, and go to state 463
10178    "enddeclare (T_ENDDECLARE)"      shift, and go to state 464
10179    "as (T_AS)"                      shift, and go to state 465
10180    "switch (T_SWITCH)"              shift, and go to state 466
10181    "endswitch (T_ENDSWITCH)"        shift, and go to state 467
10182    "case (T_CASE)"                  shift, and go to state 468
10183    "default (T_DEFAULT)"            shift, and go to state 469
10184    "break (T_BREAK)"                shift, and go to state 470
10185    "continue (T_CONTINUE)"          shift, and go to state 471
10186    "goto (T_GOTO)"                  shift, and go to state 472
10187    "function (T_FUNCTION)"          shift, and go to state 473
10188    "const (T_CONST)"                shift, and go to state 474
10189    "return (T_RETURN)"              shift, and go to state 475
10190    "try (T_TRY)"                    shift, and go to state 476
10191    "catch (T_CATCH)"                shift, and go to state 477
10192    "finally (T_FINALLY)"            shift, and go to state 478
10193    "throw (T_THROW)"                shift, and go to state 479
10194    "use (T_USE)"                    shift, and go to state 480
10195    "insteadof (T_INSTEADOF)"        shift, and go to state 481
10196    "global (T_GLOBAL)"              shift, and go to state 482
10197    "var (T_VAR)"                    shift, and go to state 483
10198    "unset (T_UNSET)"                shift, and go to state 484
10199    "isset (T_ISSET)"                shift, and go to state 485
10200    "empty (T_EMPTY)"                shift, and go to state 486
10201    "class (T_CLASS)"                shift, and go to state 487
10202    "trait (T_TRAIT)"                shift, and go to state 488
10203    "interface (T_INTERFACE)"        shift, and go to state 489
10204    "extends (T_EXTENDS)"            shift, and go to state 490
10205    "implements (T_IMPLEMENTS)"      shift, and go to state 491
10206    "list (T_LIST)"                  shift, and go to state 492
10207    "array (T_ARRAY)"                shift, and go to state 493
10208    "callable (T_CALLABLE)"          shift, and go to state 494
10209    "__LINE__ (T_LINE)"              shift, and go to state 495
10210    "__FILE__ (T_FILE)"              shift, and go to state 496
10211    "__DIR__ (T_DIR)"                shift, and go to state 497
10212    "__CLASS__ (T_CLASS_C)"          shift, and go to state 498
10213    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 499
10214    "__METHOD__ (T_METHOD_C)"        shift, and go to state 500
10215    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 501
10216    "namespace (T_NAMESPACE)"        shift, and go to state 502
10217    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 503
10218    '{'                              shift, and go to state 504
10219    '$'                              shift, and go to state 82
10220
10221    reserved_non_modifiers  go to state 505
10222    semi_reserved           go to state 506
10223    identifier              go to state 507
10224    simple_variable         go to state 508
10225    member_name             go to state 509
10226
10227
10228State 270
10229
10230  437 callable_variable: constant '[' . optional_expr ']'
10231
10232    "include (T_INCLUDE)"                         shift, and go to state 4
10233    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
10234    "eval (T_EVAL)"                               shift, and go to state 6
10235    "require (T_REQUIRE)"                         shift, and go to state 7
10236    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
10237    "print (T_PRINT)"                             shift, and go to state 9
10238    "yield (T_YIELD)"                             shift, and go to state 10
10239    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
10240    '+'                                           shift, and go to state 12
10241    '-'                                           shift, and go to state 13
10242    '!'                                           shift, and go to state 14
10243    '~'                                           shift, and go to state 15
10244    "++ (T_INC)"                                  shift, and go to state 16
10245    "-- (T_DEC)"                                  shift, and go to state 17
10246    "(int) (T_INT_CAST)"                          shift, and go to state 18
10247    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
10248    "(string) (T_STRING_CAST)"                    shift, and go to state 20
10249    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
10250    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
10251    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
10252    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
10253    '@'                                           shift, and go to state 25
10254    '['                                           shift, and go to state 26
10255    "new (T_NEW)"                                 shift, and go to state 27
10256    "clone (T_CLONE)"                             shift, and go to state 28
10257    "static (T_STATIC)"                           shift, and go to state 113
10258    "integer number (T_LNUMBER)"                  shift, and go to state 32
10259    "floating-point number (T_DNUMBER)"           shift, and go to state 33
10260    "identifier (T_STRING)"                       shift, and go to state 114
10261    "variable (T_VARIABLE)"                       shift, and go to state 35
10262    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
10263    "exit (T_EXIT)"                               shift, and go to state 38
10264    "function (T_FUNCTION)"                       shift, and go to state 50
10265    "isset (T_ISSET)"                             shift, and go to state 58
10266    "empty (T_EMPTY)"                             shift, and go to state 59
10267    "list (T_LIST)"                               shift, and go to state 64
10268    "array (T_ARRAY)"                             shift, and go to state 65
10269    "__LINE__ (T_LINE)"                           shift, and go to state 66
10270    "__FILE__ (T_FILE)"                           shift, and go to state 67
10271    "__DIR__ (T_DIR)"                             shift, and go to state 68
10272    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
10273    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
10274    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
10275    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
10276    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
10277    "namespace (T_NAMESPACE)"                     shift, and go to state 115
10278    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
10279    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
10280    '('                                           shift, and go to state 77
10281    '`'                                           shift, and go to state 80
10282    '"'                                           shift, and go to state 81
10283    '$'                                           shift, and go to state 82
10284
10285    $default  reduce using rule 426 (optional_expr)
10286
10287    namespace_name              go to state 83
10288    name                        go to state 84
10289    new_expr                    go to state 97
10290    expr                        go to state 176
10291    function                    go to state 117
10292    function_call               go to state 100
10293    class_name                  go to state 101
10294    dereferencable_scalar       go to state 102
10295    scalar                      go to state 103
10296    constant                    go to state 104
10297    optional_expr               go to state 510
10298    variable_class_name         go to state 105
10299    dereferencable              go to state 106
10300    callable_expr               go to state 107
10301    callable_variable           go to state 108
10302    variable                    go to state 109
10303    simple_variable             go to state 110
10304    static_member               go to state 111
10305    internal_functions_in_yacc  go to state 112
10306
10307
10308State 271
10309
10310  391 function_call: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . member_name argument_list
10311  425 constant: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . identifier
10312  448 static_member: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . simple_variable
10313
10314    "include (T_INCLUDE)"            shift, and go to state 430
10315    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 431
10316    "eval (T_EVAL)"                  shift, and go to state 432
10317    "require (T_REQUIRE)"            shift, and go to state 433
10318    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 434
10319    "or (T_LOGICAL_OR)"              shift, and go to state 435
10320    "xor (T_LOGICAL_XOR)"            shift, and go to state 436
10321    "and (T_LOGICAL_AND)"            shift, and go to state 437
10322    "print (T_PRINT)"                shift, and go to state 438
10323    "yield (T_YIELD)"                shift, and go to state 439
10324    "instanceof (T_INSTANCEOF)"      shift, and go to state 440
10325    "new (T_NEW)"                    shift, and go to state 441
10326    "clone (T_CLONE)"                shift, and go to state 442
10327    "elseif (T_ELSEIF)"              shift, and go to state 443
10328    "else (T_ELSE)"                  shift, and go to state 444
10329    "endif (T_ENDIF)"                shift, and go to state 445
10330    "static (T_STATIC)"              shift, and go to state 446
10331    "abstract (T_ABSTRACT)"          shift, and go to state 447
10332    "final (T_FINAL)"                shift, and go to state 448
10333    "private (T_PRIVATE)"            shift, and go to state 449
10334    "protected (T_PROTECTED)"        shift, and go to state 450
10335    "public (T_PUBLIC)"              shift, and go to state 451
10336    "identifier (T_STRING)"          shift, and go to state 452
10337    "variable (T_VARIABLE)"          shift, and go to state 35
10338    "exit (T_EXIT)"                  shift, and go to state 453
10339    "if (T_IF)"                      shift, and go to state 454
10340    "echo (T_ECHO)"                  shift, and go to state 455
10341    "do (T_DO)"                      shift, and go to state 456
10342    "while (T_WHILE)"                shift, and go to state 457
10343    "endwhile (T_ENDWHILE)"          shift, and go to state 458
10344    "for (T_FOR)"                    shift, and go to state 459
10345    "endfor (T_ENDFOR)"              shift, and go to state 460
10346    "foreach (T_FOREACH)"            shift, and go to state 461
10347    "endforeach (T_ENDFOREACH)"      shift, and go to state 462
10348    "declare (T_DECLARE)"            shift, and go to state 463
10349    "enddeclare (T_ENDDECLARE)"      shift, and go to state 464
10350    "as (T_AS)"                      shift, and go to state 465
10351    "switch (T_SWITCH)"              shift, and go to state 466
10352    "endswitch (T_ENDSWITCH)"        shift, and go to state 467
10353    "case (T_CASE)"                  shift, and go to state 468
10354    "default (T_DEFAULT)"            shift, and go to state 469
10355    "break (T_BREAK)"                shift, and go to state 470
10356    "continue (T_CONTINUE)"          shift, and go to state 471
10357    "goto (T_GOTO)"                  shift, and go to state 472
10358    "function (T_FUNCTION)"          shift, and go to state 473
10359    "const (T_CONST)"                shift, and go to state 474
10360    "return (T_RETURN)"              shift, and go to state 475
10361    "try (T_TRY)"                    shift, and go to state 476
10362    "catch (T_CATCH)"                shift, and go to state 477
10363    "finally (T_FINALLY)"            shift, and go to state 478
10364    "throw (T_THROW)"                shift, and go to state 479
10365    "use (T_USE)"                    shift, and go to state 480
10366    "insteadof (T_INSTEADOF)"        shift, and go to state 481
10367    "global (T_GLOBAL)"              shift, and go to state 482
10368    "var (T_VAR)"                    shift, and go to state 483
10369    "unset (T_UNSET)"                shift, and go to state 484
10370    "isset (T_ISSET)"                shift, and go to state 485
10371    "empty (T_EMPTY)"                shift, and go to state 486
10372    "class (T_CLASS)"                shift, and go to state 487
10373    "trait (T_TRAIT)"                shift, and go to state 488
10374    "interface (T_INTERFACE)"        shift, and go to state 489
10375    "extends (T_EXTENDS)"            shift, and go to state 490
10376    "implements (T_IMPLEMENTS)"      shift, and go to state 491
10377    "list (T_LIST)"                  shift, and go to state 492
10378    "array (T_ARRAY)"                shift, and go to state 493
10379    "callable (T_CALLABLE)"          shift, and go to state 494
10380    "__LINE__ (T_LINE)"              shift, and go to state 495
10381    "__FILE__ (T_FILE)"              shift, and go to state 496
10382    "__DIR__ (T_DIR)"                shift, and go to state 497
10383    "__CLASS__ (T_CLASS_C)"          shift, and go to state 498
10384    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 499
10385    "__METHOD__ (T_METHOD_C)"        shift, and go to state 500
10386    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 501
10387    "namespace (T_NAMESPACE)"        shift, and go to state 502
10388    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 503
10389    '{'                              shift, and go to state 504
10390    '$'                              shift, and go to state 82
10391
10392    reserved_non_modifiers  go to state 505
10393    semi_reserved           go to state 506
10394    identifier              go to state 511
10395    simple_variable         go to state 512
10396    member_name             go to state 513
10397
10398
10399State 272
10400
10401  436 callable_variable: dereferencable '[' . optional_expr ']'
10402
10403    "include (T_INCLUDE)"                         shift, and go to state 4
10404    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
10405    "eval (T_EVAL)"                               shift, and go to state 6
10406    "require (T_REQUIRE)"                         shift, and go to state 7
10407    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
10408    "print (T_PRINT)"                             shift, and go to state 9
10409    "yield (T_YIELD)"                             shift, and go to state 10
10410    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
10411    '+'                                           shift, and go to state 12
10412    '-'                                           shift, and go to state 13
10413    '!'                                           shift, and go to state 14
10414    '~'                                           shift, and go to state 15
10415    "++ (T_INC)"                                  shift, and go to state 16
10416    "-- (T_DEC)"                                  shift, and go to state 17
10417    "(int) (T_INT_CAST)"                          shift, and go to state 18
10418    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
10419    "(string) (T_STRING_CAST)"                    shift, and go to state 20
10420    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
10421    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
10422    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
10423    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
10424    '@'                                           shift, and go to state 25
10425    '['                                           shift, and go to state 26
10426    "new (T_NEW)"                                 shift, and go to state 27
10427    "clone (T_CLONE)"                             shift, and go to state 28
10428    "static (T_STATIC)"                           shift, and go to state 113
10429    "integer number (T_LNUMBER)"                  shift, and go to state 32
10430    "floating-point number (T_DNUMBER)"           shift, and go to state 33
10431    "identifier (T_STRING)"                       shift, and go to state 114
10432    "variable (T_VARIABLE)"                       shift, and go to state 35
10433    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
10434    "exit (T_EXIT)"                               shift, and go to state 38
10435    "function (T_FUNCTION)"                       shift, and go to state 50
10436    "isset (T_ISSET)"                             shift, and go to state 58
10437    "empty (T_EMPTY)"                             shift, and go to state 59
10438    "list (T_LIST)"                               shift, and go to state 64
10439    "array (T_ARRAY)"                             shift, and go to state 65
10440    "__LINE__ (T_LINE)"                           shift, and go to state 66
10441    "__FILE__ (T_FILE)"                           shift, and go to state 67
10442    "__DIR__ (T_DIR)"                             shift, and go to state 68
10443    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
10444    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
10445    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
10446    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
10447    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
10448    "namespace (T_NAMESPACE)"                     shift, and go to state 115
10449    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
10450    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
10451    '('                                           shift, and go to state 77
10452    '`'                                           shift, and go to state 80
10453    '"'                                           shift, and go to state 81
10454    '$'                                           shift, and go to state 82
10455
10456    $default  reduce using rule 426 (optional_expr)
10457
10458    namespace_name              go to state 83
10459    name                        go to state 84
10460    new_expr                    go to state 97
10461    expr                        go to state 176
10462    function                    go to state 117
10463    function_call               go to state 100
10464    class_name                  go to state 101
10465    dereferencable_scalar       go to state 102
10466    scalar                      go to state 103
10467    constant                    go to state 104
10468    optional_expr               go to state 514
10469    variable_class_name         go to state 105
10470    dereferencable              go to state 106
10471    callable_expr               go to state 107
10472    callable_variable           go to state 108
10473    variable                    go to state 109
10474    simple_variable             go to state 110
10475    static_member               go to state 111
10476    internal_functions_in_yacc  go to state 112
10477
10478
10479State 273
10480
10481  439 callable_variable: dereferencable "-> (T_OBJECT_OPERATOR)" . property_name argument_list
10482  443 variable: dereferencable "-> (T_OBJECT_OPERATOR)" . property_name
10483
10484    "identifier (T_STRING)"  shift, and go to state 515
10485    "variable (T_VARIABLE)"  shift, and go to state 35
10486    '{'                      shift, and go to state 516
10487    '$'                      shift, and go to state 82
10488
10489    simple_variable  go to state 517
10490    property_name    go to state 518
10491
10492
10493State 274
10494
10495  438 callable_variable: dereferencable '{' . expr '}'
10496
10497    "include (T_INCLUDE)"                         shift, and go to state 4
10498    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
10499    "eval (T_EVAL)"                               shift, and go to state 6
10500    "require (T_REQUIRE)"                         shift, and go to state 7
10501    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
10502    "print (T_PRINT)"                             shift, and go to state 9
10503    "yield (T_YIELD)"                             shift, and go to state 10
10504    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
10505    '+'                                           shift, and go to state 12
10506    '-'                                           shift, and go to state 13
10507    '!'                                           shift, and go to state 14
10508    '~'                                           shift, and go to state 15
10509    "++ (T_INC)"                                  shift, and go to state 16
10510    "-- (T_DEC)"                                  shift, and go to state 17
10511    "(int) (T_INT_CAST)"                          shift, and go to state 18
10512    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
10513    "(string) (T_STRING_CAST)"                    shift, and go to state 20
10514    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
10515    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
10516    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
10517    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
10518    '@'                                           shift, and go to state 25
10519    '['                                           shift, and go to state 26
10520    "new (T_NEW)"                                 shift, and go to state 27
10521    "clone (T_CLONE)"                             shift, and go to state 28
10522    "static (T_STATIC)"                           shift, and go to state 113
10523    "integer number (T_LNUMBER)"                  shift, and go to state 32
10524    "floating-point number (T_DNUMBER)"           shift, and go to state 33
10525    "identifier (T_STRING)"                       shift, and go to state 114
10526    "variable (T_VARIABLE)"                       shift, and go to state 35
10527    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
10528    "exit (T_EXIT)"                               shift, and go to state 38
10529    "function (T_FUNCTION)"                       shift, and go to state 50
10530    "isset (T_ISSET)"                             shift, and go to state 58
10531    "empty (T_EMPTY)"                             shift, and go to state 59
10532    "list (T_LIST)"                               shift, and go to state 64
10533    "array (T_ARRAY)"                             shift, and go to state 65
10534    "__LINE__ (T_LINE)"                           shift, and go to state 66
10535    "__FILE__ (T_FILE)"                           shift, and go to state 67
10536    "__DIR__ (T_DIR)"                             shift, and go to state 68
10537    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
10538    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
10539    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
10540    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
10541    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
10542    "namespace (T_NAMESPACE)"                     shift, and go to state 115
10543    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
10544    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
10545    '('                                           shift, and go to state 77
10546    '`'                                           shift, and go to state 80
10547    '"'                                           shift, and go to state 81
10548    '$'                                           shift, and go to state 82
10549
10550    namespace_name              go to state 83
10551    name                        go to state 84
10552    new_expr                    go to state 97
10553    expr                        go to state 519
10554    function                    go to state 117
10555    function_call               go to state 100
10556    class_name                  go to state 101
10557    dereferencable_scalar       go to state 102
10558    scalar                      go to state 103
10559    constant                    go to state 104
10560    variable_class_name         go to state 105
10561    dereferencable              go to state 106
10562    callable_expr               go to state 107
10563    callable_variable           go to state 108
10564    variable                    go to state 109
10565    simple_variable             go to state 110
10566    static_member               go to state 111
10567    internal_functions_in_yacc  go to state 112
10568
10569
10570State 275
10571
10572  392 function_call: callable_expr argument_list .
10573
10574    $default  reduce using rule 392 (function_call)
10575
10576
10577State 276
10578
10579  304 expr: variable '=' . expr
10580  305     | variable '=' . '&' variable
10581
10582    "include (T_INCLUDE)"                         shift, and go to state 4
10583    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
10584    "eval (T_EVAL)"                               shift, and go to state 6
10585    "require (T_REQUIRE)"                         shift, and go to state 7
10586    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
10587    "print (T_PRINT)"                             shift, and go to state 9
10588    "yield (T_YIELD)"                             shift, and go to state 10
10589    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
10590    '&'                                           shift, and go to state 520
10591    '+'                                           shift, and go to state 12
10592    '-'                                           shift, and go to state 13
10593    '!'                                           shift, and go to state 14
10594    '~'                                           shift, and go to state 15
10595    "++ (T_INC)"                                  shift, and go to state 16
10596    "-- (T_DEC)"                                  shift, and go to state 17
10597    "(int) (T_INT_CAST)"                          shift, and go to state 18
10598    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
10599    "(string) (T_STRING_CAST)"                    shift, and go to state 20
10600    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
10601    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
10602    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
10603    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
10604    '@'                                           shift, and go to state 25
10605    '['                                           shift, and go to state 26
10606    "new (T_NEW)"                                 shift, and go to state 27
10607    "clone (T_CLONE)"                             shift, and go to state 28
10608    "static (T_STATIC)"                           shift, and go to state 113
10609    "integer number (T_LNUMBER)"                  shift, and go to state 32
10610    "floating-point number (T_DNUMBER)"           shift, and go to state 33
10611    "identifier (T_STRING)"                       shift, and go to state 114
10612    "variable (T_VARIABLE)"                       shift, and go to state 35
10613    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
10614    "exit (T_EXIT)"                               shift, and go to state 38
10615    "function (T_FUNCTION)"                       shift, and go to state 50
10616    "isset (T_ISSET)"                             shift, and go to state 58
10617    "empty (T_EMPTY)"                             shift, and go to state 59
10618    "list (T_LIST)"                               shift, and go to state 64
10619    "array (T_ARRAY)"                             shift, and go to state 65
10620    "__LINE__ (T_LINE)"                           shift, and go to state 66
10621    "__FILE__ (T_FILE)"                           shift, and go to state 67
10622    "__DIR__ (T_DIR)"                             shift, and go to state 68
10623    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
10624    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
10625    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
10626    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
10627    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
10628    "namespace (T_NAMESPACE)"                     shift, and go to state 115
10629    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
10630    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
10631    '('                                           shift, and go to state 77
10632    '`'                                           shift, and go to state 80
10633    '"'                                           shift, and go to state 81
10634    '$'                                           shift, and go to state 82
10635
10636    namespace_name              go to state 83
10637    name                        go to state 84
10638    new_expr                    go to state 97
10639    expr                        go to state 521
10640    function                    go to state 117
10641    function_call               go to state 100
10642    class_name                  go to state 101
10643    dereferencable_scalar       go to state 102
10644    scalar                      go to state 103
10645    constant                    go to state 104
10646    variable_class_name         go to state 105
10647    dereferencable              go to state 106
10648    callable_expr               go to state 107
10649    callable_variable           go to state 108
10650    variable                    go to state 109
10651    simple_variable             go to state 110
10652    static_member               go to state 111
10653    internal_functions_in_yacc  go to state 112
10654
10655
10656State 277
10657
10658  307 expr: variable "+= (T_PLUS_EQUAL)" . expr
10659
10660    "include (T_INCLUDE)"                         shift, and go to state 4
10661    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
10662    "eval (T_EVAL)"                               shift, and go to state 6
10663    "require (T_REQUIRE)"                         shift, and go to state 7
10664    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
10665    "print (T_PRINT)"                             shift, and go to state 9
10666    "yield (T_YIELD)"                             shift, and go to state 10
10667    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
10668    '+'                                           shift, and go to state 12
10669    '-'                                           shift, and go to state 13
10670    '!'                                           shift, and go to state 14
10671    '~'                                           shift, and go to state 15
10672    "++ (T_INC)"                                  shift, and go to state 16
10673    "-- (T_DEC)"                                  shift, and go to state 17
10674    "(int) (T_INT_CAST)"                          shift, and go to state 18
10675    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
10676    "(string) (T_STRING_CAST)"                    shift, and go to state 20
10677    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
10678    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
10679    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
10680    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
10681    '@'                                           shift, and go to state 25
10682    '['                                           shift, and go to state 26
10683    "new (T_NEW)"                                 shift, and go to state 27
10684    "clone (T_CLONE)"                             shift, and go to state 28
10685    "static (T_STATIC)"                           shift, and go to state 113
10686    "integer number (T_LNUMBER)"                  shift, and go to state 32
10687    "floating-point number (T_DNUMBER)"           shift, and go to state 33
10688    "identifier (T_STRING)"                       shift, and go to state 114
10689    "variable (T_VARIABLE)"                       shift, and go to state 35
10690    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
10691    "exit (T_EXIT)"                               shift, and go to state 38
10692    "function (T_FUNCTION)"                       shift, and go to state 50
10693    "isset (T_ISSET)"                             shift, and go to state 58
10694    "empty (T_EMPTY)"                             shift, and go to state 59
10695    "list (T_LIST)"                               shift, and go to state 64
10696    "array (T_ARRAY)"                             shift, and go to state 65
10697    "__LINE__ (T_LINE)"                           shift, and go to state 66
10698    "__FILE__ (T_FILE)"                           shift, and go to state 67
10699    "__DIR__ (T_DIR)"                             shift, and go to state 68
10700    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
10701    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
10702    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
10703    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
10704    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
10705    "namespace (T_NAMESPACE)"                     shift, and go to state 115
10706    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
10707    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
10708    '('                                           shift, and go to state 77
10709    '`'                                           shift, and go to state 80
10710    '"'                                           shift, and go to state 81
10711    '$'                                           shift, and go to state 82
10712
10713    namespace_name              go to state 83
10714    name                        go to state 84
10715    new_expr                    go to state 97
10716    expr                        go to state 522
10717    function                    go to state 117
10718    function_call               go to state 100
10719    class_name                  go to state 101
10720    dereferencable_scalar       go to state 102
10721    scalar                      go to state 103
10722    constant                    go to state 104
10723    variable_class_name         go to state 105
10724    dereferencable              go to state 106
10725    callable_expr               go to state 107
10726    callable_variable           go to state 108
10727    variable                    go to state 109
10728    simple_variable             go to state 110
10729    static_member               go to state 111
10730    internal_functions_in_yacc  go to state 112
10731
10732
10733State 278
10734
10735  308 expr: variable "-= (T_MINUS_EQUAL)" . expr
10736
10737    "include (T_INCLUDE)"                         shift, and go to state 4
10738    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
10739    "eval (T_EVAL)"                               shift, and go to state 6
10740    "require (T_REQUIRE)"                         shift, and go to state 7
10741    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
10742    "print (T_PRINT)"                             shift, and go to state 9
10743    "yield (T_YIELD)"                             shift, and go to state 10
10744    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
10745    '+'                                           shift, and go to state 12
10746    '-'                                           shift, and go to state 13
10747    '!'                                           shift, and go to state 14
10748    '~'                                           shift, and go to state 15
10749    "++ (T_INC)"                                  shift, and go to state 16
10750    "-- (T_DEC)"                                  shift, and go to state 17
10751    "(int) (T_INT_CAST)"                          shift, and go to state 18
10752    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
10753    "(string) (T_STRING_CAST)"                    shift, and go to state 20
10754    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
10755    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
10756    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
10757    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
10758    '@'                                           shift, and go to state 25
10759    '['                                           shift, and go to state 26
10760    "new (T_NEW)"                                 shift, and go to state 27
10761    "clone (T_CLONE)"                             shift, and go to state 28
10762    "static (T_STATIC)"                           shift, and go to state 113
10763    "integer number (T_LNUMBER)"                  shift, and go to state 32
10764    "floating-point number (T_DNUMBER)"           shift, and go to state 33
10765    "identifier (T_STRING)"                       shift, and go to state 114
10766    "variable (T_VARIABLE)"                       shift, and go to state 35
10767    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
10768    "exit (T_EXIT)"                               shift, and go to state 38
10769    "function (T_FUNCTION)"                       shift, and go to state 50
10770    "isset (T_ISSET)"                             shift, and go to state 58
10771    "empty (T_EMPTY)"                             shift, and go to state 59
10772    "list (T_LIST)"                               shift, and go to state 64
10773    "array (T_ARRAY)"                             shift, and go to state 65
10774    "__LINE__ (T_LINE)"                           shift, and go to state 66
10775    "__FILE__ (T_FILE)"                           shift, and go to state 67
10776    "__DIR__ (T_DIR)"                             shift, and go to state 68
10777    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
10778    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
10779    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
10780    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
10781    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
10782    "namespace (T_NAMESPACE)"                     shift, and go to state 115
10783    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
10784    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
10785    '('                                           shift, and go to state 77
10786    '`'                                           shift, and go to state 80
10787    '"'                                           shift, and go to state 81
10788    '$'                                           shift, and go to state 82
10789
10790    namespace_name              go to state 83
10791    name                        go to state 84
10792    new_expr                    go to state 97
10793    expr                        go to state 523
10794    function                    go to state 117
10795    function_call               go to state 100
10796    class_name                  go to state 101
10797    dereferencable_scalar       go to state 102
10798    scalar                      go to state 103
10799    constant                    go to state 104
10800    variable_class_name         go to state 105
10801    dereferencable              go to state 106
10802    callable_expr               go to state 107
10803    callable_variable           go to state 108
10804    variable                    go to state 109
10805    simple_variable             go to state 110
10806    static_member               go to state 111
10807    internal_functions_in_yacc  go to state 112
10808
10809
10810State 279
10811
10812  309 expr: variable "*= (T_MUL_EQUAL)" . expr
10813
10814    "include (T_INCLUDE)"                         shift, and go to state 4
10815    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
10816    "eval (T_EVAL)"                               shift, and go to state 6
10817    "require (T_REQUIRE)"                         shift, and go to state 7
10818    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
10819    "print (T_PRINT)"                             shift, and go to state 9
10820    "yield (T_YIELD)"                             shift, and go to state 10
10821    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
10822    '+'                                           shift, and go to state 12
10823    '-'                                           shift, and go to state 13
10824    '!'                                           shift, and go to state 14
10825    '~'                                           shift, and go to state 15
10826    "++ (T_INC)"                                  shift, and go to state 16
10827    "-- (T_DEC)"                                  shift, and go to state 17
10828    "(int) (T_INT_CAST)"                          shift, and go to state 18
10829    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
10830    "(string) (T_STRING_CAST)"                    shift, and go to state 20
10831    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
10832    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
10833    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
10834    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
10835    '@'                                           shift, and go to state 25
10836    '['                                           shift, and go to state 26
10837    "new (T_NEW)"                                 shift, and go to state 27
10838    "clone (T_CLONE)"                             shift, and go to state 28
10839    "static (T_STATIC)"                           shift, and go to state 113
10840    "integer number (T_LNUMBER)"                  shift, and go to state 32
10841    "floating-point number (T_DNUMBER)"           shift, and go to state 33
10842    "identifier (T_STRING)"                       shift, and go to state 114
10843    "variable (T_VARIABLE)"                       shift, and go to state 35
10844    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
10845    "exit (T_EXIT)"                               shift, and go to state 38
10846    "function (T_FUNCTION)"                       shift, and go to state 50
10847    "isset (T_ISSET)"                             shift, and go to state 58
10848    "empty (T_EMPTY)"                             shift, and go to state 59
10849    "list (T_LIST)"                               shift, and go to state 64
10850    "array (T_ARRAY)"                             shift, and go to state 65
10851    "__LINE__ (T_LINE)"                           shift, and go to state 66
10852    "__FILE__ (T_FILE)"                           shift, and go to state 67
10853    "__DIR__ (T_DIR)"                             shift, and go to state 68
10854    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
10855    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
10856    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
10857    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
10858    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
10859    "namespace (T_NAMESPACE)"                     shift, and go to state 115
10860    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
10861    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
10862    '('                                           shift, and go to state 77
10863    '`'                                           shift, and go to state 80
10864    '"'                                           shift, and go to state 81
10865    '$'                                           shift, and go to state 82
10866
10867    namespace_name              go to state 83
10868    name                        go to state 84
10869    new_expr                    go to state 97
10870    expr                        go to state 524
10871    function                    go to state 117
10872    function_call               go to state 100
10873    class_name                  go to state 101
10874    dereferencable_scalar       go to state 102
10875    scalar                      go to state 103
10876    constant                    go to state 104
10877    variable_class_name         go to state 105
10878    dereferencable              go to state 106
10879    callable_expr               go to state 107
10880    callable_variable           go to state 108
10881    variable                    go to state 109
10882    simple_variable             go to state 110
10883    static_member               go to state 111
10884    internal_functions_in_yacc  go to state 112
10885
10886
10887State 280
10888
10889  311 expr: variable "/= (T_DIV_EQUAL)" . expr
10890
10891    "include (T_INCLUDE)"                         shift, and go to state 4
10892    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
10893    "eval (T_EVAL)"                               shift, and go to state 6
10894    "require (T_REQUIRE)"                         shift, and go to state 7
10895    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
10896    "print (T_PRINT)"                             shift, and go to state 9
10897    "yield (T_YIELD)"                             shift, and go to state 10
10898    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
10899    '+'                                           shift, and go to state 12
10900    '-'                                           shift, and go to state 13
10901    '!'                                           shift, and go to state 14
10902    '~'                                           shift, and go to state 15
10903    "++ (T_INC)"                                  shift, and go to state 16
10904    "-- (T_DEC)"                                  shift, and go to state 17
10905    "(int) (T_INT_CAST)"                          shift, and go to state 18
10906    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
10907    "(string) (T_STRING_CAST)"                    shift, and go to state 20
10908    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
10909    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
10910    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
10911    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
10912    '@'                                           shift, and go to state 25
10913    '['                                           shift, and go to state 26
10914    "new (T_NEW)"                                 shift, and go to state 27
10915    "clone (T_CLONE)"                             shift, and go to state 28
10916    "static (T_STATIC)"                           shift, and go to state 113
10917    "integer number (T_LNUMBER)"                  shift, and go to state 32
10918    "floating-point number (T_DNUMBER)"           shift, and go to state 33
10919    "identifier (T_STRING)"                       shift, and go to state 114
10920    "variable (T_VARIABLE)"                       shift, and go to state 35
10921    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
10922    "exit (T_EXIT)"                               shift, and go to state 38
10923    "function (T_FUNCTION)"                       shift, and go to state 50
10924    "isset (T_ISSET)"                             shift, and go to state 58
10925    "empty (T_EMPTY)"                             shift, and go to state 59
10926    "list (T_LIST)"                               shift, and go to state 64
10927    "array (T_ARRAY)"                             shift, and go to state 65
10928    "__LINE__ (T_LINE)"                           shift, and go to state 66
10929    "__FILE__ (T_FILE)"                           shift, and go to state 67
10930    "__DIR__ (T_DIR)"                             shift, and go to state 68
10931    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
10932    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
10933    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
10934    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
10935    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
10936    "namespace (T_NAMESPACE)"                     shift, and go to state 115
10937    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
10938    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
10939    '('                                           shift, and go to state 77
10940    '`'                                           shift, and go to state 80
10941    '"'                                           shift, and go to state 81
10942    '$'                                           shift, and go to state 82
10943
10944    namespace_name              go to state 83
10945    name                        go to state 84
10946    new_expr                    go to state 97
10947    expr                        go to state 525
10948    function                    go to state 117
10949    function_call               go to state 100
10950    class_name                  go to state 101
10951    dereferencable_scalar       go to state 102
10952    scalar                      go to state 103
10953    constant                    go to state 104
10954    variable_class_name         go to state 105
10955    dereferencable              go to state 106
10956    callable_expr               go to state 107
10957    callable_variable           go to state 108
10958    variable                    go to state 109
10959    simple_variable             go to state 110
10960    static_member               go to state 111
10961    internal_functions_in_yacc  go to state 112
10962
10963
10964State 281
10965
10966  312 expr: variable ".= (T_CONCAT_EQUAL)" . expr
10967
10968    "include (T_INCLUDE)"                         shift, and go to state 4
10969    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
10970    "eval (T_EVAL)"                               shift, and go to state 6
10971    "require (T_REQUIRE)"                         shift, and go to state 7
10972    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
10973    "print (T_PRINT)"                             shift, and go to state 9
10974    "yield (T_YIELD)"                             shift, and go to state 10
10975    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
10976    '+'                                           shift, and go to state 12
10977    '-'                                           shift, and go to state 13
10978    '!'                                           shift, and go to state 14
10979    '~'                                           shift, and go to state 15
10980    "++ (T_INC)"                                  shift, and go to state 16
10981    "-- (T_DEC)"                                  shift, and go to state 17
10982    "(int) (T_INT_CAST)"                          shift, and go to state 18
10983    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
10984    "(string) (T_STRING_CAST)"                    shift, and go to state 20
10985    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
10986    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
10987    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
10988    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
10989    '@'                                           shift, and go to state 25
10990    '['                                           shift, and go to state 26
10991    "new (T_NEW)"                                 shift, and go to state 27
10992    "clone (T_CLONE)"                             shift, and go to state 28
10993    "static (T_STATIC)"                           shift, and go to state 113
10994    "integer number (T_LNUMBER)"                  shift, and go to state 32
10995    "floating-point number (T_DNUMBER)"           shift, and go to state 33
10996    "identifier (T_STRING)"                       shift, and go to state 114
10997    "variable (T_VARIABLE)"                       shift, and go to state 35
10998    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
10999    "exit (T_EXIT)"                               shift, and go to state 38
11000    "function (T_FUNCTION)"                       shift, and go to state 50
11001    "isset (T_ISSET)"                             shift, and go to state 58
11002    "empty (T_EMPTY)"                             shift, and go to state 59
11003    "list (T_LIST)"                               shift, and go to state 64
11004    "array (T_ARRAY)"                             shift, and go to state 65
11005    "__LINE__ (T_LINE)"                           shift, and go to state 66
11006    "__FILE__ (T_FILE)"                           shift, and go to state 67
11007    "__DIR__ (T_DIR)"                             shift, and go to state 68
11008    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
11009    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
11010    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
11011    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
11012    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
11013    "namespace (T_NAMESPACE)"                     shift, and go to state 115
11014    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
11015    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
11016    '('                                           shift, and go to state 77
11017    '`'                                           shift, and go to state 80
11018    '"'                                           shift, and go to state 81
11019    '$'                                           shift, and go to state 82
11020
11021    namespace_name              go to state 83
11022    name                        go to state 84
11023    new_expr                    go to state 97
11024    expr                        go to state 526
11025    function                    go to state 117
11026    function_call               go to state 100
11027    class_name                  go to state 101
11028    dereferencable_scalar       go to state 102
11029    scalar                      go to state 103
11030    constant                    go to state 104
11031    variable_class_name         go to state 105
11032    dereferencable              go to state 106
11033    callable_expr               go to state 107
11034    callable_variable           go to state 108
11035    variable                    go to state 109
11036    simple_variable             go to state 110
11037    static_member               go to state 111
11038    internal_functions_in_yacc  go to state 112
11039
11040
11041State 282
11042
11043  313 expr: variable "%= (T_MOD_EQUAL)" . expr
11044
11045    "include (T_INCLUDE)"                         shift, and go to state 4
11046    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
11047    "eval (T_EVAL)"                               shift, and go to state 6
11048    "require (T_REQUIRE)"                         shift, and go to state 7
11049    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
11050    "print (T_PRINT)"                             shift, and go to state 9
11051    "yield (T_YIELD)"                             shift, and go to state 10
11052    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
11053    '+'                                           shift, and go to state 12
11054    '-'                                           shift, and go to state 13
11055    '!'                                           shift, and go to state 14
11056    '~'                                           shift, and go to state 15
11057    "++ (T_INC)"                                  shift, and go to state 16
11058    "-- (T_DEC)"                                  shift, and go to state 17
11059    "(int) (T_INT_CAST)"                          shift, and go to state 18
11060    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
11061    "(string) (T_STRING_CAST)"                    shift, and go to state 20
11062    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
11063    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
11064    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
11065    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
11066    '@'                                           shift, and go to state 25
11067    '['                                           shift, and go to state 26
11068    "new (T_NEW)"                                 shift, and go to state 27
11069    "clone (T_CLONE)"                             shift, and go to state 28
11070    "static (T_STATIC)"                           shift, and go to state 113
11071    "integer number (T_LNUMBER)"                  shift, and go to state 32
11072    "floating-point number (T_DNUMBER)"           shift, and go to state 33
11073    "identifier (T_STRING)"                       shift, and go to state 114
11074    "variable (T_VARIABLE)"                       shift, and go to state 35
11075    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
11076    "exit (T_EXIT)"                               shift, and go to state 38
11077    "function (T_FUNCTION)"                       shift, and go to state 50
11078    "isset (T_ISSET)"                             shift, and go to state 58
11079    "empty (T_EMPTY)"                             shift, and go to state 59
11080    "list (T_LIST)"                               shift, and go to state 64
11081    "array (T_ARRAY)"                             shift, and go to state 65
11082    "__LINE__ (T_LINE)"                           shift, and go to state 66
11083    "__FILE__ (T_FILE)"                           shift, and go to state 67
11084    "__DIR__ (T_DIR)"                             shift, and go to state 68
11085    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
11086    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
11087    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
11088    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
11089    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
11090    "namespace (T_NAMESPACE)"                     shift, and go to state 115
11091    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
11092    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
11093    '('                                           shift, and go to state 77
11094    '`'                                           shift, and go to state 80
11095    '"'                                           shift, and go to state 81
11096    '$'                                           shift, and go to state 82
11097
11098    namespace_name              go to state 83
11099    name                        go to state 84
11100    new_expr                    go to state 97
11101    expr                        go to state 527
11102    function                    go to state 117
11103    function_call               go to state 100
11104    class_name                  go to state 101
11105    dereferencable_scalar       go to state 102
11106    scalar                      go to state 103
11107    constant                    go to state 104
11108    variable_class_name         go to state 105
11109    dereferencable              go to state 106
11110    callable_expr               go to state 107
11111    callable_variable           go to state 108
11112    variable                    go to state 109
11113    simple_variable             go to state 110
11114    static_member               go to state 111
11115    internal_functions_in_yacc  go to state 112
11116
11117
11118State 283
11119
11120  314 expr: variable "&= (T_AND_EQUAL)" . expr
11121
11122    "include (T_INCLUDE)"                         shift, and go to state 4
11123    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
11124    "eval (T_EVAL)"                               shift, and go to state 6
11125    "require (T_REQUIRE)"                         shift, and go to state 7
11126    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
11127    "print (T_PRINT)"                             shift, and go to state 9
11128    "yield (T_YIELD)"                             shift, and go to state 10
11129    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
11130    '+'                                           shift, and go to state 12
11131    '-'                                           shift, and go to state 13
11132    '!'                                           shift, and go to state 14
11133    '~'                                           shift, and go to state 15
11134    "++ (T_INC)"                                  shift, and go to state 16
11135    "-- (T_DEC)"                                  shift, and go to state 17
11136    "(int) (T_INT_CAST)"                          shift, and go to state 18
11137    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
11138    "(string) (T_STRING_CAST)"                    shift, and go to state 20
11139    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
11140    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
11141    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
11142    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
11143    '@'                                           shift, and go to state 25
11144    '['                                           shift, and go to state 26
11145    "new (T_NEW)"                                 shift, and go to state 27
11146    "clone (T_CLONE)"                             shift, and go to state 28
11147    "static (T_STATIC)"                           shift, and go to state 113
11148    "integer number (T_LNUMBER)"                  shift, and go to state 32
11149    "floating-point number (T_DNUMBER)"           shift, and go to state 33
11150    "identifier (T_STRING)"                       shift, and go to state 114
11151    "variable (T_VARIABLE)"                       shift, and go to state 35
11152    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
11153    "exit (T_EXIT)"                               shift, and go to state 38
11154    "function (T_FUNCTION)"                       shift, and go to state 50
11155    "isset (T_ISSET)"                             shift, and go to state 58
11156    "empty (T_EMPTY)"                             shift, and go to state 59
11157    "list (T_LIST)"                               shift, and go to state 64
11158    "array (T_ARRAY)"                             shift, and go to state 65
11159    "__LINE__ (T_LINE)"                           shift, and go to state 66
11160    "__FILE__ (T_FILE)"                           shift, and go to state 67
11161    "__DIR__ (T_DIR)"                             shift, and go to state 68
11162    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
11163    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
11164    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
11165    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
11166    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
11167    "namespace (T_NAMESPACE)"                     shift, and go to state 115
11168    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
11169    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
11170    '('                                           shift, and go to state 77
11171    '`'                                           shift, and go to state 80
11172    '"'                                           shift, and go to state 81
11173    '$'                                           shift, and go to state 82
11174
11175    namespace_name              go to state 83
11176    name                        go to state 84
11177    new_expr                    go to state 97
11178    expr                        go to state 528
11179    function                    go to state 117
11180    function_call               go to state 100
11181    class_name                  go to state 101
11182    dereferencable_scalar       go to state 102
11183    scalar                      go to state 103
11184    constant                    go to state 104
11185    variable_class_name         go to state 105
11186    dereferencable              go to state 106
11187    callable_expr               go to state 107
11188    callable_variable           go to state 108
11189    variable                    go to state 109
11190    simple_variable             go to state 110
11191    static_member               go to state 111
11192    internal_functions_in_yacc  go to state 112
11193
11194
11195State 284
11196
11197  315 expr: variable "|= (T_OR_EQUAL)" . expr
11198
11199    "include (T_INCLUDE)"                         shift, and go to state 4
11200    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
11201    "eval (T_EVAL)"                               shift, and go to state 6
11202    "require (T_REQUIRE)"                         shift, and go to state 7
11203    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
11204    "print (T_PRINT)"                             shift, and go to state 9
11205    "yield (T_YIELD)"                             shift, and go to state 10
11206    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
11207    '+'                                           shift, and go to state 12
11208    '-'                                           shift, and go to state 13
11209    '!'                                           shift, and go to state 14
11210    '~'                                           shift, and go to state 15
11211    "++ (T_INC)"                                  shift, and go to state 16
11212    "-- (T_DEC)"                                  shift, and go to state 17
11213    "(int) (T_INT_CAST)"                          shift, and go to state 18
11214    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
11215    "(string) (T_STRING_CAST)"                    shift, and go to state 20
11216    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
11217    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
11218    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
11219    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
11220    '@'                                           shift, and go to state 25
11221    '['                                           shift, and go to state 26
11222    "new (T_NEW)"                                 shift, and go to state 27
11223    "clone (T_CLONE)"                             shift, and go to state 28
11224    "static (T_STATIC)"                           shift, and go to state 113
11225    "integer number (T_LNUMBER)"                  shift, and go to state 32
11226    "floating-point number (T_DNUMBER)"           shift, and go to state 33
11227    "identifier (T_STRING)"                       shift, and go to state 114
11228    "variable (T_VARIABLE)"                       shift, and go to state 35
11229    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
11230    "exit (T_EXIT)"                               shift, and go to state 38
11231    "function (T_FUNCTION)"                       shift, and go to state 50
11232    "isset (T_ISSET)"                             shift, and go to state 58
11233    "empty (T_EMPTY)"                             shift, and go to state 59
11234    "list (T_LIST)"                               shift, and go to state 64
11235    "array (T_ARRAY)"                             shift, and go to state 65
11236    "__LINE__ (T_LINE)"                           shift, and go to state 66
11237    "__FILE__ (T_FILE)"                           shift, and go to state 67
11238    "__DIR__ (T_DIR)"                             shift, and go to state 68
11239    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
11240    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
11241    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
11242    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
11243    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
11244    "namespace (T_NAMESPACE)"                     shift, and go to state 115
11245    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
11246    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
11247    '('                                           shift, and go to state 77
11248    '`'                                           shift, and go to state 80
11249    '"'                                           shift, and go to state 81
11250    '$'                                           shift, and go to state 82
11251
11252    namespace_name              go to state 83
11253    name                        go to state 84
11254    new_expr                    go to state 97
11255    expr                        go to state 529
11256    function                    go to state 117
11257    function_call               go to state 100
11258    class_name                  go to state 101
11259    dereferencable_scalar       go to state 102
11260    scalar                      go to state 103
11261    constant                    go to state 104
11262    variable_class_name         go to state 105
11263    dereferencable              go to state 106
11264    callable_expr               go to state 107
11265    callable_variable           go to state 108
11266    variable                    go to state 109
11267    simple_variable             go to state 110
11268    static_member               go to state 111
11269    internal_functions_in_yacc  go to state 112
11270
11271
11272State 285
11273
11274  316 expr: variable "^= (T_XOR_EQUAL)" . expr
11275
11276    "include (T_INCLUDE)"                         shift, and go to state 4
11277    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
11278    "eval (T_EVAL)"                               shift, and go to state 6
11279    "require (T_REQUIRE)"                         shift, and go to state 7
11280    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
11281    "print (T_PRINT)"                             shift, and go to state 9
11282    "yield (T_YIELD)"                             shift, and go to state 10
11283    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
11284    '+'                                           shift, and go to state 12
11285    '-'                                           shift, and go to state 13
11286    '!'                                           shift, and go to state 14
11287    '~'                                           shift, and go to state 15
11288    "++ (T_INC)"                                  shift, and go to state 16
11289    "-- (T_DEC)"                                  shift, and go to state 17
11290    "(int) (T_INT_CAST)"                          shift, and go to state 18
11291    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
11292    "(string) (T_STRING_CAST)"                    shift, and go to state 20
11293    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
11294    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
11295    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
11296    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
11297    '@'                                           shift, and go to state 25
11298    '['                                           shift, and go to state 26
11299    "new (T_NEW)"                                 shift, and go to state 27
11300    "clone (T_CLONE)"                             shift, and go to state 28
11301    "static (T_STATIC)"                           shift, and go to state 113
11302    "integer number (T_LNUMBER)"                  shift, and go to state 32
11303    "floating-point number (T_DNUMBER)"           shift, and go to state 33
11304    "identifier (T_STRING)"                       shift, and go to state 114
11305    "variable (T_VARIABLE)"                       shift, and go to state 35
11306    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
11307    "exit (T_EXIT)"                               shift, and go to state 38
11308    "function (T_FUNCTION)"                       shift, and go to state 50
11309    "isset (T_ISSET)"                             shift, and go to state 58
11310    "empty (T_EMPTY)"                             shift, and go to state 59
11311    "list (T_LIST)"                               shift, and go to state 64
11312    "array (T_ARRAY)"                             shift, and go to state 65
11313    "__LINE__ (T_LINE)"                           shift, and go to state 66
11314    "__FILE__ (T_FILE)"                           shift, and go to state 67
11315    "__DIR__ (T_DIR)"                             shift, and go to state 68
11316    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
11317    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
11318    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
11319    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
11320    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
11321    "namespace (T_NAMESPACE)"                     shift, and go to state 115
11322    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
11323    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
11324    '('                                           shift, and go to state 77
11325    '`'                                           shift, and go to state 80
11326    '"'                                           shift, and go to state 81
11327    '$'                                           shift, and go to state 82
11328
11329    namespace_name              go to state 83
11330    name                        go to state 84
11331    new_expr                    go to state 97
11332    expr                        go to state 530
11333    function                    go to state 117
11334    function_call               go to state 100
11335    class_name                  go to state 101
11336    dereferencable_scalar       go to state 102
11337    scalar                      go to state 103
11338    constant                    go to state 104
11339    variable_class_name         go to state 105
11340    dereferencable              go to state 106
11341    callable_expr               go to state 107
11342    callable_variable           go to state 108
11343    variable                    go to state 109
11344    simple_variable             go to state 110
11345    static_member               go to state 111
11346    internal_functions_in_yacc  go to state 112
11347
11348
11349State 286
11350
11351  317 expr: variable "<<= (T_SL_EQUAL)" . expr
11352
11353    "include (T_INCLUDE)"                         shift, and go to state 4
11354    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
11355    "eval (T_EVAL)"                               shift, and go to state 6
11356    "require (T_REQUIRE)"                         shift, and go to state 7
11357    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
11358    "print (T_PRINT)"                             shift, and go to state 9
11359    "yield (T_YIELD)"                             shift, and go to state 10
11360    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
11361    '+'                                           shift, and go to state 12
11362    '-'                                           shift, and go to state 13
11363    '!'                                           shift, and go to state 14
11364    '~'                                           shift, and go to state 15
11365    "++ (T_INC)"                                  shift, and go to state 16
11366    "-- (T_DEC)"                                  shift, and go to state 17
11367    "(int) (T_INT_CAST)"                          shift, and go to state 18
11368    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
11369    "(string) (T_STRING_CAST)"                    shift, and go to state 20
11370    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
11371    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
11372    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
11373    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
11374    '@'                                           shift, and go to state 25
11375    '['                                           shift, and go to state 26
11376    "new (T_NEW)"                                 shift, and go to state 27
11377    "clone (T_CLONE)"                             shift, and go to state 28
11378    "static (T_STATIC)"                           shift, and go to state 113
11379    "integer number (T_LNUMBER)"                  shift, and go to state 32
11380    "floating-point number (T_DNUMBER)"           shift, and go to state 33
11381    "identifier (T_STRING)"                       shift, and go to state 114
11382    "variable (T_VARIABLE)"                       shift, and go to state 35
11383    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
11384    "exit (T_EXIT)"                               shift, and go to state 38
11385    "function (T_FUNCTION)"                       shift, and go to state 50
11386    "isset (T_ISSET)"                             shift, and go to state 58
11387    "empty (T_EMPTY)"                             shift, and go to state 59
11388    "list (T_LIST)"                               shift, and go to state 64
11389    "array (T_ARRAY)"                             shift, and go to state 65
11390    "__LINE__ (T_LINE)"                           shift, and go to state 66
11391    "__FILE__ (T_FILE)"                           shift, and go to state 67
11392    "__DIR__ (T_DIR)"                             shift, and go to state 68
11393    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
11394    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
11395    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
11396    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
11397    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
11398    "namespace (T_NAMESPACE)"                     shift, and go to state 115
11399    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
11400    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
11401    '('                                           shift, and go to state 77
11402    '`'                                           shift, and go to state 80
11403    '"'                                           shift, and go to state 81
11404    '$'                                           shift, and go to state 82
11405
11406    namespace_name              go to state 83
11407    name                        go to state 84
11408    new_expr                    go to state 97
11409    expr                        go to state 531
11410    function                    go to state 117
11411    function_call               go to state 100
11412    class_name                  go to state 101
11413    dereferencable_scalar       go to state 102
11414    scalar                      go to state 103
11415    constant                    go to state 104
11416    variable_class_name         go to state 105
11417    dereferencable              go to state 106
11418    callable_expr               go to state 107
11419    callable_variable           go to state 108
11420    variable                    go to state 109
11421    simple_variable             go to state 110
11422    static_member               go to state 111
11423    internal_functions_in_yacc  go to state 112
11424
11425
11426State 287
11427
11428  318 expr: variable ">>= (T_SR_EQUAL)" . expr
11429
11430    "include (T_INCLUDE)"                         shift, and go to state 4
11431    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
11432    "eval (T_EVAL)"                               shift, and go to state 6
11433    "require (T_REQUIRE)"                         shift, and go to state 7
11434    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
11435    "print (T_PRINT)"                             shift, and go to state 9
11436    "yield (T_YIELD)"                             shift, and go to state 10
11437    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
11438    '+'                                           shift, and go to state 12
11439    '-'                                           shift, and go to state 13
11440    '!'                                           shift, and go to state 14
11441    '~'                                           shift, and go to state 15
11442    "++ (T_INC)"                                  shift, and go to state 16
11443    "-- (T_DEC)"                                  shift, and go to state 17
11444    "(int) (T_INT_CAST)"                          shift, and go to state 18
11445    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
11446    "(string) (T_STRING_CAST)"                    shift, and go to state 20
11447    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
11448    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
11449    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
11450    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
11451    '@'                                           shift, and go to state 25
11452    '['                                           shift, and go to state 26
11453    "new (T_NEW)"                                 shift, and go to state 27
11454    "clone (T_CLONE)"                             shift, and go to state 28
11455    "static (T_STATIC)"                           shift, and go to state 113
11456    "integer number (T_LNUMBER)"                  shift, and go to state 32
11457    "floating-point number (T_DNUMBER)"           shift, and go to state 33
11458    "identifier (T_STRING)"                       shift, and go to state 114
11459    "variable (T_VARIABLE)"                       shift, and go to state 35
11460    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
11461    "exit (T_EXIT)"                               shift, and go to state 38
11462    "function (T_FUNCTION)"                       shift, and go to state 50
11463    "isset (T_ISSET)"                             shift, and go to state 58
11464    "empty (T_EMPTY)"                             shift, and go to state 59
11465    "list (T_LIST)"                               shift, and go to state 64
11466    "array (T_ARRAY)"                             shift, and go to state 65
11467    "__LINE__ (T_LINE)"                           shift, and go to state 66
11468    "__FILE__ (T_FILE)"                           shift, and go to state 67
11469    "__DIR__ (T_DIR)"                             shift, and go to state 68
11470    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
11471    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
11472    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
11473    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
11474    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
11475    "namespace (T_NAMESPACE)"                     shift, and go to state 115
11476    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
11477    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
11478    '('                                           shift, and go to state 77
11479    '`'                                           shift, and go to state 80
11480    '"'                                           shift, and go to state 81
11481    '$'                                           shift, and go to state 82
11482
11483    namespace_name              go to state 83
11484    name                        go to state 84
11485    new_expr                    go to state 97
11486    expr                        go to state 532
11487    function                    go to state 117
11488    function_call               go to state 100
11489    class_name                  go to state 101
11490    dereferencable_scalar       go to state 102
11491    scalar                      go to state 103
11492    constant                    go to state 104
11493    variable_class_name         go to state 105
11494    dereferencable              go to state 106
11495    callable_expr               go to state 107
11496    callable_variable           go to state 108
11497    variable                    go to state 109
11498    simple_variable             go to state 110
11499    static_member               go to state 111
11500    internal_functions_in_yacc  go to state 112
11501
11502
11503State 288
11504
11505  310 expr: variable "**= (T_POW_EQUAL)" . expr
11506
11507    "include (T_INCLUDE)"                         shift, and go to state 4
11508    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
11509    "eval (T_EVAL)"                               shift, and go to state 6
11510    "require (T_REQUIRE)"                         shift, and go to state 7
11511    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
11512    "print (T_PRINT)"                             shift, and go to state 9
11513    "yield (T_YIELD)"                             shift, and go to state 10
11514    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
11515    '+'                                           shift, and go to state 12
11516    '-'                                           shift, and go to state 13
11517    '!'                                           shift, and go to state 14
11518    '~'                                           shift, and go to state 15
11519    "++ (T_INC)"                                  shift, and go to state 16
11520    "-- (T_DEC)"                                  shift, and go to state 17
11521    "(int) (T_INT_CAST)"                          shift, and go to state 18
11522    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
11523    "(string) (T_STRING_CAST)"                    shift, and go to state 20
11524    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
11525    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
11526    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
11527    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
11528    '@'                                           shift, and go to state 25
11529    '['                                           shift, and go to state 26
11530    "new (T_NEW)"                                 shift, and go to state 27
11531    "clone (T_CLONE)"                             shift, and go to state 28
11532    "static (T_STATIC)"                           shift, and go to state 113
11533    "integer number (T_LNUMBER)"                  shift, and go to state 32
11534    "floating-point number (T_DNUMBER)"           shift, and go to state 33
11535    "identifier (T_STRING)"                       shift, and go to state 114
11536    "variable (T_VARIABLE)"                       shift, and go to state 35
11537    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
11538    "exit (T_EXIT)"                               shift, and go to state 38
11539    "function (T_FUNCTION)"                       shift, and go to state 50
11540    "isset (T_ISSET)"                             shift, and go to state 58
11541    "empty (T_EMPTY)"                             shift, and go to state 59
11542    "list (T_LIST)"                               shift, and go to state 64
11543    "array (T_ARRAY)"                             shift, and go to state 65
11544    "__LINE__ (T_LINE)"                           shift, and go to state 66
11545    "__FILE__ (T_FILE)"                           shift, and go to state 67
11546    "__DIR__ (T_DIR)"                             shift, and go to state 68
11547    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
11548    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
11549    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
11550    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
11551    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
11552    "namespace (T_NAMESPACE)"                     shift, and go to state 115
11553    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
11554    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
11555    '('                                           shift, and go to state 77
11556    '`'                                           shift, and go to state 80
11557    '"'                                           shift, and go to state 81
11558    '$'                                           shift, and go to state 82
11559
11560    namespace_name              go to state 83
11561    name                        go to state 84
11562    new_expr                    go to state 97
11563    expr                        go to state 533
11564    function                    go to state 117
11565    function_call               go to state 100
11566    class_name                  go to state 101
11567    dereferencable_scalar       go to state 102
11568    scalar                      go to state 103
11569    constant                    go to state 104
11570    variable_class_name         go to state 105
11571    dereferencable              go to state 106
11572    callable_expr               go to state 107
11573    callable_variable           go to state 108
11574    variable                    go to state 109
11575    simple_variable             go to state 110
11576    static_member               go to state 111
11577    internal_functions_in_yacc  go to state 112
11578
11579
11580State 289
11581
11582  319 expr: variable "++ (T_INC)" .
11583
11584    $default  reduce using rule 319 (expr)
11585
11586
11587State 290
11588
11589  321 expr: variable "-- (T_DEC)" .
11590
11591    $default  reduce using rule 321 (expr)
11592
11593
11594State 291
11595
11596  376 expr: function returns_ref . backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
11597
11598    $default  reduce using rule 379 (backup_doc_comment)
11599
11600    backup_doc_comment  go to state 429
11601
11602
11603State 292
11604
11605  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
11606  324     | expr . "&& (T_BOOLEAN_AND)" expr
11607  325     | expr . "or (T_LOGICAL_OR)" expr
11608  326     | expr . "and (T_LOGICAL_AND)" expr
11609  327     | expr . "xor (T_LOGICAL_XOR)" expr
11610  328     | expr . '|' expr
11611  329     | expr . '&' expr
11612  330     | expr . '^' expr
11613  331     | expr . '.' expr
11614  332     | expr . '+' expr
11615  333     | expr . '-' expr
11616  334     | expr . '*' expr
11617  335     | expr . "** (T_POW)" expr
11618  336     | expr . '/' expr
11619  337     | expr . '%' expr
11620  338     | expr . "<< (T_SL)" expr
11621  339     | expr . ">> (T_SR)" expr
11622  344     | expr . "=== (T_IS_IDENTICAL)" expr
11623  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
11624  346     | expr . "== (T_IS_EQUAL)" expr
11625  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
11626  348     | expr . '<' expr
11627  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
11628  350     | expr . '>' expr
11629  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
11630  352     | expr . "<=> (T_SPACESHIP)" expr
11631  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
11632  356     | expr . '?' expr ':' expr
11633  357     | expr . '?' ':' expr
11634  358     | expr . "?? (T_COALESCE)" expr
11635  491 internal_functions_in_yacc: "eval (T_EVAL)" '(' expr . ')'
11636
11637    "or (T_LOGICAL_OR)"           shift, and go to state 237
11638    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
11639    "and (T_LOGICAL_AND)"         shift, and go to state 239
11640    '?'                           shift, and go to state 240
11641    "?? (T_COALESCE)"             shift, and go to state 241
11642    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
11643    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
11644    '|'                           shift, and go to state 244
11645    '^'                           shift, and go to state 245
11646    '&'                           shift, and go to state 246
11647    "== (T_IS_EQUAL)"             shift, and go to state 247
11648    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
11649    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
11650    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
11651    "<=> (T_SPACESHIP)"           shift, and go to state 251
11652    '<'                           shift, and go to state 252
11653    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
11654    '>'                           shift, and go to state 254
11655    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
11656    "<< (T_SL)"                   shift, and go to state 256
11657    ">> (T_SR)"                   shift, and go to state 257
11658    '+'                           shift, and go to state 258
11659    '-'                           shift, and go to state 259
11660    '.'                           shift, and go to state 260
11661    '*'                           shift, and go to state 261
11662    '/'                           shift, and go to state 262
11663    '%'                           shift, and go to state 263
11664    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
11665    "** (T_POW)"                  shift, and go to state 265
11666    ')'                           shift, and go to state 534
11667
11668
11669State 293
11670
11671  374 expr: "yield (T_YIELD)" expr "=> (T_DOUBLE_ARROW)" . expr
11672
11673    "include (T_INCLUDE)"                         shift, and go to state 4
11674    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
11675    "eval (T_EVAL)"                               shift, and go to state 6
11676    "require (T_REQUIRE)"                         shift, and go to state 7
11677    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
11678    "print (T_PRINT)"                             shift, and go to state 9
11679    "yield (T_YIELD)"                             shift, and go to state 10
11680    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
11681    '+'                                           shift, and go to state 12
11682    '-'                                           shift, and go to state 13
11683    '!'                                           shift, and go to state 14
11684    '~'                                           shift, and go to state 15
11685    "++ (T_INC)"                                  shift, and go to state 16
11686    "-- (T_DEC)"                                  shift, and go to state 17
11687    "(int) (T_INT_CAST)"                          shift, and go to state 18
11688    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
11689    "(string) (T_STRING_CAST)"                    shift, and go to state 20
11690    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
11691    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
11692    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
11693    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
11694    '@'                                           shift, and go to state 25
11695    '['                                           shift, and go to state 26
11696    "new (T_NEW)"                                 shift, and go to state 27
11697    "clone (T_CLONE)"                             shift, and go to state 28
11698    "static (T_STATIC)"                           shift, and go to state 113
11699    "integer number (T_LNUMBER)"                  shift, and go to state 32
11700    "floating-point number (T_DNUMBER)"           shift, and go to state 33
11701    "identifier (T_STRING)"                       shift, and go to state 114
11702    "variable (T_VARIABLE)"                       shift, and go to state 35
11703    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
11704    "exit (T_EXIT)"                               shift, and go to state 38
11705    "function (T_FUNCTION)"                       shift, and go to state 50
11706    "isset (T_ISSET)"                             shift, and go to state 58
11707    "empty (T_EMPTY)"                             shift, and go to state 59
11708    "list (T_LIST)"                               shift, and go to state 64
11709    "array (T_ARRAY)"                             shift, and go to state 65
11710    "__LINE__ (T_LINE)"                           shift, and go to state 66
11711    "__FILE__ (T_FILE)"                           shift, and go to state 67
11712    "__DIR__ (T_DIR)"                             shift, and go to state 68
11713    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
11714    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
11715    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
11716    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
11717    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
11718    "namespace (T_NAMESPACE)"                     shift, and go to state 115
11719    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
11720    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
11721    '('                                           shift, and go to state 77
11722    '`'                                           shift, and go to state 80
11723    '"'                                           shift, and go to state 81
11724    '$'                                           shift, and go to state 82
11725
11726    namespace_name              go to state 83
11727    name                        go to state 84
11728    new_expr                    go to state 97
11729    expr                        go to state 535
11730    function                    go to state 117
11731    function_call               go to state 100
11732    class_name                  go to state 101
11733    dereferencable_scalar       go to state 102
11734    scalar                      go to state 103
11735    constant                    go to state 104
11736    variable_class_name         go to state 105
11737    dereferencable              go to state 106
11738    callable_expr               go to state 107
11739    callable_variable           go to state 108
11740    variable                    go to state 109
11741    simple_variable             go to state 110
11742    static_member               go to state 111
11743    internal_functions_in_yacc  go to state 112
11744
11745
11746State 294
11747
11748  405 dereferencable_scalar: '[' array_pair_list . ']'
11749
11750    ']'  shift, and go to state 536
11751
11752
11753State 295
11754
11755  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
11756  324     | expr . "&& (T_BOOLEAN_AND)" expr
11757  325     | expr . "or (T_LOGICAL_OR)" expr
11758  326     | expr . "and (T_LOGICAL_AND)" expr
11759  327     | expr . "xor (T_LOGICAL_XOR)" expr
11760  328     | expr . '|' expr
11761  329     | expr . '&' expr
11762  330     | expr . '^' expr
11763  331     | expr . '.' expr
11764  332     | expr . '+' expr
11765  333     | expr . '-' expr
11766  334     | expr . '*' expr
11767  335     | expr . "** (T_POW)" expr
11768  336     | expr . '/' expr
11769  337     | expr . '%' expr
11770  338     | expr . "<< (T_SL)" expr
11771  339     | expr . ">> (T_SR)" expr
11772  344     | expr . "=== (T_IS_IDENTICAL)" expr
11773  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
11774  346     | expr . "== (T_IS_EQUAL)" expr
11775  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
11776  348     | expr . '<' expr
11777  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
11778  350     | expr . '>' expr
11779  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
11780  352     | expr . "<=> (T_SPACESHIP)" expr
11781  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
11782  356     | expr . '?' expr ':' expr
11783  357     | expr . '?' ':' expr
11784  358     | expr . "?? (T_COALESCE)" expr
11785  430 dereferencable: '(' expr . ')'
11786  433 callable_expr: '(' expr . ')'
11787
11788    "or (T_LOGICAL_OR)"           shift, and go to state 237
11789    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
11790    "and (T_LOGICAL_AND)"         shift, and go to state 239
11791    '?'                           shift, and go to state 240
11792    "?? (T_COALESCE)"             shift, and go to state 241
11793    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
11794    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
11795    '|'                           shift, and go to state 244
11796    '^'                           shift, and go to state 245
11797    '&'                           shift, and go to state 246
11798    "== (T_IS_EQUAL)"             shift, and go to state 247
11799    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
11800    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
11801    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
11802    "<=> (T_SPACESHIP)"           shift, and go to state 251
11803    '<'                           shift, and go to state 252
11804    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
11805    '>'                           shift, and go to state 254
11806    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
11807    "<< (T_SL)"                   shift, and go to state 256
11808    ">> (T_SR)"                   shift, and go to state 257
11809    '+'                           shift, and go to state 258
11810    '-'                           shift, and go to state 259
11811    '.'                           shift, and go to state 260
11812    '*'                           shift, and go to state 261
11813    '/'                           shift, and go to state 262
11814    '%'                           shift, and go to state 263
11815    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
11816    "** (T_POW)"                  shift, and go to state 265
11817    ')'                           shift, and go to state 537
11818
11819
11820State 296
11821
11822  429 dereferencable: variable .
11823  469 array_pair: '&' variable .
11824
11825    ','       reduce using rule 469 (array_pair)
11826    ')'       reduce using rule 469 (array_pair)
11827    ']'       reduce using rule 469 (array_pair)
11828    $default  reduce using rule 429 (dereferencable)
11829
11830
11831State 297
11832
11833  302 expr: "list (T_LIST)" '(' . array_pair_list ')' '=' expr
11834  471 array_pair: "list (T_LIST)" '(' . array_pair_list ')'
11835
11836    "include (T_INCLUDE)"                         shift, and go to state 4
11837    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
11838    "eval (T_EVAL)"                               shift, and go to state 6
11839    "require (T_REQUIRE)"                         shift, and go to state 7
11840    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
11841    "print (T_PRINT)"                             shift, and go to state 9
11842    "yield (T_YIELD)"                             shift, and go to state 10
11843    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
11844    '&'                                           shift, and go to state 144
11845    '+'                                           shift, and go to state 12
11846    '-'                                           shift, and go to state 13
11847    '!'                                           shift, and go to state 14
11848    '~'                                           shift, and go to state 15
11849    "++ (T_INC)"                                  shift, and go to state 16
11850    "-- (T_DEC)"                                  shift, and go to state 17
11851    "(int) (T_INT_CAST)"                          shift, and go to state 18
11852    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
11853    "(string) (T_STRING_CAST)"                    shift, and go to state 20
11854    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
11855    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
11856    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
11857    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
11858    '@'                                           shift, and go to state 25
11859    '['                                           shift, and go to state 26
11860    "new (T_NEW)"                                 shift, and go to state 27
11861    "clone (T_CLONE)"                             shift, and go to state 28
11862    "static (T_STATIC)"                           shift, and go to state 113
11863    "integer number (T_LNUMBER)"                  shift, and go to state 32
11864    "floating-point number (T_DNUMBER)"           shift, and go to state 33
11865    "identifier (T_STRING)"                       shift, and go to state 114
11866    "variable (T_VARIABLE)"                       shift, and go to state 35
11867    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
11868    "exit (T_EXIT)"                               shift, and go to state 38
11869    "function (T_FUNCTION)"                       shift, and go to state 50
11870    "isset (T_ISSET)"                             shift, and go to state 58
11871    "empty (T_EMPTY)"                             shift, and go to state 59
11872    "list (T_LIST)"                               shift, and go to state 145
11873    "array (T_ARRAY)"                             shift, and go to state 65
11874    "__LINE__ (T_LINE)"                           shift, and go to state 66
11875    "__FILE__ (T_FILE)"                           shift, and go to state 67
11876    "__DIR__ (T_DIR)"                             shift, and go to state 68
11877    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
11878    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
11879    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
11880    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
11881    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
11882    "namespace (T_NAMESPACE)"                     shift, and go to state 115
11883    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
11884    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
11885    '('                                           shift, and go to state 77
11886    '`'                                           shift, and go to state 80
11887    '"'                                           shift, and go to state 81
11888    '$'                                           shift, and go to state 82
11889
11890    $default  reduce using rule 462 (possible_array_pair)
11891
11892    namespace_name              go to state 83
11893    name                        go to state 84
11894    new_expr                    go to state 97
11895    expr                        go to state 146
11896    function                    go to state 117
11897    function_call               go to state 100
11898    class_name                  go to state 101
11899    dereferencable_scalar       go to state 102
11900    scalar                      go to state 103
11901    constant                    go to state 104
11902    variable_class_name         go to state 105
11903    dereferencable              go to state 106
11904    callable_expr               go to state 107
11905    callable_variable           go to state 108
11906    variable                    go to state 109
11907    simple_variable             go to state 110
11908    static_member               go to state 111
11909    array_pair_list             go to state 538
11910    possible_array_pair         go to state 148
11911    non_empty_array_pair_list   go to state 149
11912    array_pair                  go to state 150
11913    internal_functions_in_yacc  go to state 112
11914
11915
11916State 298
11917
11918  466 array_pair: expr "=> (T_DOUBLE_ARROW)" . expr
11919  468           | expr "=> (T_DOUBLE_ARROW)" . '&' variable
11920  470           | expr "=> (T_DOUBLE_ARROW)" . "list (T_LIST)" '(' array_pair_list ')'
11921
11922    "include (T_INCLUDE)"                         shift, and go to state 4
11923    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
11924    "eval (T_EVAL)"                               shift, and go to state 6
11925    "require (T_REQUIRE)"                         shift, and go to state 7
11926    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
11927    "print (T_PRINT)"                             shift, and go to state 9
11928    "yield (T_YIELD)"                             shift, and go to state 10
11929    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
11930    '&'                                           shift, and go to state 539
11931    '+'                                           shift, and go to state 12
11932    '-'                                           shift, and go to state 13
11933    '!'                                           shift, and go to state 14
11934    '~'                                           shift, and go to state 15
11935    "++ (T_INC)"                                  shift, and go to state 16
11936    "-- (T_DEC)"                                  shift, and go to state 17
11937    "(int) (T_INT_CAST)"                          shift, and go to state 18
11938    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
11939    "(string) (T_STRING_CAST)"                    shift, and go to state 20
11940    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
11941    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
11942    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
11943    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
11944    '@'                                           shift, and go to state 25
11945    '['                                           shift, and go to state 26
11946    "new (T_NEW)"                                 shift, and go to state 27
11947    "clone (T_CLONE)"                             shift, and go to state 28
11948    "static (T_STATIC)"                           shift, and go to state 113
11949    "integer number (T_LNUMBER)"                  shift, and go to state 32
11950    "floating-point number (T_DNUMBER)"           shift, and go to state 33
11951    "identifier (T_STRING)"                       shift, and go to state 114
11952    "variable (T_VARIABLE)"                       shift, and go to state 35
11953    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
11954    "exit (T_EXIT)"                               shift, and go to state 38
11955    "function (T_FUNCTION)"                       shift, and go to state 50
11956    "isset (T_ISSET)"                             shift, and go to state 58
11957    "empty (T_EMPTY)"                             shift, and go to state 59
11958    "list (T_LIST)"                               shift, and go to state 540
11959    "array (T_ARRAY)"                             shift, and go to state 65
11960    "__LINE__ (T_LINE)"                           shift, and go to state 66
11961    "__FILE__ (T_FILE)"                           shift, and go to state 67
11962    "__DIR__ (T_DIR)"                             shift, and go to state 68
11963    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
11964    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
11965    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
11966    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
11967    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
11968    "namespace (T_NAMESPACE)"                     shift, and go to state 115
11969    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
11970    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
11971    '('                                           shift, and go to state 77
11972    '`'                                           shift, and go to state 80
11973    '"'                                           shift, and go to state 81
11974    '$'                                           shift, and go to state 82
11975
11976    namespace_name              go to state 83
11977    name                        go to state 84
11978    new_expr                    go to state 97
11979    expr                        go to state 541
11980    function                    go to state 117
11981    function_call               go to state 100
11982    class_name                  go to state 101
11983    dereferencable_scalar       go to state 102
11984    scalar                      go to state 103
11985    constant                    go to state 104
11986    variable_class_name         go to state 105
11987    dereferencable              go to state 106
11988    callable_expr               go to state 107
11989    callable_variable           go to state 108
11990    variable                    go to state 109
11991    simple_variable             go to state 110
11992    static_member               go to state 111
11993    internal_functions_in_yacc  go to state 112
11994
11995
11996State 299
11997
11998  303 expr: '[' array_pair_list ']' . '=' expr
11999  405 dereferencable_scalar: '[' array_pair_list ']' .
12000
12001    '='  shift, and go to state 542
12002
12003    $default  reduce using rule 405 (dereferencable_scalar)
12004
12005
12006State 300
12007
12008  464 non_empty_array_pair_list: non_empty_array_pair_list ',' . possible_array_pair
12009
12010    "include (T_INCLUDE)"                         shift, and go to state 4
12011    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
12012    "eval (T_EVAL)"                               shift, and go to state 6
12013    "require (T_REQUIRE)"                         shift, and go to state 7
12014    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
12015    "print (T_PRINT)"                             shift, and go to state 9
12016    "yield (T_YIELD)"                             shift, and go to state 10
12017    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
12018    '&'                                           shift, and go to state 144
12019    '+'                                           shift, and go to state 12
12020    '-'                                           shift, and go to state 13
12021    '!'                                           shift, and go to state 14
12022    '~'                                           shift, and go to state 15
12023    "++ (T_INC)"                                  shift, and go to state 16
12024    "-- (T_DEC)"                                  shift, and go to state 17
12025    "(int) (T_INT_CAST)"                          shift, and go to state 18
12026    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
12027    "(string) (T_STRING_CAST)"                    shift, and go to state 20
12028    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
12029    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
12030    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
12031    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
12032    '@'                                           shift, and go to state 25
12033    '['                                           shift, and go to state 26
12034    "new (T_NEW)"                                 shift, and go to state 27
12035    "clone (T_CLONE)"                             shift, and go to state 28
12036    "static (T_STATIC)"                           shift, and go to state 113
12037    "integer number (T_LNUMBER)"                  shift, and go to state 32
12038    "floating-point number (T_DNUMBER)"           shift, and go to state 33
12039    "identifier (T_STRING)"                       shift, and go to state 114
12040    "variable (T_VARIABLE)"                       shift, and go to state 35
12041    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
12042    "exit (T_EXIT)"                               shift, and go to state 38
12043    "function (T_FUNCTION)"                       shift, and go to state 50
12044    "isset (T_ISSET)"                             shift, and go to state 58
12045    "empty (T_EMPTY)"                             shift, and go to state 59
12046    "list (T_LIST)"                               shift, and go to state 145
12047    "array (T_ARRAY)"                             shift, and go to state 65
12048    "__LINE__ (T_LINE)"                           shift, and go to state 66
12049    "__FILE__ (T_FILE)"                           shift, and go to state 67
12050    "__DIR__ (T_DIR)"                             shift, and go to state 68
12051    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
12052    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
12053    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
12054    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
12055    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
12056    "namespace (T_NAMESPACE)"                     shift, and go to state 115
12057    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
12058    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
12059    '('                                           shift, and go to state 77
12060    '`'                                           shift, and go to state 80
12061    '"'                                           shift, and go to state 81
12062    '$'                                           shift, and go to state 82
12063
12064    $default  reduce using rule 462 (possible_array_pair)
12065
12066    namespace_name              go to state 83
12067    name                        go to state 84
12068    new_expr                    go to state 97
12069    expr                        go to state 146
12070    function                    go to state 117
12071    function_call               go to state 100
12072    class_name                  go to state 101
12073    dereferencable_scalar       go to state 102
12074    scalar                      go to state 103
12075    constant                    go to state 104
12076    variable_class_name         go to state 105
12077    dereferencable              go to state 106
12078    callable_expr               go to state 107
12079    callable_variable           go to state 108
12080    variable                    go to state 109
12081    simple_variable             go to state 110
12082    static_member               go to state 111
12083    possible_array_pair         go to state 543
12084    array_pair                  go to state 150
12085    internal_functions_in_yacc  go to state 112
12086
12087
12088State 301
12089
12090  298 anonymous_class: "class (T_CLASS)" @8 . ctor_arguments extends_from implements_list backup_doc_comment '{' class_statement_list '}'
12091
12092    '('  shift, and go to state 228
12093
12094    $default  reduce using rule 402 (ctor_arguments)
12095
12096    argument_list   go to state 303
12097    ctor_arguments  go to state 544
12098
12099
12100State 302
12101
12102  453 new_variable: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . simple_variable
12103
12104    "variable (T_VARIABLE)"  shift, and go to state 35
12105    '$'                      shift, and go to state 82
12106
12107    simple_variable  go to state 545
12108
12109
12110State 303
12111
12112  403 ctor_arguments: argument_list .
12113
12114    $default  reduce using rule 403 (ctor_arguments)
12115
12116
12117State 304
12118
12119  299 new_expr: "new (T_NEW)" class_name_reference ctor_arguments .
12120
12121    $default  reduce using rule 299 (new_expr)
12122
12123
12124State 305
12125
12126  450 new_variable: new_variable '[' . optional_expr ']'
12127
12128    "include (T_INCLUDE)"                         shift, and go to state 4
12129    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
12130    "eval (T_EVAL)"                               shift, and go to state 6
12131    "require (T_REQUIRE)"                         shift, and go to state 7
12132    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
12133    "print (T_PRINT)"                             shift, and go to state 9
12134    "yield (T_YIELD)"                             shift, and go to state 10
12135    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
12136    '+'                                           shift, and go to state 12
12137    '-'                                           shift, and go to state 13
12138    '!'                                           shift, and go to state 14
12139    '~'                                           shift, and go to state 15
12140    "++ (T_INC)"                                  shift, and go to state 16
12141    "-- (T_DEC)"                                  shift, and go to state 17
12142    "(int) (T_INT_CAST)"                          shift, and go to state 18
12143    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
12144    "(string) (T_STRING_CAST)"                    shift, and go to state 20
12145    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
12146    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
12147    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
12148    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
12149    '@'                                           shift, and go to state 25
12150    '['                                           shift, and go to state 26
12151    "new (T_NEW)"                                 shift, and go to state 27
12152    "clone (T_CLONE)"                             shift, and go to state 28
12153    "static (T_STATIC)"                           shift, and go to state 113
12154    "integer number (T_LNUMBER)"                  shift, and go to state 32
12155    "floating-point number (T_DNUMBER)"           shift, and go to state 33
12156    "identifier (T_STRING)"                       shift, and go to state 114
12157    "variable (T_VARIABLE)"                       shift, and go to state 35
12158    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
12159    "exit (T_EXIT)"                               shift, and go to state 38
12160    "function (T_FUNCTION)"                       shift, and go to state 50
12161    "isset (T_ISSET)"                             shift, and go to state 58
12162    "empty (T_EMPTY)"                             shift, and go to state 59
12163    "list (T_LIST)"                               shift, and go to state 64
12164    "array (T_ARRAY)"                             shift, and go to state 65
12165    "__LINE__ (T_LINE)"                           shift, and go to state 66
12166    "__FILE__ (T_FILE)"                           shift, and go to state 67
12167    "__DIR__ (T_DIR)"                             shift, and go to state 68
12168    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
12169    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
12170    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
12171    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
12172    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
12173    "namespace (T_NAMESPACE)"                     shift, and go to state 115
12174    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
12175    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
12176    '('                                           shift, and go to state 77
12177    '`'                                           shift, and go to state 80
12178    '"'                                           shift, and go to state 81
12179    '$'                                           shift, and go to state 82
12180
12181    $default  reduce using rule 426 (optional_expr)
12182
12183    namespace_name              go to state 83
12184    name                        go to state 84
12185    new_expr                    go to state 97
12186    expr                        go to state 176
12187    function                    go to state 117
12188    function_call               go to state 100
12189    class_name                  go to state 101
12190    dereferencable_scalar       go to state 102
12191    scalar                      go to state 103
12192    constant                    go to state 104
12193    optional_expr               go to state 546
12194    variable_class_name         go to state 105
12195    dereferencable              go to state 106
12196    callable_expr               go to state 107
12197    callable_variable           go to state 108
12198    variable                    go to state 109
12199    simple_variable             go to state 110
12200    static_member               go to state 111
12201    internal_functions_in_yacc  go to state 112
12202
12203
12204State 306
12205
12206  452 new_variable: new_variable "-> (T_OBJECT_OPERATOR)" . property_name
12207
12208    "identifier (T_STRING)"  shift, and go to state 515
12209    "variable (T_VARIABLE)"  shift, and go to state 35
12210    '{'                      shift, and go to state 516
12211    '$'                      shift, and go to state 82
12212
12213    simple_variable  go to state 517
12214    property_name    go to state 547
12215
12216
12217State 307
12218
12219  454 new_variable: new_variable ":: (T_PAAMAYIM_NEKUDOTAYIM)" . simple_variable
12220
12221    "variable (T_VARIABLE)"  shift, and go to state 35
12222    '$'                      shift, and go to state 82
12223
12224    simple_variable  go to state 548
12225
12226
12227State 308
12228
12229  451 new_variable: new_variable '{' . expr '}'
12230
12231    "include (T_INCLUDE)"                         shift, and go to state 4
12232    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
12233    "eval (T_EVAL)"                               shift, and go to state 6
12234    "require (T_REQUIRE)"                         shift, and go to state 7
12235    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
12236    "print (T_PRINT)"                             shift, and go to state 9
12237    "yield (T_YIELD)"                             shift, and go to state 10
12238    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
12239    '+'                                           shift, and go to state 12
12240    '-'                                           shift, and go to state 13
12241    '!'                                           shift, and go to state 14
12242    '~'                                           shift, and go to state 15
12243    "++ (T_INC)"                                  shift, and go to state 16
12244    "-- (T_DEC)"                                  shift, and go to state 17
12245    "(int) (T_INT_CAST)"                          shift, and go to state 18
12246    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
12247    "(string) (T_STRING_CAST)"                    shift, and go to state 20
12248    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
12249    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
12250    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
12251    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
12252    '@'                                           shift, and go to state 25
12253    '['                                           shift, and go to state 26
12254    "new (T_NEW)"                                 shift, and go to state 27
12255    "clone (T_CLONE)"                             shift, and go to state 28
12256    "static (T_STATIC)"                           shift, and go to state 113
12257    "integer number (T_LNUMBER)"                  shift, and go to state 32
12258    "floating-point number (T_DNUMBER)"           shift, and go to state 33
12259    "identifier (T_STRING)"                       shift, and go to state 114
12260    "variable (T_VARIABLE)"                       shift, and go to state 35
12261    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
12262    "exit (T_EXIT)"                               shift, and go to state 38
12263    "function (T_FUNCTION)"                       shift, and go to state 50
12264    "isset (T_ISSET)"                             shift, and go to state 58
12265    "empty (T_EMPTY)"                             shift, and go to state 59
12266    "list (T_LIST)"                               shift, and go to state 64
12267    "array (T_ARRAY)"                             shift, and go to state 65
12268    "__LINE__ (T_LINE)"                           shift, and go to state 66
12269    "__FILE__ (T_FILE)"                           shift, and go to state 67
12270    "__DIR__ (T_DIR)"                             shift, and go to state 68
12271    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
12272    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
12273    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
12274    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
12275    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
12276    "namespace (T_NAMESPACE)"                     shift, and go to state 115
12277    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
12278    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
12279    '('                                           shift, and go to state 77
12280    '`'                                           shift, and go to state 80
12281    '"'                                           shift, and go to state 81
12282    '$'                                           shift, and go to state 82
12283
12284    namespace_name              go to state 83
12285    name                        go to state 84
12286    new_expr                    go to state 97
12287    expr                        go to state 549
12288    function                    go to state 117
12289    function_call               go to state 100
12290    class_name                  go to state 101
12291    dereferencable_scalar       go to state 102
12292    scalar                      go to state 103
12293    constant                    go to state 104
12294    variable_class_name         go to state 105
12295    dereferencable              go to state 106
12296    callable_expr               go to state 107
12297    callable_variable           go to state 108
12298    variable                    go to state 109
12299    simple_variable             go to state 110
12300    static_member               go to state 111
12301    internal_functions_in_yacc  go to state 112
12302
12303
12304State 309
12305
12306  244 static_var: "variable (T_VARIABLE)" '=' . expr
12307
12308    "include (T_INCLUDE)"                         shift, and go to state 4
12309    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
12310    "eval (T_EVAL)"                               shift, and go to state 6
12311    "require (T_REQUIRE)"                         shift, and go to state 7
12312    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
12313    "print (T_PRINT)"                             shift, and go to state 9
12314    "yield (T_YIELD)"                             shift, and go to state 10
12315    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
12316    '+'                                           shift, and go to state 12
12317    '-'                                           shift, and go to state 13
12318    '!'                                           shift, and go to state 14
12319    '~'                                           shift, and go to state 15
12320    "++ (T_INC)"                                  shift, and go to state 16
12321    "-- (T_DEC)"                                  shift, and go to state 17
12322    "(int) (T_INT_CAST)"                          shift, and go to state 18
12323    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
12324    "(string) (T_STRING_CAST)"                    shift, and go to state 20
12325    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
12326    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
12327    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
12328    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
12329    '@'                                           shift, and go to state 25
12330    '['                                           shift, and go to state 26
12331    "new (T_NEW)"                                 shift, and go to state 27
12332    "clone (T_CLONE)"                             shift, and go to state 28
12333    "static (T_STATIC)"                           shift, and go to state 113
12334    "integer number (T_LNUMBER)"                  shift, and go to state 32
12335    "floating-point number (T_DNUMBER)"           shift, and go to state 33
12336    "identifier (T_STRING)"                       shift, and go to state 114
12337    "variable (T_VARIABLE)"                       shift, and go to state 35
12338    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
12339    "exit (T_EXIT)"                               shift, and go to state 38
12340    "function (T_FUNCTION)"                       shift, and go to state 50
12341    "isset (T_ISSET)"                             shift, and go to state 58
12342    "empty (T_EMPTY)"                             shift, and go to state 59
12343    "list (T_LIST)"                               shift, and go to state 64
12344    "array (T_ARRAY)"                             shift, and go to state 65
12345    "__LINE__ (T_LINE)"                           shift, and go to state 66
12346    "__FILE__ (T_FILE)"                           shift, and go to state 67
12347    "__DIR__ (T_DIR)"                             shift, and go to state 68
12348    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
12349    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
12350    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
12351    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
12352    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
12353    "namespace (T_NAMESPACE)"                     shift, and go to state 115
12354    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
12355    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
12356    '('                                           shift, and go to state 77
12357    '`'                                           shift, and go to state 80
12358    '"'                                           shift, and go to state 81
12359    '$'                                           shift, and go to state 82
12360
12361    namespace_name              go to state 83
12362    name                        go to state 84
12363    new_expr                    go to state 97
12364    expr                        go to state 550
12365    function                    go to state 117
12366    function_call               go to state 100
12367    class_name                  go to state 101
12368    dereferencable_scalar       go to state 102
12369    scalar                      go to state 103
12370    constant                    go to state 104
12371    variable_class_name         go to state 105
12372    dereferencable              go to state 106
12373    callable_expr               go to state 107
12374    callable_variable           go to state 108
12375    variable                    go to state 109
12376    simple_variable             go to state 110
12377    static_member               go to state 111
12378    internal_functions_in_yacc  go to state 112
12379
12380
12381State 310
12382
12383  241 static_var_list: static_var_list ',' . static_var
12384
12385    "variable (T_VARIABLE)"  shift, and go to state 159
12386
12387    static_var  go to state 551
12388
12389
12390State 311
12391
12392  142 statement: "static (T_STATIC)" static_var_list ';' .
12393
12394    $default  reduce using rule 142 (statement)
12395
12396
12397State 312
12398
12399  377 expr: "static (T_STATIC)" function returns_ref . backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
12400
12401    $default  reduce using rule 379 (backup_doc_comment)
12402
12403    backup_doc_comment  go to state 552
12404
12405
12406State 313
12407
12408  398 exit_expr: '(' optional_expr . ')'
12409
12410    ')'  shift, and go to state 553
12411
12412
12413State 314
12414
12415  209 if_stmt_without_else: "if (T_IF)" '(' expr . ')' statement
12416  213 alt_if_stmt_without_else: "if (T_IF)" '(' expr . ')' ':' inner_statement_list
12417  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
12418  324     | expr . "&& (T_BOOLEAN_AND)" expr
12419  325     | expr . "or (T_LOGICAL_OR)" expr
12420  326     | expr . "and (T_LOGICAL_AND)" expr
12421  327     | expr . "xor (T_LOGICAL_XOR)" expr
12422  328     | expr . '|' expr
12423  329     | expr . '&' expr
12424  330     | expr . '^' expr
12425  331     | expr . '.' expr
12426  332     | expr . '+' expr
12427  333     | expr . '-' expr
12428  334     | expr . '*' expr
12429  335     | expr . "** (T_POW)" expr
12430  336     | expr . '/' expr
12431  337     | expr . '%' expr
12432  338     | expr . "<< (T_SL)" expr
12433  339     | expr . ">> (T_SR)" expr
12434  344     | expr . "=== (T_IS_IDENTICAL)" expr
12435  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
12436  346     | expr . "== (T_IS_EQUAL)" expr
12437  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
12438  348     | expr . '<' expr
12439  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
12440  350     | expr . '>' expr
12441  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
12442  352     | expr . "<=> (T_SPACESHIP)" expr
12443  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
12444  356     | expr . '?' expr ':' expr
12445  357     | expr . '?' ':' expr
12446  358     | expr . "?? (T_COALESCE)" expr
12447
12448    "or (T_LOGICAL_OR)"           shift, and go to state 237
12449    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
12450    "and (T_LOGICAL_AND)"         shift, and go to state 239
12451    '?'                           shift, and go to state 240
12452    "?? (T_COALESCE)"             shift, and go to state 241
12453    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
12454    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
12455    '|'                           shift, and go to state 244
12456    '^'                           shift, and go to state 245
12457    '&'                           shift, and go to state 246
12458    "== (T_IS_EQUAL)"             shift, and go to state 247
12459    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
12460    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
12461    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
12462    "<=> (T_SPACESHIP)"           shift, and go to state 251
12463    '<'                           shift, and go to state 252
12464    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
12465    '>'                           shift, and go to state 254
12466    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
12467    "<< (T_SL)"                   shift, and go to state 256
12468    ">> (T_SR)"                   shift, and go to state 257
12469    '+'                           shift, and go to state 258
12470    '-'                           shift, and go to state 259
12471    '.'                           shift, and go to state 260
12472    '*'                           shift, and go to state 261
12473    '/'                           shift, and go to state 262
12474    '%'                           shift, and go to state 263
12475    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
12476    "** (T_POW)"                  shift, and go to state 265
12477    ')'                           shift, and go to state 554
12478
12479
12480State 315
12481
12482  290 echo_expr_list: echo_expr_list ',' . echo_expr
12483
12484    "include (T_INCLUDE)"                         shift, and go to state 4
12485    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
12486    "eval (T_EVAL)"                               shift, and go to state 6
12487    "require (T_REQUIRE)"                         shift, and go to state 7
12488    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
12489    "print (T_PRINT)"                             shift, and go to state 9
12490    "yield (T_YIELD)"                             shift, and go to state 10
12491    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
12492    '+'                                           shift, and go to state 12
12493    '-'                                           shift, and go to state 13
12494    '!'                                           shift, and go to state 14
12495    '~'                                           shift, and go to state 15
12496    "++ (T_INC)"                                  shift, and go to state 16
12497    "-- (T_DEC)"                                  shift, and go to state 17
12498    "(int) (T_INT_CAST)"                          shift, and go to state 18
12499    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
12500    "(string) (T_STRING_CAST)"                    shift, and go to state 20
12501    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
12502    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
12503    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
12504    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
12505    '@'                                           shift, and go to state 25
12506    '['                                           shift, and go to state 26
12507    "new (T_NEW)"                                 shift, and go to state 27
12508    "clone (T_CLONE)"                             shift, and go to state 28
12509    "static (T_STATIC)"                           shift, and go to state 113
12510    "integer number (T_LNUMBER)"                  shift, and go to state 32
12511    "floating-point number (T_DNUMBER)"           shift, and go to state 33
12512    "identifier (T_STRING)"                       shift, and go to state 114
12513    "variable (T_VARIABLE)"                       shift, and go to state 35
12514    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
12515    "exit (T_EXIT)"                               shift, and go to state 38
12516    "function (T_FUNCTION)"                       shift, and go to state 50
12517    "isset (T_ISSET)"                             shift, and go to state 58
12518    "empty (T_EMPTY)"                             shift, and go to state 59
12519    "list (T_LIST)"                               shift, and go to state 64
12520    "array (T_ARRAY)"                             shift, and go to state 65
12521    "__LINE__ (T_LINE)"                           shift, and go to state 66
12522    "__FILE__ (T_FILE)"                           shift, and go to state 67
12523    "__DIR__ (T_DIR)"                             shift, and go to state 68
12524    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
12525    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
12526    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
12527    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
12528    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
12529    "namespace (T_NAMESPACE)"                     shift, and go to state 115
12530    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
12531    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
12532    '('                                           shift, and go to state 77
12533    '`'                                           shift, and go to state 80
12534    '"'                                           shift, and go to state 81
12535    '$'                                           shift, and go to state 82
12536
12537    namespace_name              go to state 83
12538    name                        go to state 84
12539    echo_expr                   go to state 555
12540    new_expr                    go to state 97
12541    expr                        go to state 169
12542    function                    go to state 117
12543    function_call               go to state 100
12544    class_name                  go to state 101
12545    dereferencable_scalar       go to state 102
12546    scalar                      go to state 103
12547    constant                    go to state 104
12548    variable_class_name         go to state 105
12549    dereferencable              go to state 106
12550    callable_expr               go to state 107
12551    callable_variable           go to state 108
12552    variable                    go to state 109
12553    simple_variable             go to state 110
12554    static_member               go to state 111
12555    internal_functions_in_yacc  go to state 112
12556
12557
12558State 316
12559
12560  143 statement: "echo (T_ECHO)" echo_expr_list ';' .
12561
12562    $default  reduce using rule 143 (statement)
12563
12564
12565State 317
12566
12567  135 statement: "do (T_DO)" statement "while (T_WHILE)" . '(' expr ')' ';'
12568
12569    '('  shift, and go to state 556
12570
12571
12572State 318
12573
12574  134 statement: "while (T_WHILE)" '(' expr . ')' while_statement
12575  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
12576  324     | expr . "&& (T_BOOLEAN_AND)" expr
12577  325     | expr . "or (T_LOGICAL_OR)" expr
12578  326     | expr . "and (T_LOGICAL_AND)" expr
12579  327     | expr . "xor (T_LOGICAL_XOR)" expr
12580  328     | expr . '|' expr
12581  329     | expr . '&' expr
12582  330     | expr . '^' expr
12583  331     | expr . '.' expr
12584  332     | expr . '+' expr
12585  333     | expr . '-' expr
12586  334     | expr . '*' expr
12587  335     | expr . "** (T_POW)" expr
12588  336     | expr . '/' expr
12589  337     | expr . '%' expr
12590  338     | expr . "<< (T_SL)" expr
12591  339     | expr . ">> (T_SR)" expr
12592  344     | expr . "=== (T_IS_IDENTICAL)" expr
12593  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
12594  346     | expr . "== (T_IS_EQUAL)" expr
12595  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
12596  348     | expr . '<' expr
12597  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
12598  350     | expr . '>' expr
12599  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
12600  352     | expr . "<=> (T_SPACESHIP)" expr
12601  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
12602  356     | expr . '?' expr ':' expr
12603  357     | expr . '?' ':' expr
12604  358     | expr . "?? (T_COALESCE)" expr
12605
12606    "or (T_LOGICAL_OR)"           shift, and go to state 237
12607    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
12608    "and (T_LOGICAL_AND)"         shift, and go to state 239
12609    '?'                           shift, and go to state 240
12610    "?? (T_COALESCE)"             shift, and go to state 241
12611    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
12612    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
12613    '|'                           shift, and go to state 244
12614    '^'                           shift, and go to state 245
12615    '&'                           shift, and go to state 246
12616    "== (T_IS_EQUAL)"             shift, and go to state 247
12617    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
12618    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
12619    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
12620    "<=> (T_SPACESHIP)"           shift, and go to state 251
12621    '<'                           shift, and go to state 252
12622    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
12623    '>'                           shift, and go to state 254
12624    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
12625    "<< (T_SL)"                   shift, and go to state 256
12626    ">> (T_SR)"                   shift, and go to state 257
12627    '+'                           shift, and go to state 258
12628    '-'                           shift, and go to state 259
12629    '.'                           shift, and go to state 260
12630    '*'                           shift, and go to state 261
12631    '/'                           shift, and go to state 262
12632    '%'                           shift, and go to state 263
12633    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
12634    "** (T_POW)"                  shift, and go to state 265
12635    ')'                           shift, and go to state 557
12636
12637
12638State 319
12639
12640  136 statement: "for (T_FOR)" '(' for_exprs . ';' for_exprs ';' for_exprs ')' for_statement
12641
12642    ';'  shift, and go to state 558
12643
12644
12645State 320
12646
12647  294 for_exprs: non_empty_for_exprs .
12648  295 non_empty_for_exprs: non_empty_for_exprs . ',' expr
12649
12650    ','  shift, and go to state 559
12651
12652    $default  reduce using rule 294 (for_exprs)
12653
12654
12655State 321
12656
12657  296 non_empty_for_exprs: expr .
12658  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
12659  324     | expr . "&& (T_BOOLEAN_AND)" expr
12660  325     | expr . "or (T_LOGICAL_OR)" expr
12661  326     | expr . "and (T_LOGICAL_AND)" expr
12662  327     | expr . "xor (T_LOGICAL_XOR)" expr
12663  328     | expr . '|' expr
12664  329     | expr . '&' expr
12665  330     | expr . '^' expr
12666  331     | expr . '.' expr
12667  332     | expr . '+' expr
12668  333     | expr . '-' expr
12669  334     | expr . '*' expr
12670  335     | expr . "** (T_POW)" expr
12671  336     | expr . '/' expr
12672  337     | expr . '%' expr
12673  338     | expr . "<< (T_SL)" expr
12674  339     | expr . ">> (T_SR)" expr
12675  344     | expr . "=== (T_IS_IDENTICAL)" expr
12676  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
12677  346     | expr . "== (T_IS_EQUAL)" expr
12678  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
12679  348     | expr . '<' expr
12680  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
12681  350     | expr . '>' expr
12682  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
12683  352     | expr . "<=> (T_SPACESHIP)" expr
12684  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
12685  356     | expr . '?' expr ':' expr
12686  357     | expr . '?' ':' expr
12687  358     | expr . "?? (T_COALESCE)" expr
12688
12689    "or (T_LOGICAL_OR)"           shift, and go to state 237
12690    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
12691    "and (T_LOGICAL_AND)"         shift, and go to state 239
12692    '?'                           shift, and go to state 240
12693    "?? (T_COALESCE)"             shift, and go to state 241
12694    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
12695    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
12696    '|'                           shift, and go to state 244
12697    '^'                           shift, and go to state 245
12698    '&'                           shift, and go to state 246
12699    "== (T_IS_EQUAL)"             shift, and go to state 247
12700    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
12701    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
12702    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
12703    "<=> (T_SPACESHIP)"           shift, and go to state 251
12704    '<'                           shift, and go to state 252
12705    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
12706    '>'                           shift, and go to state 254
12707    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
12708    "<< (T_SL)"                   shift, and go to state 256
12709    ">> (T_SR)"                   shift, and go to state 257
12710    '+'                           shift, and go to state 258
12711    '-'                           shift, and go to state 259
12712    '.'                           shift, and go to state 260
12713    '*'                           shift, and go to state 261
12714    '/'                           shift, and go to state 262
12715    '%'                           shift, and go to state 263
12716    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
12717    "** (T_POW)"                  shift, and go to state 265
12718
12719    $default  reduce using rule 296 (non_empty_for_exprs)
12720
12721
12722State 322
12723
12724  147 statement: "foreach (T_FOREACH)" '(' expr . "as (T_AS)" foreach_variable ')' foreach_statement
12725  148          | "foreach (T_FOREACH)" '(' expr . "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable ')' foreach_statement
12726  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
12727  324     | expr . "&& (T_BOOLEAN_AND)" expr
12728  325     | expr . "or (T_LOGICAL_OR)" expr
12729  326     | expr . "and (T_LOGICAL_AND)" expr
12730  327     | expr . "xor (T_LOGICAL_XOR)" expr
12731  328     | expr . '|' expr
12732  329     | expr . '&' expr
12733  330     | expr . '^' expr
12734  331     | expr . '.' expr
12735  332     | expr . '+' expr
12736  333     | expr . '-' expr
12737  334     | expr . '*' expr
12738  335     | expr . "** (T_POW)" expr
12739  336     | expr . '/' expr
12740  337     | expr . '%' expr
12741  338     | expr . "<< (T_SL)" expr
12742  339     | expr . ">> (T_SR)" expr
12743  344     | expr . "=== (T_IS_IDENTICAL)" expr
12744  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
12745  346     | expr . "== (T_IS_EQUAL)" expr
12746  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
12747  348     | expr . '<' expr
12748  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
12749  350     | expr . '>' expr
12750  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
12751  352     | expr . "<=> (T_SPACESHIP)" expr
12752  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
12753  356     | expr . '?' expr ':' expr
12754  357     | expr . '?' ':' expr
12755  358     | expr . "?? (T_COALESCE)" expr
12756
12757    "or (T_LOGICAL_OR)"           shift, and go to state 237
12758    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
12759    "and (T_LOGICAL_AND)"         shift, and go to state 239
12760    '?'                           shift, and go to state 240
12761    "?? (T_COALESCE)"             shift, and go to state 241
12762    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
12763    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
12764    '|'                           shift, and go to state 244
12765    '^'                           shift, and go to state 245
12766    '&'                           shift, and go to state 246
12767    "== (T_IS_EQUAL)"             shift, and go to state 247
12768    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
12769    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
12770    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
12771    "<=> (T_SPACESHIP)"           shift, and go to state 251
12772    '<'                           shift, and go to state 252
12773    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
12774    '>'                           shift, and go to state 254
12775    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
12776    "<< (T_SL)"                   shift, and go to state 256
12777    ">> (T_SR)"                   shift, and go to state 257
12778    '+'                           shift, and go to state 258
12779    '-'                           shift, and go to state 259
12780    '.'                           shift, and go to state 260
12781    '*'                           shift, and go to state 261
12782    '/'                           shift, and go to state 262
12783    '%'                           shift, and go to state 263
12784    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
12785    "** (T_POW)"                  shift, and go to state 265
12786    "as (T_AS)"                   shift, and go to state 560
12787
12788
12789State 323
12790
12791  121 const_list: const_list . ',' const_decl
12792  150 statement: "declare (T_DECLARE)" '(' const_list . ')' $@3 declare_statement
12793
12794    ','  shift, and go to state 329
12795    ')'  shift, and go to state 561
12796
12797
12798State 324
12799
12800  137 statement: "switch (T_SWITCH)" '(' expr . ')' switch_case_list
12801  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
12802  324     | expr . "&& (T_BOOLEAN_AND)" expr
12803  325     | expr . "or (T_LOGICAL_OR)" expr
12804  326     | expr . "and (T_LOGICAL_AND)" expr
12805  327     | expr . "xor (T_LOGICAL_XOR)" expr
12806  328     | expr . '|' expr
12807  329     | expr . '&' expr
12808  330     | expr . '^' expr
12809  331     | expr . '.' expr
12810  332     | expr . '+' expr
12811  333     | expr . '-' expr
12812  334     | expr . '*' expr
12813  335     | expr . "** (T_POW)" expr
12814  336     | expr . '/' expr
12815  337     | expr . '%' expr
12816  338     | expr . "<< (T_SL)" expr
12817  339     | expr . ">> (T_SR)" expr
12818  344     | expr . "=== (T_IS_IDENTICAL)" expr
12819  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
12820  346     | expr . "== (T_IS_EQUAL)" expr
12821  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
12822  348     | expr . '<' expr
12823  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
12824  350     | expr . '>' expr
12825  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
12826  352     | expr . "<=> (T_SPACESHIP)" expr
12827  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
12828  356     | expr . '?' expr ':' expr
12829  357     | expr . '?' ':' expr
12830  358     | expr . "?? (T_COALESCE)" expr
12831
12832    "or (T_LOGICAL_OR)"           shift, and go to state 237
12833    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
12834    "and (T_LOGICAL_AND)"         shift, and go to state 239
12835    '?'                           shift, and go to state 240
12836    "?? (T_COALESCE)"             shift, and go to state 241
12837    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
12838    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
12839    '|'                           shift, and go to state 244
12840    '^'                           shift, and go to state 245
12841    '&'                           shift, and go to state 246
12842    "== (T_IS_EQUAL)"             shift, and go to state 247
12843    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
12844    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
12845    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
12846    "<=> (T_SPACESHIP)"           shift, and go to state 251
12847    '<'                           shift, and go to state 252
12848    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
12849    '>'                           shift, and go to state 254
12850    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
12851    "<< (T_SL)"                   shift, and go to state 256
12852    ">> (T_SR)"                   shift, and go to state 257
12853    '+'                           shift, and go to state 258
12854    '-'                           shift, and go to state 259
12855    '.'                           shift, and go to state 260
12856    '*'                           shift, and go to state 261
12857    '/'                           shift, and go to state 262
12858    '%'                           shift, and go to state 263
12859    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
12860    "** (T_POW)"                  shift, and go to state 265
12861    ')'                           shift, and go to state 562
12862
12863
12864State 325
12865
12866  138 statement: "break (T_BREAK)" optional_expr ';' .
12867
12868    $default  reduce using rule 138 (statement)
12869
12870
12871State 326
12872
12873  139 statement: "continue (T_CONTINUE)" optional_expr ';' .
12874
12875    $default  reduce using rule 139 (statement)
12876
12877
12878State 327
12879
12880  154 statement: "goto (T_GOTO)" "identifier (T_STRING)" ';' .
12881
12882    $default  reduce using rule 154 (statement)
12883
12884
12885State 328
12886
12887  289 const_decl: "identifier (T_STRING)" '=' . expr backup_doc_comment
12888
12889    "include (T_INCLUDE)"                         shift, and go to state 4
12890    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
12891    "eval (T_EVAL)"                               shift, and go to state 6
12892    "require (T_REQUIRE)"                         shift, and go to state 7
12893    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
12894    "print (T_PRINT)"                             shift, and go to state 9
12895    "yield (T_YIELD)"                             shift, and go to state 10
12896    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
12897    '+'                                           shift, and go to state 12
12898    '-'                                           shift, and go to state 13
12899    '!'                                           shift, and go to state 14
12900    '~'                                           shift, and go to state 15
12901    "++ (T_INC)"                                  shift, and go to state 16
12902    "-- (T_DEC)"                                  shift, and go to state 17
12903    "(int) (T_INT_CAST)"                          shift, and go to state 18
12904    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
12905    "(string) (T_STRING_CAST)"                    shift, and go to state 20
12906    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
12907    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
12908    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
12909    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
12910    '@'                                           shift, and go to state 25
12911    '['                                           shift, and go to state 26
12912    "new (T_NEW)"                                 shift, and go to state 27
12913    "clone (T_CLONE)"                             shift, and go to state 28
12914    "static (T_STATIC)"                           shift, and go to state 113
12915    "integer number (T_LNUMBER)"                  shift, and go to state 32
12916    "floating-point number (T_DNUMBER)"           shift, and go to state 33
12917    "identifier (T_STRING)"                       shift, and go to state 114
12918    "variable (T_VARIABLE)"                       shift, and go to state 35
12919    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
12920    "exit (T_EXIT)"                               shift, and go to state 38
12921    "function (T_FUNCTION)"                       shift, and go to state 50
12922    "isset (T_ISSET)"                             shift, and go to state 58
12923    "empty (T_EMPTY)"                             shift, and go to state 59
12924    "list (T_LIST)"                               shift, and go to state 64
12925    "array (T_ARRAY)"                             shift, and go to state 65
12926    "__LINE__ (T_LINE)"                           shift, and go to state 66
12927    "__FILE__ (T_FILE)"                           shift, and go to state 67
12928    "__DIR__ (T_DIR)"                             shift, and go to state 68
12929    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
12930    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
12931    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
12932    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
12933    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
12934    "namespace (T_NAMESPACE)"                     shift, and go to state 115
12935    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
12936    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
12937    '('                                           shift, and go to state 77
12938    '`'                                           shift, and go to state 80
12939    '"'                                           shift, and go to state 81
12940    '$'                                           shift, and go to state 82
12941
12942    namespace_name              go to state 83
12943    name                        go to state 84
12944    new_expr                    go to state 97
12945    expr                        go to state 563
12946    function                    go to state 117
12947    function_call               go to state 100
12948    class_name                  go to state 101
12949    dereferencable_scalar       go to state 102
12950    scalar                      go to state 103
12951    constant                    go to state 104
12952    variable_class_name         go to state 105
12953    dereferencable              go to state 106
12954    callable_expr               go to state 107
12955    callable_variable           go to state 108
12956    variable                    go to state 109
12957    simple_variable             go to state 110
12958    static_member               go to state 111
12959    internal_functions_in_yacc  go to state 112
12960
12961
12962State 329
12963
12964  121 const_list: const_list ',' . const_decl
12965
12966    "identifier (T_STRING)"  shift, and go to state 180
12967
12968    const_decl  go to state 564
12969
12970
12971State 330
12972
12973  100 top_statement: "const (T_CONST)" const_list ';' .
12974
12975    $default  reduce using rule 100 (top_statement)
12976
12977
12978State 331
12979
12980  140 statement: "return (T_RETURN)" optional_expr ';' .
12981
12982    $default  reduce using rule 140 (statement)
12983
12984
12985State 332
12986
12987  123 inner_statement_list: inner_statement_list . inner_statement
12988  152 statement: "try (T_TRY)" '{' inner_statement_list . '}' catch_list finally_statement
12989
12990    "include (T_INCLUDE)"                         shift, and go to state 4
12991    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
12992    "eval (T_EVAL)"                               shift, and go to state 6
12993    "require (T_REQUIRE)"                         shift, and go to state 7
12994    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
12995    "print (T_PRINT)"                             shift, and go to state 9
12996    "yield (T_YIELD)"                             shift, and go to state 10
12997    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
12998    '+'                                           shift, and go to state 12
12999    '-'                                           shift, and go to state 13
13000    '!'                                           shift, and go to state 14
13001    '~'                                           shift, and go to state 15
13002    "++ (T_INC)"                                  shift, and go to state 16
13003    "-- (T_DEC)"                                  shift, and go to state 17
13004    "(int) (T_INT_CAST)"                          shift, and go to state 18
13005    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
13006    "(string) (T_STRING_CAST)"                    shift, and go to state 20
13007    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
13008    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
13009    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
13010    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
13011    '@'                                           shift, and go to state 25
13012    '['                                           shift, and go to state 26
13013    "new (T_NEW)"                                 shift, and go to state 27
13014    "clone (T_CLONE)"                             shift, and go to state 28
13015    "static (T_STATIC)"                           shift, and go to state 29
13016    "abstract (T_ABSTRACT)"                       shift, and go to state 30
13017    "final (T_FINAL)"                             shift, and go to state 31
13018    "integer number (T_LNUMBER)"                  shift, and go to state 32
13019    "floating-point number (T_DNUMBER)"           shift, and go to state 33
13020    "identifier (T_STRING)"                       shift, and go to state 34
13021    "variable (T_VARIABLE)"                       shift, and go to state 35
13022    T_INLINE_HTML                                 shift, and go to state 36
13023    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
13024    "exit (T_EXIT)"                               shift, and go to state 38
13025    "if (T_IF)"                                   shift, and go to state 39
13026    "echo (T_ECHO)"                               shift, and go to state 40
13027    "do (T_DO)"                                   shift, and go to state 41
13028    "while (T_WHILE)"                             shift, and go to state 42
13029    "for (T_FOR)"                                 shift, and go to state 43
13030    "foreach (T_FOREACH)"                         shift, and go to state 44
13031    "declare (T_DECLARE)"                         shift, and go to state 45
13032    "switch (T_SWITCH)"                           shift, and go to state 46
13033    "break (T_BREAK)"                             shift, and go to state 47
13034    "continue (T_CONTINUE)"                       shift, and go to state 48
13035    "goto (T_GOTO)"                               shift, and go to state 49
13036    "function (T_FUNCTION)"                       shift, and go to state 50
13037    "return (T_RETURN)"                           shift, and go to state 52
13038    "try (T_TRY)"                                 shift, and go to state 53
13039    "throw (T_THROW)"                             shift, and go to state 54
13040    "global (T_GLOBAL)"                           shift, and go to state 56
13041    "unset (T_UNSET)"                             shift, and go to state 57
13042    "isset (T_ISSET)"                             shift, and go to state 58
13043    "empty (T_EMPTY)"                             shift, and go to state 59
13044    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
13045    "class (T_CLASS)"                             shift, and go to state 61
13046    "trait (T_TRAIT)"                             shift, and go to state 62
13047    "interface (T_INTERFACE)"                     shift, and go to state 63
13048    "list (T_LIST)"                               shift, and go to state 64
13049    "array (T_ARRAY)"                             shift, and go to state 65
13050    "__LINE__ (T_LINE)"                           shift, and go to state 66
13051    "__FILE__ (T_FILE)"                           shift, and go to state 67
13052    "__DIR__ (T_DIR)"                             shift, and go to state 68
13053    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
13054    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
13055    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
13056    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
13057    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
13058    "namespace (T_NAMESPACE)"                     shift, and go to state 115
13059    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
13060    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
13061    '('                                           shift, and go to state 77
13062    ';'                                           shift, and go to state 78
13063    '{'                                           shift, and go to state 79
13064    '}'                                           shift, and go to state 565
13065    '`'                                           shift, and go to state 80
13066    '"'                                           shift, and go to state 81
13067    '$'                                           shift, and go to state 82
13068
13069    namespace_name                   go to state 83
13070    name                             go to state 84
13071    inner_statement                  go to state 377
13072    statement                        go to state 378
13073    function_declaration_statement   go to state 379
13074    class_declaration_statement      go to state 380
13075    class_modifiers                  go to state 89
13076    class_modifier                   go to state 90
13077    trait_declaration_statement      go to state 381
13078    interface_declaration_statement  go to state 382
13079    if_stmt_without_else             go to state 93
13080    if_stmt                          go to state 94
13081    alt_if_stmt_without_else         go to state 95
13082    alt_if_stmt                      go to state 96
13083    new_expr                         go to state 97
13084    expr                             go to state 98
13085    function                         go to state 99
13086    function_call                    go to state 100
13087    class_name                       go to state 101
13088    dereferencable_scalar            go to state 102
13089    scalar                           go to state 103
13090    constant                         go to state 104
13091    variable_class_name              go to state 105
13092    dereferencable                   go to state 106
13093    callable_expr                    go to state 107
13094    callable_variable                go to state 108
13095    variable                         go to state 109
13096    simple_variable                  go to state 110
13097    static_member                    go to state 111
13098    internal_functions_in_yacc       go to state 112
13099
13100
13101State 333
13102
13103  153 statement: "throw (T_THROW)" expr ';' .
13104
13105    $default  reduce using rule 153 (statement)
13106
13107
13108State 334
13109
13110   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
13111  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name . "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}'
13112  117 unprefixed_use_declaration: namespace_name .
13113  118                           | namespace_name . "as (T_AS)" "identifier (T_STRING)"
13114
13115    "as (T_AS)"            shift, and go to state 336
13116    "\\ (T_NS_SEPARATOR)"  shift, and go to state 566
13117
13118    $default  reduce using rule 117 (unprefixed_use_declaration)
13119
13120
13121State 335
13122
13123  120 use_declaration: "\\ (T_NS_SEPARATOR)" unprefixed_use_declaration .
13124
13125    $default  reduce using rule 120 (use_declaration)
13126
13127
13128State 336
13129
13130  118 unprefixed_use_declaration: namespace_name "as (T_AS)" . "identifier (T_STRING)"
13131
13132    "identifier (T_STRING)"  shift, and go to state 567
13133
13134
13135State 337
13136
13137   81 namespace_name: namespace_name "\\ (T_NS_SEPARATOR)" . "identifier (T_STRING)"
13138  105 mixed_group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" . '{' inline_use_declarations possible_comma '}'
13139
13140    "identifier (T_STRING)"  shift, and go to state 386
13141    '{'                      shift, and go to state 568
13142
13143
13144State 338
13145
13146  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" . namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}'
13147  120 use_declaration: "\\ (T_NS_SEPARATOR)" . unprefixed_use_declaration
13148
13149    "identifier (T_STRING)"  shift, and go to state 114
13150
13151    namespace_name              go to state 569
13152    unprefixed_use_declaration  go to state 335
13153
13154
13155State 339
13156
13157   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
13158  103 group_use_declaration: namespace_name . "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}'
13159  117 unprefixed_use_declaration: namespace_name .
13160  118                           | namespace_name . "as (T_AS)" "identifier (T_STRING)"
13161
13162    "as (T_AS)"            shift, and go to state 336
13163    "\\ (T_NS_SEPARATOR)"  shift, and go to state 570
13164
13165    $default  reduce using rule 117 (unprefixed_use_declaration)
13166
13167
13168State 340
13169
13170   97 top_statement: "use (T_USE)" use_type group_use_declaration . ';'
13171
13172    ';'  shift, and go to state 571
13173
13174
13175State 341
13176
13177   99 top_statement: "use (T_USE)" use_type use_declarations . ';'
13178  113 use_declarations: use_declarations . ',' use_declaration
13179
13180    ','  shift, and go to state 343
13181    ';'  shift, and go to state 572
13182
13183
13184State 342
13185
13186   96 top_statement: "use (T_USE)" mixed_group_use_declaration ';' .
13187
13188    $default  reduce using rule 96 (top_statement)
13189
13190
13191State 343
13192
13193  113 use_declarations: use_declarations ',' . use_declaration
13194
13195    "identifier (T_STRING)"  shift, and go to state 114
13196    "\\ (T_NS_SEPARATOR)"    shift, and go to state 573
13197
13198    namespace_name              go to state 574
13199    unprefixed_use_declaration  go to state 193
13200    use_declaration             go to state 575
13201
13202
13203State 344
13204
13205   98 top_statement: "use (T_USE)" use_declarations ';' .
13206
13207    $default  reduce using rule 98 (top_statement)
13208
13209
13210State 345
13211
13212  238 global_var_list: global_var_list ',' . global_var
13213
13214    "variable (T_VARIABLE)"  shift, and go to state 35
13215    '$'                      shift, and go to state 82
13216
13217    global_var       go to state 576
13218    simple_variable  go to state 197
13219
13220
13221State 346
13222
13223  141 statement: "global (T_GLOBAL)" global_var_list ';' .
13224
13225    $default  reduce using rule 141 (statement)
13226
13227
13228State 347
13229
13230  146 statement: "unset (T_UNSET)" '(' unset_variables . possible_comma ')' ';'
13231  163 unset_variables: unset_variables . ',' unset_variable
13232
13233    ','  shift, and go to state 577
13234
13235    $default  reduce using rule 107 (possible_comma)
13236
13237    possible_comma  go to state 578
13238
13239
13240State 348
13241
13242  162 unset_variables: unset_variable .
13243
13244    $default  reduce using rule 162 (unset_variables)
13245
13246
13247State 349
13248
13249  164 unset_variable: variable .
13250  429 dereferencable: variable .
13251
13252    ','       reduce using rule 164 (unset_variable)
13253    ')'       reduce using rule 164 (unset_variable)
13254    $default  reduce using rule 429 (dereferencable)
13255
13256
13257State 350
13258
13259  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
13260  324     | expr . "&& (T_BOOLEAN_AND)" expr
13261  325     | expr . "or (T_LOGICAL_OR)" expr
13262  326     | expr . "and (T_LOGICAL_AND)" expr
13263  327     | expr . "xor (T_LOGICAL_XOR)" expr
13264  328     | expr . '|' expr
13265  329     | expr . '&' expr
13266  330     | expr . '^' expr
13267  331     | expr . '.' expr
13268  332     | expr . '+' expr
13269  333     | expr . '-' expr
13270  334     | expr . '*' expr
13271  335     | expr . "** (T_POW)" expr
13272  336     | expr . '/' expr
13273  337     | expr . '%' expr
13274  338     | expr . "<< (T_SL)" expr
13275  339     | expr . ">> (T_SR)" expr
13276  344     | expr . "=== (T_IS_IDENTICAL)" expr
13277  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
13278  346     | expr . "== (T_IS_EQUAL)" expr
13279  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
13280  348     | expr . '<' expr
13281  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
13282  350     | expr . '>' expr
13283  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
13284  352     | expr . "<=> (T_SPACESHIP)" expr
13285  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
13286  356     | expr . '?' expr ':' expr
13287  357     | expr . '?' ':' expr
13288  358     | expr . "?? (T_COALESCE)" expr
13289  496 isset_variable: expr .
13290
13291    "or (T_LOGICAL_OR)"           shift, and go to state 237
13292    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
13293    "and (T_LOGICAL_AND)"         shift, and go to state 239
13294    '?'                           shift, and go to state 240
13295    "?? (T_COALESCE)"             shift, and go to state 241
13296    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
13297    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
13298    '|'                           shift, and go to state 244
13299    '^'                           shift, and go to state 245
13300    '&'                           shift, and go to state 246
13301    "== (T_IS_EQUAL)"             shift, and go to state 247
13302    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
13303    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
13304    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
13305    "<=> (T_SPACESHIP)"           shift, and go to state 251
13306    '<'                           shift, and go to state 252
13307    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
13308    '>'                           shift, and go to state 254
13309    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
13310    "<< (T_SL)"                   shift, and go to state 256
13311    ">> (T_SR)"                   shift, and go to state 257
13312    '+'                           shift, and go to state 258
13313    '-'                           shift, and go to state 259
13314    '.'                           shift, and go to state 260
13315    '*'                           shift, and go to state 261
13316    '/'                           shift, and go to state 262
13317    '%'                           shift, and go to state 263
13318    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
13319    "** (T_POW)"                  shift, and go to state 265
13320
13321    $default  reduce using rule 496 (isset_variable)
13322
13323
13324State 351
13325
13326  487 internal_functions_in_yacc: "isset (T_ISSET)" '(' isset_variables . possible_comma ')'
13327  495 isset_variables: isset_variables . ',' isset_variable
13328
13329    ','  shift, and go to state 579
13330
13331    $default  reduce using rule 107 (possible_comma)
13332
13333    possible_comma  go to state 580
13334
13335
13336State 352
13337
13338  494 isset_variables: isset_variable .
13339
13340    $default  reduce using rule 494 (isset_variables)
13341
13342
13343State 353
13344
13345  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
13346  324     | expr . "&& (T_BOOLEAN_AND)" expr
13347  325     | expr . "or (T_LOGICAL_OR)" expr
13348  326     | expr . "and (T_LOGICAL_AND)" expr
13349  327     | expr . "xor (T_LOGICAL_XOR)" expr
13350  328     | expr . '|' expr
13351  329     | expr . '&' expr
13352  330     | expr . '^' expr
13353  331     | expr . '.' expr
13354  332     | expr . '+' expr
13355  333     | expr . '-' expr
13356  334     | expr . '*' expr
13357  335     | expr . "** (T_POW)" expr
13358  336     | expr . '/' expr
13359  337     | expr . '%' expr
13360  338     | expr . "<< (T_SL)" expr
13361  339     | expr . ">> (T_SR)" expr
13362  344     | expr . "=== (T_IS_IDENTICAL)" expr
13363  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
13364  346     | expr . "== (T_IS_EQUAL)" expr
13365  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
13366  348     | expr . '<' expr
13367  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
13368  350     | expr . '>' expr
13369  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
13370  352     | expr . "<=> (T_SPACESHIP)" expr
13371  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
13372  356     | expr . '?' expr ':' expr
13373  357     | expr . '?' ':' expr
13374  358     | expr . "?? (T_COALESCE)" expr
13375  488 internal_functions_in_yacc: "empty (T_EMPTY)" '(' expr . ')'
13376
13377    "or (T_LOGICAL_OR)"           shift, and go to state 237
13378    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
13379    "and (T_LOGICAL_AND)"         shift, and go to state 239
13380    '?'                           shift, and go to state 240
13381    "?? (T_COALESCE)"             shift, and go to state 241
13382    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
13383    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
13384    '|'                           shift, and go to state 244
13385    '^'                           shift, and go to state 245
13386    '&'                           shift, and go to state 246
13387    "== (T_IS_EQUAL)"             shift, and go to state 247
13388    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
13389    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
13390    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
13391    "<=> (T_SPACESHIP)"           shift, and go to state 251
13392    '<'                           shift, and go to state 252
13393    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
13394    '>'                           shift, and go to state 254
13395    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
13396    "<< (T_SL)"                   shift, and go to state 256
13397    ">> (T_SR)"                   shift, and go to state 257
13398    '+'                           shift, and go to state 258
13399    '-'                           shift, and go to state 259
13400    '.'                           shift, and go to state 260
13401    '*'                           shift, and go to state 261
13402    '/'                           shift, and go to state 262
13403    '%'                           shift, and go to state 263
13404    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
13405    "** (T_POW)"                  shift, and go to state 265
13406    ')'                           shift, and go to state 581
13407
13408
13409State 354
13410
13411   90 top_statement: "__halt_compiler (T_HALT_COMPILER)" '(' ')' . ';'
13412
13413    ';'  shift, and go to state 582
13414
13415
13416State 355
13417
13418  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" . extends_from implements_list backup_doc_comment '{' class_statement_list '}'
13419
13420    "extends (T_EXTENDS)"  shift, and go to state 583
13421
13422    $default  reduce using rule 182 (extends_from)
13423
13424    extends_from  go to state 584
13425
13426
13427State 356
13428
13429  179 trait_declaration_statement: "trait (T_TRAIT)" @6 "identifier (T_STRING)" . backup_doc_comment '{' class_statement_list '}'
13430
13431    $default  reduce using rule 379 (backup_doc_comment)
13432
13433    backup_doc_comment  go to state 585
13434
13435
13436State 357
13437
13438  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 "identifier (T_STRING)" . interface_extends_list backup_doc_comment '{' class_statement_list '}'
13439
13440    "extends (T_EXTENDS)"  shift, and go to state 586
13441
13442    $default  reduce using rule 184 (interface_extends_list)
13443
13444    interface_extends_list  go to state 587
13445
13446
13447State 358
13448
13449  302 expr: "list (T_LIST)" '(' array_pair_list . ')' '=' expr
13450
13451    ')'  shift, and go to state 588
13452
13453
13454State 359
13455
13456  404 dereferencable_scalar: "array (T_ARRAY)" '(' array_pair_list . ')'
13457
13458    ')'  shift, and go to state 589
13459
13460
13461State 360
13462
13463  477 encaps_var: "variable (T_VARIABLE)" '[' . encaps_var_offset ']'
13464
13465    '-'                      shift, and go to state 590
13466    "identifier (T_STRING)"  shift, and go to state 591
13467    "variable (T_VARIABLE)"  shift, and go to state 592
13468    "number (T_NUM_STRING)"  shift, and go to state 593
13469
13470    encaps_var_offset  go to state 594
13471
13472
13473State 361
13474
13475  478 encaps_var: "variable (T_VARIABLE)" "-> (T_OBJECT_OPERATOR)" . "identifier (T_STRING)"
13476
13477    "identifier (T_STRING)"  shift, and go to state 595
13478
13479
13480State 362
13481
13482  417 scalar: "heredoc start (T_START_HEREDOC)" "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" "heredoc end (T_END_HEREDOC)" .
13483
13484    $default  reduce using rule 417 (scalar)
13485
13486
13487State 363
13488
13489  475 encaps_list: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" encaps_var .
13490
13491    $default  reduce using rule 475 (encaps_list)
13492
13493
13494State 364
13495
13496  480 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" . '}'
13497  481           | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" . '[' expr ']' '}'
13498
13499    '['  shift, and go to state 596
13500    '}'  shift, and go to state 597
13501
13502
13503State 365
13504
13505  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
13506  324     | expr . "&& (T_BOOLEAN_AND)" expr
13507  325     | expr . "or (T_LOGICAL_OR)" expr
13508  326     | expr . "and (T_LOGICAL_AND)" expr
13509  327     | expr . "xor (T_LOGICAL_XOR)" expr
13510  328     | expr . '|' expr
13511  329     | expr . '&' expr
13512  330     | expr . '^' expr
13513  331     | expr . '.' expr
13514  332     | expr . '+' expr
13515  333     | expr . '-' expr
13516  334     | expr . '*' expr
13517  335     | expr . "** (T_POW)" expr
13518  336     | expr . '/' expr
13519  337     | expr . '%' expr
13520  338     | expr . "<< (T_SL)" expr
13521  339     | expr . ">> (T_SR)" expr
13522  344     | expr . "=== (T_IS_IDENTICAL)" expr
13523  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
13524  346     | expr . "== (T_IS_EQUAL)" expr
13525  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
13526  348     | expr . '<' expr
13527  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
13528  350     | expr . '>' expr
13529  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
13530  352     | expr . "<=> (T_SPACESHIP)" expr
13531  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
13532  356     | expr . '?' expr ':' expr
13533  357     | expr . '?' ':' expr
13534  358     | expr . "?? (T_COALESCE)" expr
13535  479 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" expr . '}'
13536
13537    "or (T_LOGICAL_OR)"           shift, and go to state 237
13538    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
13539    "and (T_LOGICAL_AND)"         shift, and go to state 239
13540    '?'                           shift, and go to state 240
13541    "?? (T_COALESCE)"             shift, and go to state 241
13542    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
13543    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
13544    '|'                           shift, and go to state 244
13545    '^'                           shift, and go to state 245
13546    '&'                           shift, and go to state 246
13547    "== (T_IS_EQUAL)"             shift, and go to state 247
13548    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
13549    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
13550    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
13551    "<=> (T_SPACESHIP)"           shift, and go to state 251
13552    '<'                           shift, and go to state 252
13553    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
13554    '>'                           shift, and go to state 254
13555    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
13556    "<< (T_SL)"                   shift, and go to state 256
13557    ">> (T_SR)"                   shift, and go to state 257
13558    '+'                           shift, and go to state 258
13559    '-'                           shift, and go to state 259
13560    '.'                           shift, and go to state 260
13561    '*'                           shift, and go to state 261
13562    '/'                           shift, and go to state 262
13563    '%'                           shift, and go to state 263
13564    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
13565    "** (T_POW)"                  shift, and go to state 265
13566    '}'                           shift, and go to state 598
13567
13568
13569State 366
13570
13571  429 dereferencable: variable .
13572  482 encaps_var: "{$ (T_CURLY_OPEN)" variable . '}'
13573
13574    '}'  shift, and go to state 599
13575
13576    $default  reduce using rule 429 (dereferencable)
13577
13578
13579State 367
13580
13581  473 encaps_list: encaps_list "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" .
13582
13583    $default  reduce using rule 473 (encaps_list)
13584
13585
13586State 368
13587
13588  420 scalar: "heredoc start (T_START_HEREDOC)" encaps_list "heredoc end (T_END_HEREDOC)" .
13589
13590    $default  reduce using rule 420 (scalar)
13591
13592
13593State 369
13594
13595  472 encaps_list: encaps_list encaps_var .
13596
13597    $default  reduce using rule 472 (encaps_list)
13598
13599
13600State 370
13601
13602   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
13603   83 name: "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" namespace_name .
13604
13605    "\\ (T_NS_SEPARATOR)"  shift, and go to state 227
13606
13607    $default  reduce using rule 83 (name)
13608
13609
13610State 371
13611
13612   91 top_statement: "namespace (T_NAMESPACE)" namespace_name ';' .
13613
13614    $default  reduce using rule 91 (top_statement)
13615
13616
13617State 372
13618
13619   93 top_statement: "namespace (T_NAMESPACE)" namespace_name $@1 . '{' top_statement_list '}'
13620
13621    '{'  shift, and go to state 600
13622
13623
13624State 373
13625
13626   95 top_statement: "namespace (T_NAMESPACE)" $@2 '{' . top_statement_list '}'
13627
13628    $default  reduce using rule 79 (top_statement_list)
13629
13630    top_statement_list  go to state 601
13631
13632
13633State 374
13634
13635  354 expr: '(' expr ')' .
13636  430 dereferencable: '(' expr ')' .
13637  433 callable_expr: '(' expr ')' .
13638
13639    '['                            reduce using rule 430 (dereferencable)
13640    "-> (T_OBJECT_OPERATOR)"       reduce using rule 430 (dereferencable)
13641    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 430 (dereferencable)
13642    '('                            reduce using rule 433 (callable_expr)
13643    '{'                            reduce using rule 430 (dereferencable)
13644    $default                       reduce using rule 354 (expr)
13645
13646
13647State 375
13648
13649  130 inner_statement: "__halt_compiler (T_HALT_COMPILER)" . '(' ')' ';'
13650
13651    '('  shift, and go to state 602
13652
13653
13654State 376
13655
13656  131 statement: '{' inner_statement_list '}' .
13657
13658    $default  reduce using rule 131 (statement)
13659
13660
13661State 377
13662
13663  123 inner_statement_list: inner_statement_list inner_statement .
13664
13665    $default  reduce using rule 123 (inner_statement_list)
13666
13667
13668State 378
13669
13670  125 inner_statement: statement .
13671
13672    $default  reduce using rule 125 (inner_statement)
13673
13674
13675State 379
13676
13677  126 inner_statement: function_declaration_statement .
13678
13679    $default  reduce using rule 126 (inner_statement)
13680
13681
13682State 380
13683
13684  127 inner_statement: class_declaration_statement .
13685
13686    $default  reduce using rule 127 (inner_statement)
13687
13688
13689State 381
13690
13691  128 inner_statement: trait_declaration_statement .
13692
13693    $default  reduce using rule 128 (inner_statement)
13694
13695
13696State 382
13697
13698  129 inner_statement: interface_declaration_statement .
13699
13700    $default  reduce using rule 129 (inner_statement)
13701
13702
13703State 383
13704
13705  370 expr: '`' backticks_expr '`' .
13706
13707    $default  reduce using rule 370 (expr)
13708
13709
13710State 384
13711
13712  419 scalar: '"' encaps_list '"' .
13713
13714    $default  reduce using rule 419 (scalar)
13715
13716
13717State 385
13718
13719  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
13720  324     | expr . "&& (T_BOOLEAN_AND)" expr
13721  325     | expr . "or (T_LOGICAL_OR)" expr
13722  326     | expr . "and (T_LOGICAL_AND)" expr
13723  327     | expr . "xor (T_LOGICAL_XOR)" expr
13724  328     | expr . '|' expr
13725  329     | expr . '&' expr
13726  330     | expr . '^' expr
13727  331     | expr . '.' expr
13728  332     | expr . '+' expr
13729  333     | expr . '-' expr
13730  334     | expr . '*' expr
13731  335     | expr . "** (T_POW)" expr
13732  336     | expr . '/' expr
13733  337     | expr . '%' expr
13734  338     | expr . "<< (T_SL)" expr
13735  339     | expr . ">> (T_SR)" expr
13736  344     | expr . "=== (T_IS_IDENTICAL)" expr
13737  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
13738  346     | expr . "== (T_IS_EQUAL)" expr
13739  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
13740  348     | expr . '<' expr
13741  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
13742  350     | expr . '>' expr
13743  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
13744  352     | expr . "<=> (T_SPACESHIP)" expr
13745  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
13746  356     | expr . '?' expr ':' expr
13747  357     | expr . '?' ':' expr
13748  358     | expr . "?? (T_COALESCE)" expr
13749  445 simple_variable: '$' '{' expr . '}'
13750
13751    "or (T_LOGICAL_OR)"           shift, and go to state 237
13752    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
13753    "and (T_LOGICAL_AND)"         shift, and go to state 239
13754    '?'                           shift, and go to state 240
13755    "?? (T_COALESCE)"             shift, and go to state 241
13756    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
13757    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
13758    '|'                           shift, and go to state 244
13759    '^'                           shift, and go to state 245
13760    '&'                           shift, and go to state 246
13761    "== (T_IS_EQUAL)"             shift, and go to state 247
13762    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
13763    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
13764    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
13765    "<=> (T_SPACESHIP)"           shift, and go to state 251
13766    '<'                           shift, and go to state 252
13767    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
13768    '>'                           shift, and go to state 254
13769    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
13770    "<< (T_SL)"                   shift, and go to state 256
13771    ">> (T_SR)"                   shift, and go to state 257
13772    '+'                           shift, and go to state 258
13773    '-'                           shift, and go to state 259
13774    '.'                           shift, and go to state 260
13775    '*'                           shift, and go to state 261
13776    '/'                           shift, and go to state 262
13777    '%'                           shift, and go to state 263
13778    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
13779    "** (T_POW)"                  shift, and go to state 265
13780    '}'                           shift, and go to state 603
13781
13782
13783State 386
13784
13785   81 namespace_name: namespace_name "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)" .
13786
13787    $default  reduce using rule 81 (namespace_name)
13788
13789
13790State 387
13791
13792  237 argument: "... (T_ELLIPSIS)" . expr
13793
13794    "include (T_INCLUDE)"                         shift, and go to state 4
13795    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
13796    "eval (T_EVAL)"                               shift, and go to state 6
13797    "require (T_REQUIRE)"                         shift, and go to state 7
13798    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
13799    "print (T_PRINT)"                             shift, and go to state 9
13800    "yield (T_YIELD)"                             shift, and go to state 10
13801    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
13802    '+'                                           shift, and go to state 12
13803    '-'                                           shift, and go to state 13
13804    '!'                                           shift, and go to state 14
13805    '~'                                           shift, and go to state 15
13806    "++ (T_INC)"                                  shift, and go to state 16
13807    "-- (T_DEC)"                                  shift, and go to state 17
13808    "(int) (T_INT_CAST)"                          shift, and go to state 18
13809    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
13810    "(string) (T_STRING_CAST)"                    shift, and go to state 20
13811    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
13812    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
13813    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
13814    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
13815    '@'                                           shift, and go to state 25
13816    '['                                           shift, and go to state 26
13817    "new (T_NEW)"                                 shift, and go to state 27
13818    "clone (T_CLONE)"                             shift, and go to state 28
13819    "static (T_STATIC)"                           shift, and go to state 113
13820    "integer number (T_LNUMBER)"                  shift, and go to state 32
13821    "floating-point number (T_DNUMBER)"           shift, and go to state 33
13822    "identifier (T_STRING)"                       shift, and go to state 114
13823    "variable (T_VARIABLE)"                       shift, and go to state 35
13824    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
13825    "exit (T_EXIT)"                               shift, and go to state 38
13826    "function (T_FUNCTION)"                       shift, and go to state 50
13827    "isset (T_ISSET)"                             shift, and go to state 58
13828    "empty (T_EMPTY)"                             shift, and go to state 59
13829    "list (T_LIST)"                               shift, and go to state 64
13830    "array (T_ARRAY)"                             shift, and go to state 65
13831    "__LINE__ (T_LINE)"                           shift, and go to state 66
13832    "__FILE__ (T_FILE)"                           shift, and go to state 67
13833    "__DIR__ (T_DIR)"                             shift, and go to state 68
13834    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
13835    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
13836    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
13837    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
13838    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
13839    "namespace (T_NAMESPACE)"                     shift, and go to state 115
13840    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
13841    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
13842    '('                                           shift, and go to state 77
13843    '`'                                           shift, and go to state 80
13844    '"'                                           shift, and go to state 81
13845    '$'                                           shift, and go to state 82
13846
13847    namespace_name              go to state 83
13848    name                        go to state 84
13849    new_expr                    go to state 97
13850    expr                        go to state 604
13851    function                    go to state 117
13852    function_call               go to state 100
13853    class_name                  go to state 101
13854    dereferencable_scalar       go to state 102
13855    scalar                      go to state 103
13856    constant                    go to state 104
13857    variable_class_name         go to state 105
13858    dereferencable              go to state 106
13859    callable_expr               go to state 107
13860    callable_variable           go to state 108
13861    variable                    go to state 109
13862    simple_variable             go to state 110
13863    static_member               go to state 111
13864    internal_functions_in_yacc  go to state 112
13865
13866
13867State 388
13868
13869  232 argument_list: '(' ')' .
13870
13871    $default  reduce using rule 232 (argument_list)
13872
13873
13874State 389
13875
13876  233 argument_list: '(' non_empty_argument_list . possible_comma ')'
13877  235 non_empty_argument_list: non_empty_argument_list . ',' argument
13878
13879    ','  shift, and go to state 605
13880
13881    $default  reduce using rule 107 (possible_comma)
13882
13883    possible_comma  go to state 606
13884
13885
13886State 390
13887
13888  234 non_empty_argument_list: argument .
13889
13890    $default  reduce using rule 234 (non_empty_argument_list)
13891
13892
13893State 391
13894
13895  236 argument: expr .
13896  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
13897  324     | expr . "&& (T_BOOLEAN_AND)" expr
13898  325     | expr . "or (T_LOGICAL_OR)" expr
13899  326     | expr . "and (T_LOGICAL_AND)" expr
13900  327     | expr . "xor (T_LOGICAL_XOR)" expr
13901  328     | expr . '|' expr
13902  329     | expr . '&' expr
13903  330     | expr . '^' expr
13904  331     | expr . '.' expr
13905  332     | expr . '+' expr
13906  333     | expr . '-' expr
13907  334     | expr . '*' expr
13908  335     | expr . "** (T_POW)" expr
13909  336     | expr . '/' expr
13910  337     | expr . '%' expr
13911  338     | expr . "<< (T_SL)" expr
13912  339     | expr . ">> (T_SR)" expr
13913  344     | expr . "=== (T_IS_IDENTICAL)" expr
13914  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
13915  346     | expr . "== (T_IS_EQUAL)" expr
13916  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
13917  348     | expr . '<' expr
13918  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
13919  350     | expr . '>' expr
13920  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
13921  352     | expr . "<=> (T_SPACESHIP)" expr
13922  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
13923  356     | expr . '?' expr ':' expr
13924  357     | expr . '?' ':' expr
13925  358     | expr . "?? (T_COALESCE)" expr
13926
13927    "or (T_LOGICAL_OR)"           shift, and go to state 237
13928    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
13929    "and (T_LOGICAL_AND)"         shift, and go to state 239
13930    '?'                           shift, and go to state 240
13931    "?? (T_COALESCE)"             shift, and go to state 241
13932    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
13933    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
13934    '|'                           shift, and go to state 244
13935    '^'                           shift, and go to state 245
13936    '&'                           shift, and go to state 246
13937    "== (T_IS_EQUAL)"             shift, and go to state 247
13938    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
13939    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
13940    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
13941    "<=> (T_SPACESHIP)"           shift, and go to state 251
13942    '<'                           shift, and go to state 252
13943    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
13944    '>'                           shift, and go to state 254
13945    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
13946    "<< (T_SL)"                   shift, and go to state 256
13947    ">> (T_SR)"                   shift, and go to state 257
13948    '+'                           shift, and go to state 258
13949    '-'                           shift, and go to state 259
13950    '.'                           shift, and go to state 260
13951    '*'                           shift, and go to state 261
13952    '/'                           shift, and go to state 262
13953    '%'                           shift, and go to state 263
13954    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
13955    "** (T_POW)"                  shift, and go to state 265
13956
13957    $default  reduce using rule 236 (argument)
13958
13959
13960State 392
13961
13962  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 . "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}'
13963
13964    "identifier (T_STRING)"  shift, and go to state 607
13965
13966
13967State 393
13968
13969  210 if_stmt_without_else: if_stmt_without_else "elseif (T_ELSEIF)" '(' . expr ')' statement
13970
13971    "include (T_INCLUDE)"                         shift, and go to state 4
13972    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
13973    "eval (T_EVAL)"                               shift, and go to state 6
13974    "require (T_REQUIRE)"                         shift, and go to state 7
13975    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
13976    "print (T_PRINT)"                             shift, and go to state 9
13977    "yield (T_YIELD)"                             shift, and go to state 10
13978    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
13979    '+'                                           shift, and go to state 12
13980    '-'                                           shift, and go to state 13
13981    '!'                                           shift, and go to state 14
13982    '~'                                           shift, and go to state 15
13983    "++ (T_INC)"                                  shift, and go to state 16
13984    "-- (T_DEC)"                                  shift, and go to state 17
13985    "(int) (T_INT_CAST)"                          shift, and go to state 18
13986    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
13987    "(string) (T_STRING_CAST)"                    shift, and go to state 20
13988    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
13989    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
13990    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
13991    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
13992    '@'                                           shift, and go to state 25
13993    '['                                           shift, and go to state 26
13994    "new (T_NEW)"                                 shift, and go to state 27
13995    "clone (T_CLONE)"                             shift, and go to state 28
13996    "static (T_STATIC)"                           shift, and go to state 113
13997    "integer number (T_LNUMBER)"                  shift, and go to state 32
13998    "floating-point number (T_DNUMBER)"           shift, and go to state 33
13999    "identifier (T_STRING)"                       shift, and go to state 114
14000    "variable (T_VARIABLE)"                       shift, and go to state 35
14001    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
14002    "exit (T_EXIT)"                               shift, and go to state 38
14003    "function (T_FUNCTION)"                       shift, and go to state 50
14004    "isset (T_ISSET)"                             shift, and go to state 58
14005    "empty (T_EMPTY)"                             shift, and go to state 59
14006    "list (T_LIST)"                               shift, and go to state 64
14007    "array (T_ARRAY)"                             shift, and go to state 65
14008    "__LINE__ (T_LINE)"                           shift, and go to state 66
14009    "__FILE__ (T_FILE)"                           shift, and go to state 67
14010    "__DIR__ (T_DIR)"                             shift, and go to state 68
14011    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
14012    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
14013    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
14014    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
14015    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
14016    "namespace (T_NAMESPACE)"                     shift, and go to state 115
14017    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
14018    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
14019    '('                                           shift, and go to state 77
14020    '`'                                           shift, and go to state 80
14021    '"'                                           shift, and go to state 81
14022    '$'                                           shift, and go to state 82
14023
14024    namespace_name              go to state 83
14025    name                        go to state 84
14026    new_expr                    go to state 97
14027    expr                        go to state 608
14028    function                    go to state 117
14029    function_call               go to state 100
14030    class_name                  go to state 101
14031    dereferencable_scalar       go to state 102
14032    scalar                      go to state 103
14033    constant                    go to state 104
14034    variable_class_name         go to state 105
14035    dereferencable              go to state 106
14036    callable_expr               go to state 107
14037    callable_variable           go to state 108
14038    variable                    go to state 109
14039    simple_variable             go to state 110
14040    static_member               go to state 111
14041    internal_functions_in_yacc  go to state 112
14042
14043
14044State 394
14045
14046  212 if_stmt: if_stmt_without_else "else (T_ELSE)" statement .
14047
14048    $default  reduce using rule 212 (if_stmt)
14049
14050
14051State 395
14052
14053  214 alt_if_stmt_without_else: alt_if_stmt_without_else "elseif (T_ELSEIF)" '(' . expr ')' ':' inner_statement_list
14054
14055    "include (T_INCLUDE)"                         shift, and go to state 4
14056    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
14057    "eval (T_EVAL)"                               shift, and go to state 6
14058    "require (T_REQUIRE)"                         shift, and go to state 7
14059    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
14060    "print (T_PRINT)"                             shift, and go to state 9
14061    "yield (T_YIELD)"                             shift, and go to state 10
14062    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
14063    '+'                                           shift, and go to state 12
14064    '-'                                           shift, and go to state 13
14065    '!'                                           shift, and go to state 14
14066    '~'                                           shift, and go to state 15
14067    "++ (T_INC)"                                  shift, and go to state 16
14068    "-- (T_DEC)"                                  shift, and go to state 17
14069    "(int) (T_INT_CAST)"                          shift, and go to state 18
14070    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
14071    "(string) (T_STRING_CAST)"                    shift, and go to state 20
14072    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
14073    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
14074    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
14075    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
14076    '@'                                           shift, and go to state 25
14077    '['                                           shift, and go to state 26
14078    "new (T_NEW)"                                 shift, and go to state 27
14079    "clone (T_CLONE)"                             shift, and go to state 28
14080    "static (T_STATIC)"                           shift, and go to state 113
14081    "integer number (T_LNUMBER)"                  shift, and go to state 32
14082    "floating-point number (T_DNUMBER)"           shift, and go to state 33
14083    "identifier (T_STRING)"                       shift, and go to state 114
14084    "variable (T_VARIABLE)"                       shift, and go to state 35
14085    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
14086    "exit (T_EXIT)"                               shift, and go to state 38
14087    "function (T_FUNCTION)"                       shift, and go to state 50
14088    "isset (T_ISSET)"                             shift, and go to state 58
14089    "empty (T_EMPTY)"                             shift, and go to state 59
14090    "list (T_LIST)"                               shift, and go to state 64
14091    "array (T_ARRAY)"                             shift, and go to state 65
14092    "__LINE__ (T_LINE)"                           shift, and go to state 66
14093    "__FILE__ (T_FILE)"                           shift, and go to state 67
14094    "__DIR__ (T_DIR)"                             shift, and go to state 68
14095    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
14096    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
14097    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
14098    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
14099    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
14100    "namespace (T_NAMESPACE)"                     shift, and go to state 115
14101    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
14102    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
14103    '('                                           shift, and go to state 77
14104    '`'                                           shift, and go to state 80
14105    '"'                                           shift, and go to state 81
14106    '$'                                           shift, and go to state 82
14107
14108    namespace_name              go to state 83
14109    name                        go to state 84
14110    new_expr                    go to state 97
14111    expr                        go to state 609
14112    function                    go to state 117
14113    function_call               go to state 100
14114    class_name                  go to state 101
14115    dereferencable_scalar       go to state 102
14116    scalar                      go to state 103
14117    constant                    go to state 104
14118    variable_class_name         go to state 105
14119    dereferencable              go to state 106
14120    callable_expr               go to state 107
14121    callable_variable           go to state 108
14122    variable                    go to state 109
14123    simple_variable             go to state 110
14124    static_member               go to state 111
14125    internal_functions_in_yacc  go to state 112
14126
14127
14128State 396
14129
14130  216 alt_if_stmt: alt_if_stmt_without_else "else (T_ELSE)" ':' . inner_statement_list "endif (T_ENDIF)" ';'
14131
14132    $default  reduce using rule 124 (inner_statement_list)
14133
14134    inner_statement_list  go to state 610
14135
14136
14137State 397
14138
14139  215 alt_if_stmt: alt_if_stmt_without_else "endif (T_ENDIF)" ';' .
14140
14141    $default  reduce using rule 215 (alt_if_stmt)
14142
14143
14144State 398
14145
14146  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
14147  324     | expr . "&& (T_BOOLEAN_AND)" expr
14148  325     | expr . "or (T_LOGICAL_OR)" expr
14149  325     | expr "or (T_LOGICAL_OR)" expr .
14150  326     | expr . "and (T_LOGICAL_AND)" expr
14151  327     | expr . "xor (T_LOGICAL_XOR)" expr
14152  328     | expr . '|' expr
14153  329     | expr . '&' expr
14154  330     | expr . '^' expr
14155  331     | expr . '.' expr
14156  332     | expr . '+' expr
14157  333     | expr . '-' expr
14158  334     | expr . '*' expr
14159  335     | expr . "** (T_POW)" expr
14160  336     | expr . '/' expr
14161  337     | expr . '%' expr
14162  338     | expr . "<< (T_SL)" expr
14163  339     | expr . ">> (T_SR)" expr
14164  344     | expr . "=== (T_IS_IDENTICAL)" expr
14165  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
14166  346     | expr . "== (T_IS_EQUAL)" expr
14167  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
14168  348     | expr . '<' expr
14169  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
14170  350     | expr . '>' expr
14171  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
14172  352     | expr . "<=> (T_SPACESHIP)" expr
14173  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
14174  356     | expr . '?' expr ':' expr
14175  357     | expr . '?' ':' expr
14176  358     | expr . "?? (T_COALESCE)" expr
14177
14178    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
14179    "and (T_LOGICAL_AND)"         shift, and go to state 239
14180    '?'                           shift, and go to state 240
14181    "?? (T_COALESCE)"             shift, and go to state 241
14182    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
14183    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
14184    '|'                           shift, and go to state 244
14185    '^'                           shift, and go to state 245
14186    '&'                           shift, and go to state 246
14187    "== (T_IS_EQUAL)"             shift, and go to state 247
14188    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
14189    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
14190    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
14191    "<=> (T_SPACESHIP)"           shift, and go to state 251
14192    '<'                           shift, and go to state 252
14193    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
14194    '>'                           shift, and go to state 254
14195    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
14196    "<< (T_SL)"                   shift, and go to state 256
14197    ">> (T_SR)"                   shift, and go to state 257
14198    '+'                           shift, and go to state 258
14199    '-'                           shift, and go to state 259
14200    '.'                           shift, and go to state 260
14201    '*'                           shift, and go to state 261
14202    '/'                           shift, and go to state 262
14203    '%'                           shift, and go to state 263
14204    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
14205    "** (T_POW)"                  shift, and go to state 265
14206
14207    $default  reduce using rule 325 (expr)
14208
14209
14210State 399
14211
14212  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
14213  324     | expr . "&& (T_BOOLEAN_AND)" expr
14214  325     | expr . "or (T_LOGICAL_OR)" expr
14215  326     | expr . "and (T_LOGICAL_AND)" expr
14216  327     | expr . "xor (T_LOGICAL_XOR)" expr
14217  327     | expr "xor (T_LOGICAL_XOR)" expr .
14218  328     | expr . '|' expr
14219  329     | expr . '&' expr
14220  330     | expr . '^' expr
14221  331     | expr . '.' expr
14222  332     | expr . '+' expr
14223  333     | expr . '-' expr
14224  334     | expr . '*' expr
14225  335     | expr . "** (T_POW)" expr
14226  336     | expr . '/' expr
14227  337     | expr . '%' expr
14228  338     | expr . "<< (T_SL)" expr
14229  339     | expr . ">> (T_SR)" expr
14230  344     | expr . "=== (T_IS_IDENTICAL)" expr
14231  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
14232  346     | expr . "== (T_IS_EQUAL)" expr
14233  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
14234  348     | expr . '<' expr
14235  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
14236  350     | expr . '>' expr
14237  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
14238  352     | expr . "<=> (T_SPACESHIP)" expr
14239  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
14240  356     | expr . '?' expr ':' expr
14241  357     | expr . '?' ':' expr
14242  358     | expr . "?? (T_COALESCE)" expr
14243
14244    "and (T_LOGICAL_AND)"         shift, and go to state 239
14245    '?'                           shift, and go to state 240
14246    "?? (T_COALESCE)"             shift, and go to state 241
14247    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
14248    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
14249    '|'                           shift, and go to state 244
14250    '^'                           shift, and go to state 245
14251    '&'                           shift, and go to state 246
14252    "== (T_IS_EQUAL)"             shift, and go to state 247
14253    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
14254    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
14255    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
14256    "<=> (T_SPACESHIP)"           shift, and go to state 251
14257    '<'                           shift, and go to state 252
14258    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
14259    '>'                           shift, and go to state 254
14260    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
14261    "<< (T_SL)"                   shift, and go to state 256
14262    ">> (T_SR)"                   shift, and go to state 257
14263    '+'                           shift, and go to state 258
14264    '-'                           shift, and go to state 259
14265    '.'                           shift, and go to state 260
14266    '*'                           shift, and go to state 261
14267    '/'                           shift, and go to state 262
14268    '%'                           shift, and go to state 263
14269    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
14270    "** (T_POW)"                  shift, and go to state 265
14271
14272    $default  reduce using rule 327 (expr)
14273
14274
14275State 400
14276
14277  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
14278  324     | expr . "&& (T_BOOLEAN_AND)" expr
14279  325     | expr . "or (T_LOGICAL_OR)" expr
14280  326     | expr . "and (T_LOGICAL_AND)" expr
14281  326     | expr "and (T_LOGICAL_AND)" expr .
14282  327     | expr . "xor (T_LOGICAL_XOR)" expr
14283  328     | expr . '|' expr
14284  329     | expr . '&' expr
14285  330     | expr . '^' expr
14286  331     | expr . '.' expr
14287  332     | expr . '+' expr
14288  333     | expr . '-' expr
14289  334     | expr . '*' expr
14290  335     | expr . "** (T_POW)" expr
14291  336     | expr . '/' expr
14292  337     | expr . '%' expr
14293  338     | expr . "<< (T_SL)" expr
14294  339     | expr . ">> (T_SR)" expr
14295  344     | expr . "=== (T_IS_IDENTICAL)" expr
14296  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
14297  346     | expr . "== (T_IS_EQUAL)" expr
14298  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
14299  348     | expr . '<' expr
14300  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
14301  350     | expr . '>' expr
14302  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
14303  352     | expr . "<=> (T_SPACESHIP)" expr
14304  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
14305  356     | expr . '?' expr ':' expr
14306  357     | expr . '?' ':' expr
14307  358     | expr . "?? (T_COALESCE)" expr
14308
14309    '?'                           shift, and go to state 240
14310    "?? (T_COALESCE)"             shift, and go to state 241
14311    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
14312    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
14313    '|'                           shift, and go to state 244
14314    '^'                           shift, and go to state 245
14315    '&'                           shift, and go to state 246
14316    "== (T_IS_EQUAL)"             shift, and go to state 247
14317    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
14318    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
14319    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
14320    "<=> (T_SPACESHIP)"           shift, and go to state 251
14321    '<'                           shift, and go to state 252
14322    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
14323    '>'                           shift, and go to state 254
14324    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
14325    "<< (T_SL)"                   shift, and go to state 256
14326    ">> (T_SR)"                   shift, and go to state 257
14327    '+'                           shift, and go to state 258
14328    '-'                           shift, and go to state 259
14329    '.'                           shift, and go to state 260
14330    '*'                           shift, and go to state 261
14331    '/'                           shift, and go to state 262
14332    '%'                           shift, and go to state 263
14333    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
14334    "** (T_POW)"                  shift, and go to state 265
14335
14336    $default  reduce using rule 326 (expr)
14337
14338
14339State 401
14340
14341  357 expr: expr '?' ':' . expr
14342
14343    "include (T_INCLUDE)"                         shift, and go to state 4
14344    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
14345    "eval (T_EVAL)"                               shift, and go to state 6
14346    "require (T_REQUIRE)"                         shift, and go to state 7
14347    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
14348    "print (T_PRINT)"                             shift, and go to state 9
14349    "yield (T_YIELD)"                             shift, and go to state 10
14350    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
14351    '+'                                           shift, and go to state 12
14352    '-'                                           shift, and go to state 13
14353    '!'                                           shift, and go to state 14
14354    '~'                                           shift, and go to state 15
14355    "++ (T_INC)"                                  shift, and go to state 16
14356    "-- (T_DEC)"                                  shift, and go to state 17
14357    "(int) (T_INT_CAST)"                          shift, and go to state 18
14358    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
14359    "(string) (T_STRING_CAST)"                    shift, and go to state 20
14360    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
14361    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
14362    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
14363    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
14364    '@'                                           shift, and go to state 25
14365    '['                                           shift, and go to state 26
14366    "new (T_NEW)"                                 shift, and go to state 27
14367    "clone (T_CLONE)"                             shift, and go to state 28
14368    "static (T_STATIC)"                           shift, and go to state 113
14369    "integer number (T_LNUMBER)"                  shift, and go to state 32
14370    "floating-point number (T_DNUMBER)"           shift, and go to state 33
14371    "identifier (T_STRING)"                       shift, and go to state 114
14372    "variable (T_VARIABLE)"                       shift, and go to state 35
14373    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
14374    "exit (T_EXIT)"                               shift, and go to state 38
14375    "function (T_FUNCTION)"                       shift, and go to state 50
14376    "isset (T_ISSET)"                             shift, and go to state 58
14377    "empty (T_EMPTY)"                             shift, and go to state 59
14378    "list (T_LIST)"                               shift, and go to state 64
14379    "array (T_ARRAY)"                             shift, and go to state 65
14380    "__LINE__ (T_LINE)"                           shift, and go to state 66
14381    "__FILE__ (T_FILE)"                           shift, and go to state 67
14382    "__DIR__ (T_DIR)"                             shift, and go to state 68
14383    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
14384    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
14385    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
14386    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
14387    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
14388    "namespace (T_NAMESPACE)"                     shift, and go to state 115
14389    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
14390    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
14391    '('                                           shift, and go to state 77
14392    '`'                                           shift, and go to state 80
14393    '"'                                           shift, and go to state 81
14394    '$'                                           shift, and go to state 82
14395
14396    namespace_name              go to state 83
14397    name                        go to state 84
14398    new_expr                    go to state 97
14399    expr                        go to state 611
14400    function                    go to state 117
14401    function_call               go to state 100
14402    class_name                  go to state 101
14403    dereferencable_scalar       go to state 102
14404    scalar                      go to state 103
14405    constant                    go to state 104
14406    variable_class_name         go to state 105
14407    dereferencable              go to state 106
14408    callable_expr               go to state 107
14409    callable_variable           go to state 108
14410    variable                    go to state 109
14411    simple_variable             go to state 110
14412    static_member               go to state 111
14413    internal_functions_in_yacc  go to state 112
14414
14415
14416State 402
14417
14418  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
14419  324     | expr . "&& (T_BOOLEAN_AND)" expr
14420  325     | expr . "or (T_LOGICAL_OR)" expr
14421  326     | expr . "and (T_LOGICAL_AND)" expr
14422  327     | expr . "xor (T_LOGICAL_XOR)" expr
14423  328     | expr . '|' expr
14424  329     | expr . '&' expr
14425  330     | expr . '^' expr
14426  331     | expr . '.' expr
14427  332     | expr . '+' expr
14428  333     | expr . '-' expr
14429  334     | expr . '*' expr
14430  335     | expr . "** (T_POW)" expr
14431  336     | expr . '/' expr
14432  337     | expr . '%' expr
14433  338     | expr . "<< (T_SL)" expr
14434  339     | expr . ">> (T_SR)" expr
14435  344     | expr . "=== (T_IS_IDENTICAL)" expr
14436  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
14437  346     | expr . "== (T_IS_EQUAL)" expr
14438  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
14439  348     | expr . '<' expr
14440  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
14441  350     | expr . '>' expr
14442  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
14443  352     | expr . "<=> (T_SPACESHIP)" expr
14444  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
14445  356     | expr . '?' expr ':' expr
14446  356     | expr '?' expr . ':' expr
14447  357     | expr . '?' ':' expr
14448  358     | expr . "?? (T_COALESCE)" expr
14449
14450    "or (T_LOGICAL_OR)"           shift, and go to state 237
14451    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
14452    "and (T_LOGICAL_AND)"         shift, and go to state 239
14453    '?'                           shift, and go to state 240
14454    ':'                           shift, and go to state 612
14455    "?? (T_COALESCE)"             shift, and go to state 241
14456    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
14457    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
14458    '|'                           shift, and go to state 244
14459    '^'                           shift, and go to state 245
14460    '&'                           shift, and go to state 246
14461    "== (T_IS_EQUAL)"             shift, and go to state 247
14462    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
14463    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
14464    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
14465    "<=> (T_SPACESHIP)"           shift, and go to state 251
14466    '<'                           shift, and go to state 252
14467    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
14468    '>'                           shift, and go to state 254
14469    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
14470    "<< (T_SL)"                   shift, and go to state 256
14471    ">> (T_SR)"                   shift, and go to state 257
14472    '+'                           shift, and go to state 258
14473    '-'                           shift, and go to state 259
14474    '.'                           shift, and go to state 260
14475    '*'                           shift, and go to state 261
14476    '/'                           shift, and go to state 262
14477    '%'                           shift, and go to state 263
14478    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
14479    "** (T_POW)"                  shift, and go to state 265
14480
14481
14482State 403
14483
14484  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
14485  324     | expr . "&& (T_BOOLEAN_AND)" expr
14486  325     | expr . "or (T_LOGICAL_OR)" expr
14487  326     | expr . "and (T_LOGICAL_AND)" expr
14488  327     | expr . "xor (T_LOGICAL_XOR)" expr
14489  328     | expr . '|' expr
14490  329     | expr . '&' expr
14491  330     | expr . '^' expr
14492  331     | expr . '.' expr
14493  332     | expr . '+' expr
14494  333     | expr . '-' expr
14495  334     | expr . '*' expr
14496  335     | expr . "** (T_POW)" expr
14497  336     | expr . '/' expr
14498  337     | expr . '%' expr
14499  338     | expr . "<< (T_SL)" expr
14500  339     | expr . ">> (T_SR)" expr
14501  344     | expr . "=== (T_IS_IDENTICAL)" expr
14502  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
14503  346     | expr . "== (T_IS_EQUAL)" expr
14504  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
14505  348     | expr . '<' expr
14506  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
14507  350     | expr . '>' expr
14508  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
14509  352     | expr . "<=> (T_SPACESHIP)" expr
14510  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
14511  356     | expr . '?' expr ':' expr
14512  357     | expr . '?' ':' expr
14513  358     | expr . "?? (T_COALESCE)" expr
14514  358     | expr "?? (T_COALESCE)" expr .
14515
14516    "?? (T_COALESCE)"             shift, and go to state 241
14517    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
14518    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
14519    '|'                           shift, and go to state 244
14520    '^'                           shift, and go to state 245
14521    '&'                           shift, and go to state 246
14522    "== (T_IS_EQUAL)"             shift, and go to state 247
14523    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
14524    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
14525    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
14526    "<=> (T_SPACESHIP)"           shift, and go to state 251
14527    '<'                           shift, and go to state 252
14528    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
14529    '>'                           shift, and go to state 254
14530    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
14531    "<< (T_SL)"                   shift, and go to state 256
14532    ">> (T_SR)"                   shift, and go to state 257
14533    '+'                           shift, and go to state 258
14534    '-'                           shift, and go to state 259
14535    '.'                           shift, and go to state 260
14536    '*'                           shift, and go to state 261
14537    '/'                           shift, and go to state 262
14538    '%'                           shift, and go to state 263
14539    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
14540    "** (T_POW)"                  shift, and go to state 265
14541
14542    $default  reduce using rule 358 (expr)
14543
14544
14545State 404
14546
14547  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
14548  323     | expr "|| (T_BOOLEAN_OR)" expr .
14549  324     | expr . "&& (T_BOOLEAN_AND)" expr
14550  325     | expr . "or (T_LOGICAL_OR)" expr
14551  326     | expr . "and (T_LOGICAL_AND)" expr
14552  327     | expr . "xor (T_LOGICAL_XOR)" expr
14553  328     | expr . '|' expr
14554  329     | expr . '&' expr
14555  330     | expr . '^' expr
14556  331     | expr . '.' expr
14557  332     | expr . '+' expr
14558  333     | expr . '-' expr
14559  334     | expr . '*' expr
14560  335     | expr . "** (T_POW)" expr
14561  336     | expr . '/' expr
14562  337     | expr . '%' expr
14563  338     | expr . "<< (T_SL)" expr
14564  339     | expr . ">> (T_SR)" expr
14565  344     | expr . "=== (T_IS_IDENTICAL)" expr
14566  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
14567  346     | expr . "== (T_IS_EQUAL)" expr
14568  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
14569  348     | expr . '<' expr
14570  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
14571  350     | expr . '>' expr
14572  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
14573  352     | expr . "<=> (T_SPACESHIP)" expr
14574  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
14575  356     | expr . '?' expr ':' expr
14576  357     | expr . '?' ':' expr
14577  358     | expr . "?? (T_COALESCE)" expr
14578
14579    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
14580    '|'                           shift, and go to state 244
14581    '^'                           shift, and go to state 245
14582    '&'                           shift, and go to state 246
14583    "== (T_IS_EQUAL)"             shift, and go to state 247
14584    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
14585    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
14586    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
14587    "<=> (T_SPACESHIP)"           shift, and go to state 251
14588    '<'                           shift, and go to state 252
14589    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
14590    '>'                           shift, and go to state 254
14591    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
14592    "<< (T_SL)"                   shift, and go to state 256
14593    ">> (T_SR)"                   shift, and go to state 257
14594    '+'                           shift, and go to state 258
14595    '-'                           shift, and go to state 259
14596    '.'                           shift, and go to state 260
14597    '*'                           shift, and go to state 261
14598    '/'                           shift, and go to state 262
14599    '%'                           shift, and go to state 263
14600    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
14601    "** (T_POW)"                  shift, and go to state 265
14602
14603    $default  reduce using rule 323 (expr)
14604
14605
14606State 405
14607
14608  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
14609  324     | expr . "&& (T_BOOLEAN_AND)" expr
14610  324     | expr "&& (T_BOOLEAN_AND)" expr .
14611  325     | expr . "or (T_LOGICAL_OR)" expr
14612  326     | expr . "and (T_LOGICAL_AND)" expr
14613  327     | expr . "xor (T_LOGICAL_XOR)" expr
14614  328     | expr . '|' expr
14615  329     | expr . '&' expr
14616  330     | expr . '^' expr
14617  331     | expr . '.' expr
14618  332     | expr . '+' expr
14619  333     | expr . '-' expr
14620  334     | expr . '*' expr
14621  335     | expr . "** (T_POW)" expr
14622  336     | expr . '/' expr
14623  337     | expr . '%' expr
14624  338     | expr . "<< (T_SL)" expr
14625  339     | expr . ">> (T_SR)" expr
14626  344     | expr . "=== (T_IS_IDENTICAL)" expr
14627  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
14628  346     | expr . "== (T_IS_EQUAL)" expr
14629  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
14630  348     | expr . '<' expr
14631  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
14632  350     | expr . '>' expr
14633  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
14634  352     | expr . "<=> (T_SPACESHIP)" expr
14635  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
14636  356     | expr . '?' expr ':' expr
14637  357     | expr . '?' ':' expr
14638  358     | expr . "?? (T_COALESCE)" expr
14639
14640    '|'                           shift, and go to state 244
14641    '^'                           shift, and go to state 245
14642    '&'                           shift, and go to state 246
14643    "== (T_IS_EQUAL)"             shift, and go to state 247
14644    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
14645    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
14646    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
14647    "<=> (T_SPACESHIP)"           shift, and go to state 251
14648    '<'                           shift, and go to state 252
14649    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
14650    '>'                           shift, and go to state 254
14651    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
14652    "<< (T_SL)"                   shift, and go to state 256
14653    ">> (T_SR)"                   shift, and go to state 257
14654    '+'                           shift, and go to state 258
14655    '-'                           shift, and go to state 259
14656    '.'                           shift, and go to state 260
14657    '*'                           shift, and go to state 261
14658    '/'                           shift, and go to state 262
14659    '%'                           shift, and go to state 263
14660    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
14661    "** (T_POW)"                  shift, and go to state 265
14662
14663    $default  reduce using rule 324 (expr)
14664
14665
14666State 406
14667
14668  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
14669  324     | expr . "&& (T_BOOLEAN_AND)" expr
14670  325     | expr . "or (T_LOGICAL_OR)" expr
14671  326     | expr . "and (T_LOGICAL_AND)" expr
14672  327     | expr . "xor (T_LOGICAL_XOR)" expr
14673  328     | expr . '|' expr
14674  328     | expr '|' expr .
14675  329     | expr . '&' expr
14676  330     | expr . '^' expr
14677  331     | expr . '.' expr
14678  332     | expr . '+' expr
14679  333     | expr . '-' expr
14680  334     | expr . '*' expr
14681  335     | expr . "** (T_POW)" expr
14682  336     | expr . '/' expr
14683  337     | expr . '%' expr
14684  338     | expr . "<< (T_SL)" expr
14685  339     | expr . ">> (T_SR)" expr
14686  344     | expr . "=== (T_IS_IDENTICAL)" expr
14687  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
14688  346     | expr . "== (T_IS_EQUAL)" expr
14689  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
14690  348     | expr . '<' expr
14691  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
14692  350     | expr . '>' expr
14693  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
14694  352     | expr . "<=> (T_SPACESHIP)" expr
14695  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
14696  356     | expr . '?' expr ':' expr
14697  357     | expr . '?' ':' expr
14698  358     | expr . "?? (T_COALESCE)" expr
14699
14700    '^'                           shift, and go to state 245
14701    '&'                           shift, and go to state 246
14702    "== (T_IS_EQUAL)"             shift, and go to state 247
14703    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
14704    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
14705    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
14706    "<=> (T_SPACESHIP)"           shift, and go to state 251
14707    '<'                           shift, and go to state 252
14708    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
14709    '>'                           shift, and go to state 254
14710    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
14711    "<< (T_SL)"                   shift, and go to state 256
14712    ">> (T_SR)"                   shift, and go to state 257
14713    '+'                           shift, and go to state 258
14714    '-'                           shift, and go to state 259
14715    '.'                           shift, and go to state 260
14716    '*'                           shift, and go to state 261
14717    '/'                           shift, and go to state 262
14718    '%'                           shift, and go to state 263
14719    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
14720    "** (T_POW)"                  shift, and go to state 265
14721
14722    $default  reduce using rule 328 (expr)
14723
14724
14725State 407
14726
14727  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
14728  324     | expr . "&& (T_BOOLEAN_AND)" expr
14729  325     | expr . "or (T_LOGICAL_OR)" expr
14730  326     | expr . "and (T_LOGICAL_AND)" expr
14731  327     | expr . "xor (T_LOGICAL_XOR)" expr
14732  328     | expr . '|' expr
14733  329     | expr . '&' expr
14734  330     | expr . '^' expr
14735  330     | expr '^' expr .
14736  331     | expr . '.' expr
14737  332     | expr . '+' expr
14738  333     | expr . '-' expr
14739  334     | expr . '*' expr
14740  335     | expr . "** (T_POW)" expr
14741  336     | expr . '/' expr
14742  337     | expr . '%' expr
14743  338     | expr . "<< (T_SL)" expr
14744  339     | expr . ">> (T_SR)" expr
14745  344     | expr . "=== (T_IS_IDENTICAL)" expr
14746  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
14747  346     | expr . "== (T_IS_EQUAL)" expr
14748  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
14749  348     | expr . '<' expr
14750  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
14751  350     | expr . '>' expr
14752  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
14753  352     | expr . "<=> (T_SPACESHIP)" expr
14754  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
14755  356     | expr . '?' expr ':' expr
14756  357     | expr . '?' ':' expr
14757  358     | expr . "?? (T_COALESCE)" expr
14758
14759    '&'                           shift, and go to state 246
14760    "== (T_IS_EQUAL)"             shift, and go to state 247
14761    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
14762    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
14763    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
14764    "<=> (T_SPACESHIP)"           shift, and go to state 251
14765    '<'                           shift, and go to state 252
14766    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
14767    '>'                           shift, and go to state 254
14768    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
14769    "<< (T_SL)"                   shift, and go to state 256
14770    ">> (T_SR)"                   shift, and go to state 257
14771    '+'                           shift, and go to state 258
14772    '-'                           shift, and go to state 259
14773    '.'                           shift, and go to state 260
14774    '*'                           shift, and go to state 261
14775    '/'                           shift, and go to state 262
14776    '%'                           shift, and go to state 263
14777    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
14778    "** (T_POW)"                  shift, and go to state 265
14779
14780    $default  reduce using rule 330 (expr)
14781
14782
14783State 408
14784
14785  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
14786  324     | expr . "&& (T_BOOLEAN_AND)" expr
14787  325     | expr . "or (T_LOGICAL_OR)" expr
14788  326     | expr . "and (T_LOGICAL_AND)" expr
14789  327     | expr . "xor (T_LOGICAL_XOR)" expr
14790  328     | expr . '|' expr
14791  329     | expr . '&' expr
14792  329     | expr '&' expr .
14793  330     | expr . '^' expr
14794  331     | expr . '.' expr
14795  332     | expr . '+' expr
14796  333     | expr . '-' expr
14797  334     | expr . '*' expr
14798  335     | expr . "** (T_POW)" expr
14799  336     | expr . '/' expr
14800  337     | expr . '%' expr
14801  338     | expr . "<< (T_SL)" expr
14802  339     | expr . ">> (T_SR)" expr
14803  344     | expr . "=== (T_IS_IDENTICAL)" expr
14804  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
14805  346     | expr . "== (T_IS_EQUAL)" expr
14806  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
14807  348     | expr . '<' expr
14808  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
14809  350     | expr . '>' expr
14810  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
14811  352     | expr . "<=> (T_SPACESHIP)" expr
14812  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
14813  356     | expr . '?' expr ':' expr
14814  357     | expr . '?' ':' expr
14815  358     | expr . "?? (T_COALESCE)" expr
14816
14817    "== (T_IS_EQUAL)"             shift, and go to state 247
14818    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
14819    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
14820    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
14821    "<=> (T_SPACESHIP)"           shift, and go to state 251
14822    '<'                           shift, and go to state 252
14823    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
14824    '>'                           shift, and go to state 254
14825    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
14826    "<< (T_SL)"                   shift, and go to state 256
14827    ">> (T_SR)"                   shift, and go to state 257
14828    '+'                           shift, and go to state 258
14829    '-'                           shift, and go to state 259
14830    '.'                           shift, and go to state 260
14831    '*'                           shift, and go to state 261
14832    '/'                           shift, and go to state 262
14833    '%'                           shift, and go to state 263
14834    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
14835    "** (T_POW)"                  shift, and go to state 265
14836
14837    $default  reduce using rule 329 (expr)
14838
14839
14840State 409
14841
14842  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
14843  324     | expr . "&& (T_BOOLEAN_AND)" expr
14844  325     | expr . "or (T_LOGICAL_OR)" expr
14845  326     | expr . "and (T_LOGICAL_AND)" expr
14846  327     | expr . "xor (T_LOGICAL_XOR)" expr
14847  328     | expr . '|' expr
14848  329     | expr . '&' expr
14849  330     | expr . '^' expr
14850  331     | expr . '.' expr
14851  332     | expr . '+' expr
14852  333     | expr . '-' expr
14853  334     | expr . '*' expr
14854  335     | expr . "** (T_POW)" expr
14855  336     | expr . '/' expr
14856  337     | expr . '%' expr
14857  338     | expr . "<< (T_SL)" expr
14858  339     | expr . ">> (T_SR)" expr
14859  344     | expr . "=== (T_IS_IDENTICAL)" expr
14860  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
14861  346     | expr . "== (T_IS_EQUAL)" expr
14862  346     | expr "== (T_IS_EQUAL)" expr .
14863  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
14864  348     | expr . '<' expr
14865  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
14866  350     | expr . '>' expr
14867  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
14868  352     | expr . "<=> (T_SPACESHIP)" expr
14869  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
14870  356     | expr . '?' expr ':' expr
14871  357     | expr . '?' ':' expr
14872  358     | expr . "?? (T_COALESCE)" expr
14873
14874    '<'                           shift, and go to state 252
14875    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
14876    '>'                           shift, and go to state 254
14877    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
14878    "<< (T_SL)"                   shift, and go to state 256
14879    ">> (T_SR)"                   shift, and go to state 257
14880    '+'                           shift, and go to state 258
14881    '-'                           shift, and go to state 259
14882    '.'                           shift, and go to state 260
14883    '*'                           shift, and go to state 261
14884    '/'                           shift, and go to state 262
14885    '%'                           shift, and go to state 263
14886    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
14887    "** (T_POW)"                  shift, and go to state 265
14888
14889    "== (T_IS_EQUAL)"           error (nonassociative)
14890    "!= (T_IS_NOT_EQUAL)"       error (nonassociative)
14891    "=== (T_IS_IDENTICAL)"      error (nonassociative)
14892    "!== (T_IS_NOT_IDENTICAL)"  error (nonassociative)
14893    "<=> (T_SPACESHIP)"         error (nonassociative)
14894
14895    $default  reduce using rule 346 (expr)
14896
14897
14898State 410
14899
14900  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
14901  324     | expr . "&& (T_BOOLEAN_AND)" expr
14902  325     | expr . "or (T_LOGICAL_OR)" expr
14903  326     | expr . "and (T_LOGICAL_AND)" expr
14904  327     | expr . "xor (T_LOGICAL_XOR)" expr
14905  328     | expr . '|' expr
14906  329     | expr . '&' expr
14907  330     | expr . '^' expr
14908  331     | expr . '.' expr
14909  332     | expr . '+' expr
14910  333     | expr . '-' expr
14911  334     | expr . '*' expr
14912  335     | expr . "** (T_POW)" expr
14913  336     | expr . '/' expr
14914  337     | expr . '%' expr
14915  338     | expr . "<< (T_SL)" expr
14916  339     | expr . ">> (T_SR)" expr
14917  344     | expr . "=== (T_IS_IDENTICAL)" expr
14918  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
14919  346     | expr . "== (T_IS_EQUAL)" expr
14920  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
14921  347     | expr "!= (T_IS_NOT_EQUAL)" expr .
14922  348     | expr . '<' expr
14923  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
14924  350     | expr . '>' expr
14925  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
14926  352     | expr . "<=> (T_SPACESHIP)" expr
14927  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
14928  356     | expr . '?' expr ':' expr
14929  357     | expr . '?' ':' expr
14930  358     | expr . "?? (T_COALESCE)" expr
14931
14932    '<'                           shift, and go to state 252
14933    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
14934    '>'                           shift, and go to state 254
14935    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
14936    "<< (T_SL)"                   shift, and go to state 256
14937    ">> (T_SR)"                   shift, and go to state 257
14938    '+'                           shift, and go to state 258
14939    '-'                           shift, and go to state 259
14940    '.'                           shift, and go to state 260
14941    '*'                           shift, and go to state 261
14942    '/'                           shift, and go to state 262
14943    '%'                           shift, and go to state 263
14944    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
14945    "** (T_POW)"                  shift, and go to state 265
14946
14947    "== (T_IS_EQUAL)"           error (nonassociative)
14948    "!= (T_IS_NOT_EQUAL)"       error (nonassociative)
14949    "=== (T_IS_IDENTICAL)"      error (nonassociative)
14950    "!== (T_IS_NOT_IDENTICAL)"  error (nonassociative)
14951    "<=> (T_SPACESHIP)"         error (nonassociative)
14952
14953    $default  reduce using rule 347 (expr)
14954
14955
14956State 411
14957
14958  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
14959  324     | expr . "&& (T_BOOLEAN_AND)" expr
14960  325     | expr . "or (T_LOGICAL_OR)" expr
14961  326     | expr . "and (T_LOGICAL_AND)" expr
14962  327     | expr . "xor (T_LOGICAL_XOR)" expr
14963  328     | expr . '|' expr
14964  329     | expr . '&' expr
14965  330     | expr . '^' expr
14966  331     | expr . '.' expr
14967  332     | expr . '+' expr
14968  333     | expr . '-' expr
14969  334     | expr . '*' expr
14970  335     | expr . "** (T_POW)" expr
14971  336     | expr . '/' expr
14972  337     | expr . '%' expr
14973  338     | expr . "<< (T_SL)" expr
14974  339     | expr . ">> (T_SR)" expr
14975  344     | expr . "=== (T_IS_IDENTICAL)" expr
14976  344     | expr "=== (T_IS_IDENTICAL)" expr .
14977  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
14978  346     | expr . "== (T_IS_EQUAL)" expr
14979  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
14980  348     | expr . '<' expr
14981  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
14982  350     | expr . '>' expr
14983  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
14984  352     | expr . "<=> (T_SPACESHIP)" expr
14985  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
14986  356     | expr . '?' expr ':' expr
14987  357     | expr . '?' ':' expr
14988  358     | expr . "?? (T_COALESCE)" expr
14989
14990    '<'                           shift, and go to state 252
14991    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
14992    '>'                           shift, and go to state 254
14993    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
14994    "<< (T_SL)"                   shift, and go to state 256
14995    ">> (T_SR)"                   shift, and go to state 257
14996    '+'                           shift, and go to state 258
14997    '-'                           shift, and go to state 259
14998    '.'                           shift, and go to state 260
14999    '*'                           shift, and go to state 261
15000    '/'                           shift, and go to state 262
15001    '%'                           shift, and go to state 263
15002    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
15003    "** (T_POW)"                  shift, and go to state 265
15004
15005    "== (T_IS_EQUAL)"           error (nonassociative)
15006    "!= (T_IS_NOT_EQUAL)"       error (nonassociative)
15007    "=== (T_IS_IDENTICAL)"      error (nonassociative)
15008    "!== (T_IS_NOT_IDENTICAL)"  error (nonassociative)
15009    "<=> (T_SPACESHIP)"         error (nonassociative)
15010
15011    $default  reduce using rule 344 (expr)
15012
15013
15014State 412
15015
15016  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
15017  324     | expr . "&& (T_BOOLEAN_AND)" expr
15018  325     | expr . "or (T_LOGICAL_OR)" expr
15019  326     | expr . "and (T_LOGICAL_AND)" expr
15020  327     | expr . "xor (T_LOGICAL_XOR)" expr
15021  328     | expr . '|' expr
15022  329     | expr . '&' expr
15023  330     | expr . '^' expr
15024  331     | expr . '.' expr
15025  332     | expr . '+' expr
15026  333     | expr . '-' expr
15027  334     | expr . '*' expr
15028  335     | expr . "** (T_POW)" expr
15029  336     | expr . '/' expr
15030  337     | expr . '%' expr
15031  338     | expr . "<< (T_SL)" expr
15032  339     | expr . ">> (T_SR)" expr
15033  344     | expr . "=== (T_IS_IDENTICAL)" expr
15034  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
15035  345     | expr "!== (T_IS_NOT_IDENTICAL)" expr .
15036  346     | expr . "== (T_IS_EQUAL)" expr
15037  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
15038  348     | expr . '<' expr
15039  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
15040  350     | expr . '>' expr
15041  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
15042  352     | expr . "<=> (T_SPACESHIP)" expr
15043  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
15044  356     | expr . '?' expr ':' expr
15045  357     | expr . '?' ':' expr
15046  358     | expr . "?? (T_COALESCE)" expr
15047
15048    '<'                           shift, and go to state 252
15049    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
15050    '>'                           shift, and go to state 254
15051    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
15052    "<< (T_SL)"                   shift, and go to state 256
15053    ">> (T_SR)"                   shift, and go to state 257
15054    '+'                           shift, and go to state 258
15055    '-'                           shift, and go to state 259
15056    '.'                           shift, and go to state 260
15057    '*'                           shift, and go to state 261
15058    '/'                           shift, and go to state 262
15059    '%'                           shift, and go to state 263
15060    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
15061    "** (T_POW)"                  shift, and go to state 265
15062
15063    "== (T_IS_EQUAL)"           error (nonassociative)
15064    "!= (T_IS_NOT_EQUAL)"       error (nonassociative)
15065    "=== (T_IS_IDENTICAL)"      error (nonassociative)
15066    "!== (T_IS_NOT_IDENTICAL)"  error (nonassociative)
15067    "<=> (T_SPACESHIP)"         error (nonassociative)
15068
15069    $default  reduce using rule 345 (expr)
15070
15071
15072State 413
15073
15074  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
15075  324     | expr . "&& (T_BOOLEAN_AND)" expr
15076  325     | expr . "or (T_LOGICAL_OR)" expr
15077  326     | expr . "and (T_LOGICAL_AND)" expr
15078  327     | expr . "xor (T_LOGICAL_XOR)" expr
15079  328     | expr . '|' expr
15080  329     | expr . '&' expr
15081  330     | expr . '^' expr
15082  331     | expr . '.' expr
15083  332     | expr . '+' expr
15084  333     | expr . '-' expr
15085  334     | expr . '*' expr
15086  335     | expr . "** (T_POW)" expr
15087  336     | expr . '/' expr
15088  337     | expr . '%' expr
15089  338     | expr . "<< (T_SL)" expr
15090  339     | expr . ">> (T_SR)" expr
15091  344     | expr . "=== (T_IS_IDENTICAL)" expr
15092  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
15093  346     | expr . "== (T_IS_EQUAL)" expr
15094  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
15095  348     | expr . '<' expr
15096  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
15097  350     | expr . '>' expr
15098  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
15099  352     | expr . "<=> (T_SPACESHIP)" expr
15100  352     | expr "<=> (T_SPACESHIP)" expr .
15101  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
15102  356     | expr . '?' expr ':' expr
15103  357     | expr . '?' ':' expr
15104  358     | expr . "?? (T_COALESCE)" expr
15105
15106    '<'                           shift, and go to state 252
15107    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
15108    '>'                           shift, and go to state 254
15109    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
15110    "<< (T_SL)"                   shift, and go to state 256
15111    ">> (T_SR)"                   shift, and go to state 257
15112    '+'                           shift, and go to state 258
15113    '-'                           shift, and go to state 259
15114    '.'                           shift, and go to state 260
15115    '*'                           shift, and go to state 261
15116    '/'                           shift, and go to state 262
15117    '%'                           shift, and go to state 263
15118    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
15119    "** (T_POW)"                  shift, and go to state 265
15120
15121    "== (T_IS_EQUAL)"           error (nonassociative)
15122    "!= (T_IS_NOT_EQUAL)"       error (nonassociative)
15123    "=== (T_IS_IDENTICAL)"      error (nonassociative)
15124    "!== (T_IS_NOT_IDENTICAL)"  error (nonassociative)
15125    "<=> (T_SPACESHIP)"         error (nonassociative)
15126
15127    $default  reduce using rule 352 (expr)
15128
15129
15130State 414
15131
15132  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
15133  324     | expr . "&& (T_BOOLEAN_AND)" expr
15134  325     | expr . "or (T_LOGICAL_OR)" expr
15135  326     | expr . "and (T_LOGICAL_AND)" expr
15136  327     | expr . "xor (T_LOGICAL_XOR)" expr
15137  328     | expr . '|' expr
15138  329     | expr . '&' expr
15139  330     | expr . '^' expr
15140  331     | expr . '.' expr
15141  332     | expr . '+' expr
15142  333     | expr . '-' expr
15143  334     | expr . '*' expr
15144  335     | expr . "** (T_POW)" expr
15145  336     | expr . '/' expr
15146  337     | expr . '%' expr
15147  338     | expr . "<< (T_SL)" expr
15148  339     | expr . ">> (T_SR)" expr
15149  344     | expr . "=== (T_IS_IDENTICAL)" expr
15150  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
15151  346     | expr . "== (T_IS_EQUAL)" expr
15152  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
15153  348     | expr . '<' expr
15154  348     | expr '<' expr .
15155  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
15156  350     | expr . '>' expr
15157  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
15158  352     | expr . "<=> (T_SPACESHIP)" expr
15159  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
15160  356     | expr . '?' expr ':' expr
15161  357     | expr . '?' ':' expr
15162  358     | expr . "?? (T_COALESCE)" expr
15163
15164    "<< (T_SL)"                  shift, and go to state 256
15165    ">> (T_SR)"                  shift, and go to state 257
15166    '+'                          shift, and go to state 258
15167    '-'                          shift, and go to state 259
15168    '.'                          shift, and go to state 260
15169    '*'                          shift, and go to state 261
15170    '/'                          shift, and go to state 262
15171    '%'                          shift, and go to state 263
15172    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
15173    "** (T_POW)"                 shift, and go to state 265
15174
15175    '<'                           error (nonassociative)
15176    "<= (T_IS_SMALLER_OR_EQUAL)"  error (nonassociative)
15177    '>'                           error (nonassociative)
15178    ">= (T_IS_GREATER_OR_EQUAL)"  error (nonassociative)
15179
15180    $default  reduce using rule 348 (expr)
15181
15182
15183State 415
15184
15185  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
15186  324     | expr . "&& (T_BOOLEAN_AND)" expr
15187  325     | expr . "or (T_LOGICAL_OR)" expr
15188  326     | expr . "and (T_LOGICAL_AND)" expr
15189  327     | expr . "xor (T_LOGICAL_XOR)" expr
15190  328     | expr . '|' expr
15191  329     | expr . '&' expr
15192  330     | expr . '^' expr
15193  331     | expr . '.' expr
15194  332     | expr . '+' expr
15195  333     | expr . '-' expr
15196  334     | expr . '*' expr
15197  335     | expr . "** (T_POW)" expr
15198  336     | expr . '/' expr
15199  337     | expr . '%' expr
15200  338     | expr . "<< (T_SL)" expr
15201  339     | expr . ">> (T_SR)" expr
15202  344     | expr . "=== (T_IS_IDENTICAL)" expr
15203  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
15204  346     | expr . "== (T_IS_EQUAL)" expr
15205  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
15206  348     | expr . '<' expr
15207  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
15208  349     | expr "<= (T_IS_SMALLER_OR_EQUAL)" expr .
15209  350     | expr . '>' expr
15210  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
15211  352     | expr . "<=> (T_SPACESHIP)" expr
15212  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
15213  356     | expr . '?' expr ':' expr
15214  357     | expr . '?' ':' expr
15215  358     | expr . "?? (T_COALESCE)" expr
15216
15217    "<< (T_SL)"                  shift, and go to state 256
15218    ">> (T_SR)"                  shift, and go to state 257
15219    '+'                          shift, and go to state 258
15220    '-'                          shift, and go to state 259
15221    '.'                          shift, and go to state 260
15222    '*'                          shift, and go to state 261
15223    '/'                          shift, and go to state 262
15224    '%'                          shift, and go to state 263
15225    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
15226    "** (T_POW)"                 shift, and go to state 265
15227
15228    '<'                           error (nonassociative)
15229    "<= (T_IS_SMALLER_OR_EQUAL)"  error (nonassociative)
15230    '>'                           error (nonassociative)
15231    ">= (T_IS_GREATER_OR_EQUAL)"  error (nonassociative)
15232
15233    $default  reduce using rule 349 (expr)
15234
15235
15236State 416
15237
15238  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
15239  324     | expr . "&& (T_BOOLEAN_AND)" expr
15240  325     | expr . "or (T_LOGICAL_OR)" expr
15241  326     | expr . "and (T_LOGICAL_AND)" expr
15242  327     | expr . "xor (T_LOGICAL_XOR)" expr
15243  328     | expr . '|' expr
15244  329     | expr . '&' expr
15245  330     | expr . '^' expr
15246  331     | expr . '.' expr
15247  332     | expr . '+' expr
15248  333     | expr . '-' expr
15249  334     | expr . '*' expr
15250  335     | expr . "** (T_POW)" expr
15251  336     | expr . '/' expr
15252  337     | expr . '%' expr
15253  338     | expr . "<< (T_SL)" expr
15254  339     | expr . ">> (T_SR)" expr
15255  344     | expr . "=== (T_IS_IDENTICAL)" expr
15256  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
15257  346     | expr . "== (T_IS_EQUAL)" expr
15258  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
15259  348     | expr . '<' expr
15260  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
15261  350     | expr . '>' expr
15262  350     | expr '>' expr .
15263  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
15264  352     | expr . "<=> (T_SPACESHIP)" expr
15265  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
15266  356     | expr . '?' expr ':' expr
15267  357     | expr . '?' ':' expr
15268  358     | expr . "?? (T_COALESCE)" expr
15269
15270    "<< (T_SL)"                  shift, and go to state 256
15271    ">> (T_SR)"                  shift, and go to state 257
15272    '+'                          shift, and go to state 258
15273    '-'                          shift, and go to state 259
15274    '.'                          shift, and go to state 260
15275    '*'                          shift, and go to state 261
15276    '/'                          shift, and go to state 262
15277    '%'                          shift, and go to state 263
15278    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
15279    "** (T_POW)"                 shift, and go to state 265
15280
15281    '<'                           error (nonassociative)
15282    "<= (T_IS_SMALLER_OR_EQUAL)"  error (nonassociative)
15283    '>'                           error (nonassociative)
15284    ">= (T_IS_GREATER_OR_EQUAL)"  error (nonassociative)
15285
15286    $default  reduce using rule 350 (expr)
15287
15288
15289State 417
15290
15291  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
15292  324     | expr . "&& (T_BOOLEAN_AND)" expr
15293  325     | expr . "or (T_LOGICAL_OR)" expr
15294  326     | expr . "and (T_LOGICAL_AND)" expr
15295  327     | expr . "xor (T_LOGICAL_XOR)" expr
15296  328     | expr . '|' expr
15297  329     | expr . '&' expr
15298  330     | expr . '^' expr
15299  331     | expr . '.' expr
15300  332     | expr . '+' expr
15301  333     | expr . '-' expr
15302  334     | expr . '*' expr
15303  335     | expr . "** (T_POW)" expr
15304  336     | expr . '/' expr
15305  337     | expr . '%' expr
15306  338     | expr . "<< (T_SL)" expr
15307  339     | expr . ">> (T_SR)" expr
15308  344     | expr . "=== (T_IS_IDENTICAL)" expr
15309  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
15310  346     | expr . "== (T_IS_EQUAL)" expr
15311  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
15312  348     | expr . '<' expr
15313  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
15314  350     | expr . '>' expr
15315  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
15316  351     | expr ">= (T_IS_GREATER_OR_EQUAL)" expr .
15317  352     | expr . "<=> (T_SPACESHIP)" expr
15318  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
15319  356     | expr . '?' expr ':' expr
15320  357     | expr . '?' ':' expr
15321  358     | expr . "?? (T_COALESCE)" expr
15322
15323    "<< (T_SL)"                  shift, and go to state 256
15324    ">> (T_SR)"                  shift, and go to state 257
15325    '+'                          shift, and go to state 258
15326    '-'                          shift, and go to state 259
15327    '.'                          shift, and go to state 260
15328    '*'                          shift, and go to state 261
15329    '/'                          shift, and go to state 262
15330    '%'                          shift, and go to state 263
15331    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
15332    "** (T_POW)"                 shift, and go to state 265
15333
15334    '<'                           error (nonassociative)
15335    "<= (T_IS_SMALLER_OR_EQUAL)"  error (nonassociative)
15336    '>'                           error (nonassociative)
15337    ">= (T_IS_GREATER_OR_EQUAL)"  error (nonassociative)
15338
15339    $default  reduce using rule 351 (expr)
15340
15341
15342State 418
15343
15344  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
15345  324     | expr . "&& (T_BOOLEAN_AND)" expr
15346  325     | expr . "or (T_LOGICAL_OR)" expr
15347  326     | expr . "and (T_LOGICAL_AND)" expr
15348  327     | expr . "xor (T_LOGICAL_XOR)" expr
15349  328     | expr . '|' expr
15350  329     | expr . '&' expr
15351  330     | expr . '^' expr
15352  331     | expr . '.' expr
15353  332     | expr . '+' expr
15354  333     | expr . '-' expr
15355  334     | expr . '*' expr
15356  335     | expr . "** (T_POW)" expr
15357  336     | expr . '/' expr
15358  337     | expr . '%' expr
15359  338     | expr . "<< (T_SL)" expr
15360  338     | expr "<< (T_SL)" expr .
15361  339     | expr . ">> (T_SR)" expr
15362  344     | expr . "=== (T_IS_IDENTICAL)" expr
15363  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
15364  346     | expr . "== (T_IS_EQUAL)" expr
15365  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
15366  348     | expr . '<' expr
15367  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
15368  350     | expr . '>' expr
15369  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
15370  352     | expr . "<=> (T_SPACESHIP)" expr
15371  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
15372  356     | expr . '?' expr ':' expr
15373  357     | expr . '?' ':' expr
15374  358     | expr . "?? (T_COALESCE)" expr
15375
15376    '+'                          shift, and go to state 258
15377    '-'                          shift, and go to state 259
15378    '.'                          shift, and go to state 260
15379    '*'                          shift, and go to state 261
15380    '/'                          shift, and go to state 262
15381    '%'                          shift, and go to state 263
15382    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
15383    "** (T_POW)"                 shift, and go to state 265
15384
15385    $default  reduce using rule 338 (expr)
15386
15387
15388State 419
15389
15390  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
15391  324     | expr . "&& (T_BOOLEAN_AND)" expr
15392  325     | expr . "or (T_LOGICAL_OR)" expr
15393  326     | expr . "and (T_LOGICAL_AND)" expr
15394  327     | expr . "xor (T_LOGICAL_XOR)" expr
15395  328     | expr . '|' expr
15396  329     | expr . '&' expr
15397  330     | expr . '^' expr
15398  331     | expr . '.' expr
15399  332     | expr . '+' expr
15400  333     | expr . '-' expr
15401  334     | expr . '*' expr
15402  335     | expr . "** (T_POW)" expr
15403  336     | expr . '/' expr
15404  337     | expr . '%' expr
15405  338     | expr . "<< (T_SL)" expr
15406  339     | expr . ">> (T_SR)" expr
15407  339     | expr ">> (T_SR)" expr .
15408  344     | expr . "=== (T_IS_IDENTICAL)" expr
15409  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
15410  346     | expr . "== (T_IS_EQUAL)" expr
15411  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
15412  348     | expr . '<' expr
15413  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
15414  350     | expr . '>' expr
15415  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
15416  352     | expr . "<=> (T_SPACESHIP)" expr
15417  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
15418  356     | expr . '?' expr ':' expr
15419  357     | expr . '?' ':' expr
15420  358     | expr . "?? (T_COALESCE)" expr
15421
15422    '+'                          shift, and go to state 258
15423    '-'                          shift, and go to state 259
15424    '.'                          shift, and go to state 260
15425    '*'                          shift, and go to state 261
15426    '/'                          shift, and go to state 262
15427    '%'                          shift, and go to state 263
15428    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
15429    "** (T_POW)"                 shift, and go to state 265
15430
15431    $default  reduce using rule 339 (expr)
15432
15433
15434State 420
15435
15436  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
15437  324     | expr . "&& (T_BOOLEAN_AND)" expr
15438  325     | expr . "or (T_LOGICAL_OR)" expr
15439  326     | expr . "and (T_LOGICAL_AND)" expr
15440  327     | expr . "xor (T_LOGICAL_XOR)" expr
15441  328     | expr . '|' expr
15442  329     | expr . '&' expr
15443  330     | expr . '^' expr
15444  331     | expr . '.' expr
15445  332     | expr . '+' expr
15446  332     | expr '+' expr .
15447  333     | expr . '-' expr
15448  334     | expr . '*' expr
15449  335     | expr . "** (T_POW)" expr
15450  336     | expr . '/' expr
15451  337     | expr . '%' expr
15452  338     | expr . "<< (T_SL)" expr
15453  339     | expr . ">> (T_SR)" expr
15454  344     | expr . "=== (T_IS_IDENTICAL)" expr
15455  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
15456  346     | expr . "== (T_IS_EQUAL)" expr
15457  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
15458  348     | expr . '<' expr
15459  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
15460  350     | expr . '>' expr
15461  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
15462  352     | expr . "<=> (T_SPACESHIP)" expr
15463  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
15464  356     | expr . '?' expr ':' expr
15465  357     | expr . '?' ':' expr
15466  358     | expr . "?? (T_COALESCE)" expr
15467
15468    '*'                          shift, and go to state 261
15469    '/'                          shift, and go to state 262
15470    '%'                          shift, and go to state 263
15471    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
15472    "** (T_POW)"                 shift, and go to state 265
15473
15474    $default  reduce using rule 332 (expr)
15475
15476
15477State 421
15478
15479  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
15480  324     | expr . "&& (T_BOOLEAN_AND)" expr
15481  325     | expr . "or (T_LOGICAL_OR)" expr
15482  326     | expr . "and (T_LOGICAL_AND)" expr
15483  327     | expr . "xor (T_LOGICAL_XOR)" expr
15484  328     | expr . '|' expr
15485  329     | expr . '&' expr
15486  330     | expr . '^' expr
15487  331     | expr . '.' expr
15488  332     | expr . '+' expr
15489  333     | expr . '-' expr
15490  333     | expr '-' expr .
15491  334     | expr . '*' expr
15492  335     | expr . "** (T_POW)" expr
15493  336     | expr . '/' expr
15494  337     | expr . '%' expr
15495  338     | expr . "<< (T_SL)" expr
15496  339     | expr . ">> (T_SR)" expr
15497  344     | expr . "=== (T_IS_IDENTICAL)" expr
15498  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
15499  346     | expr . "== (T_IS_EQUAL)" expr
15500  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
15501  348     | expr . '<' expr
15502  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
15503  350     | expr . '>' expr
15504  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
15505  352     | expr . "<=> (T_SPACESHIP)" expr
15506  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
15507  356     | expr . '?' expr ':' expr
15508  357     | expr . '?' ':' expr
15509  358     | expr . "?? (T_COALESCE)" expr
15510
15511    '*'                          shift, and go to state 261
15512    '/'                          shift, and go to state 262
15513    '%'                          shift, and go to state 263
15514    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
15515    "** (T_POW)"                 shift, and go to state 265
15516
15517    $default  reduce using rule 333 (expr)
15518
15519
15520State 422
15521
15522  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
15523  324     | expr . "&& (T_BOOLEAN_AND)" expr
15524  325     | expr . "or (T_LOGICAL_OR)" expr
15525  326     | expr . "and (T_LOGICAL_AND)" expr
15526  327     | expr . "xor (T_LOGICAL_XOR)" expr
15527  328     | expr . '|' expr
15528  329     | expr . '&' expr
15529  330     | expr . '^' expr
15530  331     | expr . '.' expr
15531  331     | expr '.' expr .
15532  332     | expr . '+' expr
15533  333     | expr . '-' expr
15534  334     | expr . '*' expr
15535  335     | expr . "** (T_POW)" expr
15536  336     | expr . '/' expr
15537  337     | expr . '%' expr
15538  338     | expr . "<< (T_SL)" expr
15539  339     | expr . ">> (T_SR)" expr
15540  344     | expr . "=== (T_IS_IDENTICAL)" expr
15541  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
15542  346     | expr . "== (T_IS_EQUAL)" expr
15543  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
15544  348     | expr . '<' expr
15545  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
15546  350     | expr . '>' expr
15547  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
15548  352     | expr . "<=> (T_SPACESHIP)" expr
15549  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
15550  356     | expr . '?' expr ':' expr
15551  357     | expr . '?' ':' expr
15552  358     | expr . "?? (T_COALESCE)" expr
15553
15554    '*'                          shift, and go to state 261
15555    '/'                          shift, and go to state 262
15556    '%'                          shift, and go to state 263
15557    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
15558    "** (T_POW)"                 shift, and go to state 265
15559
15560    $default  reduce using rule 331 (expr)
15561
15562
15563State 423
15564
15565  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
15566  324     | expr . "&& (T_BOOLEAN_AND)" expr
15567  325     | expr . "or (T_LOGICAL_OR)" expr
15568  326     | expr . "and (T_LOGICAL_AND)" expr
15569  327     | expr . "xor (T_LOGICAL_XOR)" expr
15570  328     | expr . '|' expr
15571  329     | expr . '&' expr
15572  330     | expr . '^' expr
15573  331     | expr . '.' expr
15574  332     | expr . '+' expr
15575  333     | expr . '-' expr
15576  334     | expr . '*' expr
15577  334     | expr '*' expr .
15578  335     | expr . "** (T_POW)" expr
15579  336     | expr . '/' expr
15580  337     | expr . '%' expr
15581  338     | expr . "<< (T_SL)" expr
15582  339     | expr . ">> (T_SR)" expr
15583  344     | expr . "=== (T_IS_IDENTICAL)" expr
15584  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
15585  346     | expr . "== (T_IS_EQUAL)" expr
15586  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
15587  348     | expr . '<' expr
15588  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
15589  350     | expr . '>' expr
15590  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
15591  352     | expr . "<=> (T_SPACESHIP)" expr
15592  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
15593  356     | expr . '?' expr ':' expr
15594  357     | expr . '?' ':' expr
15595  358     | expr . "?? (T_COALESCE)" expr
15596
15597    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
15598    "** (T_POW)"                 shift, and go to state 265
15599
15600    $default  reduce using rule 334 (expr)
15601
15602
15603State 424
15604
15605  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
15606  324     | expr . "&& (T_BOOLEAN_AND)" expr
15607  325     | expr . "or (T_LOGICAL_OR)" expr
15608  326     | expr . "and (T_LOGICAL_AND)" expr
15609  327     | expr . "xor (T_LOGICAL_XOR)" expr
15610  328     | expr . '|' expr
15611  329     | expr . '&' expr
15612  330     | expr . '^' expr
15613  331     | expr . '.' expr
15614  332     | expr . '+' expr
15615  333     | expr . '-' expr
15616  334     | expr . '*' expr
15617  335     | expr . "** (T_POW)" expr
15618  336     | expr . '/' expr
15619  336     | expr '/' expr .
15620  337     | expr . '%' expr
15621  338     | expr . "<< (T_SL)" expr
15622  339     | expr . ">> (T_SR)" expr
15623  344     | expr . "=== (T_IS_IDENTICAL)" expr
15624  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
15625  346     | expr . "== (T_IS_EQUAL)" expr
15626  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
15627  348     | expr . '<' expr
15628  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
15629  350     | expr . '>' expr
15630  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
15631  352     | expr . "<=> (T_SPACESHIP)" expr
15632  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
15633  356     | expr . '?' expr ':' expr
15634  357     | expr . '?' ':' expr
15635  358     | expr . "?? (T_COALESCE)" expr
15636
15637    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
15638    "** (T_POW)"                 shift, and go to state 265
15639
15640    $default  reduce using rule 336 (expr)
15641
15642
15643State 425
15644
15645  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
15646  324     | expr . "&& (T_BOOLEAN_AND)" expr
15647  325     | expr . "or (T_LOGICAL_OR)" expr
15648  326     | expr . "and (T_LOGICAL_AND)" expr
15649  327     | expr . "xor (T_LOGICAL_XOR)" expr
15650  328     | expr . '|' expr
15651  329     | expr . '&' expr
15652  330     | expr . '^' expr
15653  331     | expr . '.' expr
15654  332     | expr . '+' expr
15655  333     | expr . '-' expr
15656  334     | expr . '*' expr
15657  335     | expr . "** (T_POW)" expr
15658  336     | expr . '/' expr
15659  337     | expr . '%' expr
15660  337     | expr '%' expr .
15661  338     | expr . "<< (T_SL)" expr
15662  339     | expr . ">> (T_SR)" expr
15663  344     | expr . "=== (T_IS_IDENTICAL)" expr
15664  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
15665  346     | expr . "== (T_IS_EQUAL)" expr
15666  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
15667  348     | expr . '<' expr
15668  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
15669  350     | expr . '>' expr
15670  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
15671  352     | expr . "<=> (T_SPACESHIP)" expr
15672  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
15673  356     | expr . '?' expr ':' expr
15674  357     | expr . '?' ':' expr
15675  358     | expr . "?? (T_COALESCE)" expr
15676
15677    "instanceof (T_INSTANCEOF)"  shift, and go to state 264
15678    "** (T_POW)"                 shift, and go to state 265
15679
15680    $default  reduce using rule 337 (expr)
15681
15682
15683State 426
15684
15685  353 expr: expr "instanceof (T_INSTANCEOF)" class_name_reference .
15686
15687    $default  reduce using rule 353 (expr)
15688
15689
15690State 427
15691
15692  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
15693  324     | expr . "&& (T_BOOLEAN_AND)" expr
15694  325     | expr . "or (T_LOGICAL_OR)" expr
15695  326     | expr . "and (T_LOGICAL_AND)" expr
15696  327     | expr . "xor (T_LOGICAL_XOR)" expr
15697  328     | expr . '|' expr
15698  329     | expr . '&' expr
15699  330     | expr . '^' expr
15700  331     | expr . '.' expr
15701  332     | expr . '+' expr
15702  333     | expr . '-' expr
15703  334     | expr . '*' expr
15704  335     | expr . "** (T_POW)" expr
15705  335     | expr "** (T_POW)" expr .
15706  336     | expr . '/' expr
15707  337     | expr . '%' expr
15708  338     | expr . "<< (T_SL)" expr
15709  339     | expr . ">> (T_SR)" expr
15710  344     | expr . "=== (T_IS_IDENTICAL)" expr
15711  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
15712  346     | expr . "== (T_IS_EQUAL)" expr
15713  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
15714  348     | expr . '<' expr
15715  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
15716  350     | expr . '>' expr
15717  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
15718  352     | expr . "<=> (T_SPACESHIP)" expr
15719  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
15720  356     | expr . '?' expr ':' expr
15721  357     | expr . '?' ':' expr
15722  358     | expr . "?? (T_COALESCE)" expr
15723
15724    "** (T_POW)"  shift, and go to state 265
15725
15726    $default  reduce using rule 335 (expr)
15727
15728
15729State 428
15730
15731  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" . backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
15732
15733    $default  reduce using rule 379 (backup_doc_comment)
15734
15735    backup_doc_comment  go to state 613
15736
15737
15738State 429
15739
15740  376 expr: function returns_ref backup_doc_comment . '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
15741
15742    '('  shift, and go to state 614
15743
15744
15745State 430
15746
15747    2 reserved_non_modifiers: "include (T_INCLUDE)" .
15748
15749    $default  reduce using rule 2 (reserved_non_modifiers)
15750
15751
15752State 431
15753
15754    3 reserved_non_modifiers: "include_once (T_INCLUDE_ONCE)" .
15755
15756    $default  reduce using rule 3 (reserved_non_modifiers)
15757
15758
15759State 432
15760
15761    4 reserved_non_modifiers: "eval (T_EVAL)" .
15762
15763    $default  reduce using rule 4 (reserved_non_modifiers)
15764
15765
15766State 433
15767
15768    5 reserved_non_modifiers: "require (T_REQUIRE)" .
15769
15770    $default  reduce using rule 5 (reserved_non_modifiers)
15771
15772
15773State 434
15774
15775    6 reserved_non_modifiers: "require_once (T_REQUIRE_ONCE)" .
15776
15777    $default  reduce using rule 6 (reserved_non_modifiers)
15778
15779
15780State 435
15781
15782    7 reserved_non_modifiers: "or (T_LOGICAL_OR)" .
15783
15784    $default  reduce using rule 7 (reserved_non_modifiers)
15785
15786
15787State 436
15788
15789    8 reserved_non_modifiers: "xor (T_LOGICAL_XOR)" .
15790
15791    $default  reduce using rule 8 (reserved_non_modifiers)
15792
15793
15794State 437
15795
15796    9 reserved_non_modifiers: "and (T_LOGICAL_AND)" .
15797
15798    $default  reduce using rule 9 (reserved_non_modifiers)
15799
15800
15801State 438
15802
15803   45 reserved_non_modifiers: "print (T_PRINT)" .
15804
15805    $default  reduce using rule 45 (reserved_non_modifiers)
15806
15807
15808State 439
15809
15810   46 reserved_non_modifiers: "yield (T_YIELD)" .
15811
15812    $default  reduce using rule 46 (reserved_non_modifiers)
15813
15814
15815State 440
15816
15817   10 reserved_non_modifiers: "instanceof (T_INSTANCEOF)" .
15818
15819    $default  reduce using rule 10 (reserved_non_modifiers)
15820
15821
15822State 441
15823
15824   11 reserved_non_modifiers: "new (T_NEW)" .
15825
15826    $default  reduce using rule 11 (reserved_non_modifiers)
15827
15828
15829State 442
15830
15831   12 reserved_non_modifiers: "clone (T_CLONE)" .
15832
15833    $default  reduce using rule 12 (reserved_non_modifiers)
15834
15835
15836State 443
15837
15838   15 reserved_non_modifiers: "elseif (T_ELSEIF)" .
15839
15840    $default  reduce using rule 15 (reserved_non_modifiers)
15841
15842
15843State 444
15844
15845   16 reserved_non_modifiers: "else (T_ELSE)" .
15846
15847    $default  reduce using rule 16 (reserved_non_modifiers)
15848
15849
15850State 445
15851
15852   17 reserved_non_modifiers: "endif (T_ENDIF)" .
15853
15854    $default  reduce using rule 17 (reserved_non_modifiers)
15855
15856
15857State 446
15858
15859   70 semi_reserved: "static (T_STATIC)" .
15860
15861    $default  reduce using rule 70 (semi_reserved)
15862
15863
15864State 447
15865
15866   71 semi_reserved: "abstract (T_ABSTRACT)" .
15867
15868    $default  reduce using rule 71 (semi_reserved)
15869
15870
15871State 448
15872
15873   72 semi_reserved: "final (T_FINAL)" .
15874
15875    $default  reduce using rule 72 (semi_reserved)
15876
15877
15878State 449
15879
15880   73 semi_reserved: "private (T_PRIVATE)" .
15881
15882    $default  reduce using rule 73 (semi_reserved)
15883
15884
15885State 450
15886
15887   74 semi_reserved: "protected (T_PROTECTED)" .
15888
15889    $default  reduce using rule 74 (semi_reserved)
15890
15891
15892State 451
15893
15894   75 semi_reserved: "public (T_PUBLIC)" .
15895
15896    $default  reduce using rule 75 (semi_reserved)
15897
15898
15899State 452
15900
15901   76 identifier: "identifier (T_STRING)" .
15902
15903    $default  reduce using rule 76 (identifier)
15904
15905
15906State 453
15907
15908   13 reserved_non_modifiers: "exit (T_EXIT)" .
15909
15910    $default  reduce using rule 13 (reserved_non_modifiers)
15911
15912
15913State 454
15914
15915   14 reserved_non_modifiers: "if (T_IF)" .
15916
15917    $default  reduce using rule 14 (reserved_non_modifiers)
15918
15919
15920State 455
15921
15922   18 reserved_non_modifiers: "echo (T_ECHO)" .
15923
15924    $default  reduce using rule 18 (reserved_non_modifiers)
15925
15926
15927State 456
15928
15929   19 reserved_non_modifiers: "do (T_DO)" .
15930
15931    $default  reduce using rule 19 (reserved_non_modifiers)
15932
15933
15934State 457
15935
15936   20 reserved_non_modifiers: "while (T_WHILE)" .
15937
15938    $default  reduce using rule 20 (reserved_non_modifiers)
15939
15940
15941State 458
15942
15943   21 reserved_non_modifiers: "endwhile (T_ENDWHILE)" .
15944
15945    $default  reduce using rule 21 (reserved_non_modifiers)
15946
15947
15948State 459
15949
15950   22 reserved_non_modifiers: "for (T_FOR)" .
15951
15952    $default  reduce using rule 22 (reserved_non_modifiers)
15953
15954
15955State 460
15956
15957   23 reserved_non_modifiers: "endfor (T_ENDFOR)" .
15958
15959    $default  reduce using rule 23 (reserved_non_modifiers)
15960
15961
15962State 461
15963
15964   24 reserved_non_modifiers: "foreach (T_FOREACH)" .
15965
15966    $default  reduce using rule 24 (reserved_non_modifiers)
15967
15968
15969State 462
15970
15971   25 reserved_non_modifiers: "endforeach (T_ENDFOREACH)" .
15972
15973    $default  reduce using rule 25 (reserved_non_modifiers)
15974
15975
15976State 463
15977
15978   26 reserved_non_modifiers: "declare (T_DECLARE)" .
15979
15980    $default  reduce using rule 26 (reserved_non_modifiers)
15981
15982
15983State 464
15984
15985   27 reserved_non_modifiers: "enddeclare (T_ENDDECLARE)" .
15986
15987    $default  reduce using rule 27 (reserved_non_modifiers)
15988
15989
15990State 465
15991
15992   28 reserved_non_modifiers: "as (T_AS)" .
15993
15994    $default  reduce using rule 28 (reserved_non_modifiers)
15995
15996
15997State 466
15998
15999   48 reserved_non_modifiers: "switch (T_SWITCH)" .
16000
16001    $default  reduce using rule 48 (reserved_non_modifiers)
16002
16003
16004State 467
16005
16006   49 reserved_non_modifiers: "endswitch (T_ENDSWITCH)" .
16007
16008    $default  reduce using rule 49 (reserved_non_modifiers)
16009
16010
16011State 468
16012
16013   50 reserved_non_modifiers: "case (T_CASE)" .
16014
16015    $default  reduce using rule 50 (reserved_non_modifiers)
16016
16017
16018State 469
16019
16020   51 reserved_non_modifiers: "default (T_DEFAULT)" .
16021
16022    $default  reduce using rule 51 (reserved_non_modifiers)
16023
16024
16025State 470
16026
16027   52 reserved_non_modifiers: "break (T_BREAK)" .
16028
16029    $default  reduce using rule 52 (reserved_non_modifiers)
16030
16031
16032State 471
16033
16034   40 reserved_non_modifiers: "continue (T_CONTINUE)" .
16035
16036    $default  reduce using rule 40 (reserved_non_modifiers)
16037
16038
16039State 472
16040
16041   41 reserved_non_modifiers: "goto (T_GOTO)" .
16042
16043    $default  reduce using rule 41 (reserved_non_modifiers)
16044
16045
16046State 473
16047
16048   42 reserved_non_modifiers: "function (T_FUNCTION)" .
16049
16050    $default  reduce using rule 42 (reserved_non_modifiers)
16051
16052
16053State 474
16054
16055   43 reserved_non_modifiers: "const (T_CONST)" .
16056
16057    $default  reduce using rule 43 (reserved_non_modifiers)
16058
16059
16060State 475
16061
16062   44 reserved_non_modifiers: "return (T_RETURN)" .
16063
16064    $default  reduce using rule 44 (reserved_non_modifiers)
16065
16066
16067State 476
16068
16069   29 reserved_non_modifiers: "try (T_TRY)" .
16070
16071    $default  reduce using rule 29 (reserved_non_modifiers)
16072
16073
16074State 477
16075
16076   30 reserved_non_modifiers: "catch (T_CATCH)" .
16077
16078    $default  reduce using rule 30 (reserved_non_modifiers)
16079
16080
16081State 478
16082
16083   31 reserved_non_modifiers: "finally (T_FINALLY)" .
16084
16085    $default  reduce using rule 31 (reserved_non_modifiers)
16086
16087
16088State 479
16089
16090   32 reserved_non_modifiers: "throw (T_THROW)" .
16091
16092    $default  reduce using rule 32 (reserved_non_modifiers)
16093
16094
16095State 480
16096
16097   33 reserved_non_modifiers: "use (T_USE)" .
16098
16099    $default  reduce using rule 33 (reserved_non_modifiers)
16100
16101
16102State 481
16103
16104   34 reserved_non_modifiers: "insteadof (T_INSTEADOF)" .
16105
16106    $default  reduce using rule 34 (reserved_non_modifiers)
16107
16108
16109State 482
16110
16111   35 reserved_non_modifiers: "global (T_GLOBAL)" .
16112
16113    $default  reduce using rule 35 (reserved_non_modifiers)
16114
16115
16116State 483
16117
16118   36 reserved_non_modifiers: "var (T_VAR)" .
16119
16120    $default  reduce using rule 36 (reserved_non_modifiers)
16121
16122
16123State 484
16124
16125   37 reserved_non_modifiers: "unset (T_UNSET)" .
16126
16127    $default  reduce using rule 37 (reserved_non_modifiers)
16128
16129
16130State 485
16131
16132   38 reserved_non_modifiers: "isset (T_ISSET)" .
16133
16134    $default  reduce using rule 38 (reserved_non_modifiers)
16135
16136
16137State 486
16138
16139   39 reserved_non_modifiers: "empty (T_EMPTY)" .
16140
16141    $default  reduce using rule 39 (reserved_non_modifiers)
16142
16143
16144State 487
16145
16146   60 reserved_non_modifiers: "class (T_CLASS)" .
16147
16148    $default  reduce using rule 60 (reserved_non_modifiers)
16149
16150
16151State 488
16152
16153   58 reserved_non_modifiers: "trait (T_TRAIT)" .
16154
16155    $default  reduce using rule 58 (reserved_non_modifiers)
16156
16157
16158State 489
16159
16160   59 reserved_non_modifiers: "interface (T_INTERFACE)" .
16161
16162    $default  reduce using rule 59 (reserved_non_modifiers)
16163
16164
16165State 490
16166
16167   55 reserved_non_modifiers: "extends (T_EXTENDS)" .
16168
16169    $default  reduce using rule 55 (reserved_non_modifiers)
16170
16171
16172State 491
16173
16174   56 reserved_non_modifiers: "implements (T_IMPLEMENTS)" .
16175
16176    $default  reduce using rule 56 (reserved_non_modifiers)
16177
16178
16179State 492
16180
16181   47 reserved_non_modifiers: "list (T_LIST)" .
16182
16183    $default  reduce using rule 47 (reserved_non_modifiers)
16184
16185
16186State 493
16187
16188   53 reserved_non_modifiers: "array (T_ARRAY)" .
16189
16190    $default  reduce using rule 53 (reserved_non_modifiers)
16191
16192
16193State 494
16194
16195   54 reserved_non_modifiers: "callable (T_CALLABLE)" .
16196
16197    $default  reduce using rule 54 (reserved_non_modifiers)
16198
16199
16200State 495
16201
16202   65 reserved_non_modifiers: "__LINE__ (T_LINE)" .
16203
16204    $default  reduce using rule 65 (reserved_non_modifiers)
16205
16206
16207State 496
16208
16209   66 reserved_non_modifiers: "__FILE__ (T_FILE)" .
16210
16211    $default  reduce using rule 66 (reserved_non_modifiers)
16212
16213
16214State 497
16215
16216   67 reserved_non_modifiers: "__DIR__ (T_DIR)" .
16217
16218    $default  reduce using rule 67 (reserved_non_modifiers)
16219
16220
16221State 498
16222
16223   61 reserved_non_modifiers: "__CLASS__ (T_CLASS_C)" .
16224
16225    $default  reduce using rule 61 (reserved_non_modifiers)
16226
16227
16228State 499
16229
16230   62 reserved_non_modifiers: "__TRAIT__ (T_TRAIT_C)" .
16231
16232    $default  reduce using rule 62 (reserved_non_modifiers)
16233
16234
16235State 500
16236
16237   64 reserved_non_modifiers: "__METHOD__ (T_METHOD_C)" .
16238
16239    $default  reduce using rule 64 (reserved_non_modifiers)
16240
16241
16242State 501
16243
16244   63 reserved_non_modifiers: "__FUNCTION__ (T_FUNC_C)" .
16245
16246    $default  reduce using rule 63 (reserved_non_modifiers)
16247
16248
16249State 502
16250
16251   57 reserved_non_modifiers: "namespace (T_NAMESPACE)" .
16252
16253    $default  reduce using rule 57 (reserved_non_modifiers)
16254
16255
16256State 503
16257
16258   68 reserved_non_modifiers: "__NAMESPACE__ (T_NS_C)" .
16259
16260    $default  reduce using rule 68 (reserved_non_modifiers)
16261
16262
16263State 504
16264
16265  456 member_name: '{' . expr '}'
16266
16267    "include (T_INCLUDE)"                         shift, and go to state 4
16268    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
16269    "eval (T_EVAL)"                               shift, and go to state 6
16270    "require (T_REQUIRE)"                         shift, and go to state 7
16271    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
16272    "print (T_PRINT)"                             shift, and go to state 9
16273    "yield (T_YIELD)"                             shift, and go to state 10
16274    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
16275    '+'                                           shift, and go to state 12
16276    '-'                                           shift, and go to state 13
16277    '!'                                           shift, and go to state 14
16278    '~'                                           shift, and go to state 15
16279    "++ (T_INC)"                                  shift, and go to state 16
16280    "-- (T_DEC)"                                  shift, and go to state 17
16281    "(int) (T_INT_CAST)"                          shift, and go to state 18
16282    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
16283    "(string) (T_STRING_CAST)"                    shift, and go to state 20
16284    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
16285    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
16286    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
16287    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
16288    '@'                                           shift, and go to state 25
16289    '['                                           shift, and go to state 26
16290    "new (T_NEW)"                                 shift, and go to state 27
16291    "clone (T_CLONE)"                             shift, and go to state 28
16292    "static (T_STATIC)"                           shift, and go to state 113
16293    "integer number (T_LNUMBER)"                  shift, and go to state 32
16294    "floating-point number (T_DNUMBER)"           shift, and go to state 33
16295    "identifier (T_STRING)"                       shift, and go to state 114
16296    "variable (T_VARIABLE)"                       shift, and go to state 35
16297    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
16298    "exit (T_EXIT)"                               shift, and go to state 38
16299    "function (T_FUNCTION)"                       shift, and go to state 50
16300    "isset (T_ISSET)"                             shift, and go to state 58
16301    "empty (T_EMPTY)"                             shift, and go to state 59
16302    "list (T_LIST)"                               shift, and go to state 64
16303    "array (T_ARRAY)"                             shift, and go to state 65
16304    "__LINE__ (T_LINE)"                           shift, and go to state 66
16305    "__FILE__ (T_FILE)"                           shift, and go to state 67
16306    "__DIR__ (T_DIR)"                             shift, and go to state 68
16307    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
16308    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
16309    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
16310    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
16311    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
16312    "namespace (T_NAMESPACE)"                     shift, and go to state 115
16313    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
16314    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
16315    '('                                           shift, and go to state 77
16316    '`'                                           shift, and go to state 80
16317    '"'                                           shift, and go to state 81
16318    '$'                                           shift, and go to state 82
16319
16320    namespace_name              go to state 83
16321    name                        go to state 84
16322    new_expr                    go to state 97
16323    expr                        go to state 615
16324    function                    go to state 117
16325    function_call               go to state 100
16326    class_name                  go to state 101
16327    dereferencable_scalar       go to state 102
16328    scalar                      go to state 103
16329    constant                    go to state 104
16330    variable_class_name         go to state 105
16331    dereferencable              go to state 106
16332    callable_expr               go to state 107
16333    callable_variable           go to state 108
16334    variable                    go to state 109
16335    simple_variable             go to state 110
16336    static_member               go to state 111
16337    internal_functions_in_yacc  go to state 112
16338
16339
16340State 505
16341
16342   69 semi_reserved: reserved_non_modifiers .
16343
16344    $default  reduce using rule 69 (semi_reserved)
16345
16346
16347State 506
16348
16349   77 identifier: semi_reserved .
16350
16351    $default  reduce using rule 77 (identifier)
16352
16353
16354State 507
16355
16356  424 constant: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier .
16357  455 member_name: identifier .
16358
16359    '('       reduce using rule 455 (member_name)
16360    $default  reduce using rule 424 (constant)
16361
16362
16363State 508
16364
16365  447 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable .
16366  457 member_name: simple_variable .
16367
16368    '('       reduce using rule 457 (member_name)
16369    $default  reduce using rule 447 (static_member)
16370
16371
16372State 509
16373
16374  390 function_call: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name . argument_list
16375
16376    '('  shift, and go to state 228
16377
16378    argument_list  go to state 616
16379
16380
16381State 510
16382
16383  437 callable_variable: constant '[' optional_expr . ']'
16384
16385    ']'  shift, and go to state 617
16386
16387
16388State 511
16389
16390  425 constant: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier .
16391  455 member_name: identifier .
16392
16393    '('       reduce using rule 455 (member_name)
16394    $default  reduce using rule 425 (constant)
16395
16396
16397State 512
16398
16399  448 static_member: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable .
16400  457 member_name: simple_variable .
16401
16402    '('       reduce using rule 457 (member_name)
16403    $default  reduce using rule 448 (static_member)
16404
16405
16406State 513
16407
16408  391 function_call: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name . argument_list
16409
16410    '('  shift, and go to state 228
16411
16412    argument_list  go to state 618
16413
16414
16415State 514
16416
16417  436 callable_variable: dereferencable '[' optional_expr . ']'
16418
16419    ']'  shift, and go to state 619
16420
16421
16422State 515
16423
16424  458 property_name: "identifier (T_STRING)" .
16425
16426    $default  reduce using rule 458 (property_name)
16427
16428
16429State 516
16430
16431  459 property_name: '{' . expr '}'
16432
16433    "include (T_INCLUDE)"                         shift, and go to state 4
16434    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
16435    "eval (T_EVAL)"                               shift, and go to state 6
16436    "require (T_REQUIRE)"                         shift, and go to state 7
16437    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
16438    "print (T_PRINT)"                             shift, and go to state 9
16439    "yield (T_YIELD)"                             shift, and go to state 10
16440    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
16441    '+'                                           shift, and go to state 12
16442    '-'                                           shift, and go to state 13
16443    '!'                                           shift, and go to state 14
16444    '~'                                           shift, and go to state 15
16445    "++ (T_INC)"                                  shift, and go to state 16
16446    "-- (T_DEC)"                                  shift, and go to state 17
16447    "(int) (T_INT_CAST)"                          shift, and go to state 18
16448    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
16449    "(string) (T_STRING_CAST)"                    shift, and go to state 20
16450    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
16451    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
16452    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
16453    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
16454    '@'                                           shift, and go to state 25
16455    '['                                           shift, and go to state 26
16456    "new (T_NEW)"                                 shift, and go to state 27
16457    "clone (T_CLONE)"                             shift, and go to state 28
16458    "static (T_STATIC)"                           shift, and go to state 113
16459    "integer number (T_LNUMBER)"                  shift, and go to state 32
16460    "floating-point number (T_DNUMBER)"           shift, and go to state 33
16461    "identifier (T_STRING)"                       shift, and go to state 114
16462    "variable (T_VARIABLE)"                       shift, and go to state 35
16463    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
16464    "exit (T_EXIT)"                               shift, and go to state 38
16465    "function (T_FUNCTION)"                       shift, and go to state 50
16466    "isset (T_ISSET)"                             shift, and go to state 58
16467    "empty (T_EMPTY)"                             shift, and go to state 59
16468    "list (T_LIST)"                               shift, and go to state 64
16469    "array (T_ARRAY)"                             shift, and go to state 65
16470    "__LINE__ (T_LINE)"                           shift, and go to state 66
16471    "__FILE__ (T_FILE)"                           shift, and go to state 67
16472    "__DIR__ (T_DIR)"                             shift, and go to state 68
16473    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
16474    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
16475    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
16476    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
16477    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
16478    "namespace (T_NAMESPACE)"                     shift, and go to state 115
16479    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
16480    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
16481    '('                                           shift, and go to state 77
16482    '`'                                           shift, and go to state 80
16483    '"'                                           shift, and go to state 81
16484    '$'                                           shift, and go to state 82
16485
16486    namespace_name              go to state 83
16487    name                        go to state 84
16488    new_expr                    go to state 97
16489    expr                        go to state 620
16490    function                    go to state 117
16491    function_call               go to state 100
16492    class_name                  go to state 101
16493    dereferencable_scalar       go to state 102
16494    scalar                      go to state 103
16495    constant                    go to state 104
16496    variable_class_name         go to state 105
16497    dereferencable              go to state 106
16498    callable_expr               go to state 107
16499    callable_variable           go to state 108
16500    variable                    go to state 109
16501    simple_variable             go to state 110
16502    static_member               go to state 111
16503    internal_functions_in_yacc  go to state 112
16504
16505
16506State 517
16507
16508  460 property_name: simple_variable .
16509
16510    $default  reduce using rule 460 (property_name)
16511
16512
16513State 518
16514
16515  439 callable_variable: dereferencable "-> (T_OBJECT_OPERATOR)" property_name . argument_list
16516  443 variable: dereferencable "-> (T_OBJECT_OPERATOR)" property_name .
16517
16518    '('  shift, and go to state 228
16519
16520    $default  reduce using rule 443 (variable)
16521
16522    argument_list  go to state 621
16523
16524
16525State 519
16526
16527  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
16528  324     | expr . "&& (T_BOOLEAN_AND)" expr
16529  325     | expr . "or (T_LOGICAL_OR)" expr
16530  326     | expr . "and (T_LOGICAL_AND)" expr
16531  327     | expr . "xor (T_LOGICAL_XOR)" expr
16532  328     | expr . '|' expr
16533  329     | expr . '&' expr
16534  330     | expr . '^' expr
16535  331     | expr . '.' expr
16536  332     | expr . '+' expr
16537  333     | expr . '-' expr
16538  334     | expr . '*' expr
16539  335     | expr . "** (T_POW)" expr
16540  336     | expr . '/' expr
16541  337     | expr . '%' expr
16542  338     | expr . "<< (T_SL)" expr
16543  339     | expr . ">> (T_SR)" expr
16544  344     | expr . "=== (T_IS_IDENTICAL)" expr
16545  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
16546  346     | expr . "== (T_IS_EQUAL)" expr
16547  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
16548  348     | expr . '<' expr
16549  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
16550  350     | expr . '>' expr
16551  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
16552  352     | expr . "<=> (T_SPACESHIP)" expr
16553  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
16554  356     | expr . '?' expr ':' expr
16555  357     | expr . '?' ':' expr
16556  358     | expr . "?? (T_COALESCE)" expr
16557  438 callable_variable: dereferencable '{' expr . '}'
16558
16559    "or (T_LOGICAL_OR)"           shift, and go to state 237
16560    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
16561    "and (T_LOGICAL_AND)"         shift, and go to state 239
16562    '?'                           shift, and go to state 240
16563    "?? (T_COALESCE)"             shift, and go to state 241
16564    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
16565    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
16566    '|'                           shift, and go to state 244
16567    '^'                           shift, and go to state 245
16568    '&'                           shift, and go to state 246
16569    "== (T_IS_EQUAL)"             shift, and go to state 247
16570    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
16571    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
16572    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
16573    "<=> (T_SPACESHIP)"           shift, and go to state 251
16574    '<'                           shift, and go to state 252
16575    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
16576    '>'                           shift, and go to state 254
16577    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
16578    "<< (T_SL)"                   shift, and go to state 256
16579    ">> (T_SR)"                   shift, and go to state 257
16580    '+'                           shift, and go to state 258
16581    '-'                           shift, and go to state 259
16582    '.'                           shift, and go to state 260
16583    '*'                           shift, and go to state 261
16584    '/'                           shift, and go to state 262
16585    '%'                           shift, and go to state 263
16586    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
16587    "** (T_POW)"                  shift, and go to state 265
16588    '}'                           shift, and go to state 622
16589
16590
16591State 520
16592
16593  305 expr: variable '=' '&' . variable
16594
16595    '['                                           shift, and go to state 129
16596    "static (T_STATIC)"                           shift, and go to state 130
16597    "identifier (T_STRING)"                       shift, and go to state 114
16598    "variable (T_VARIABLE)"                       shift, and go to state 35
16599    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
16600    "array (T_ARRAY)"                             shift, and go to state 65
16601    "namespace (T_NAMESPACE)"                     shift, and go to state 115
16602    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
16603    '('                                           shift, and go to state 131
16604    '$'                                           shift, and go to state 82
16605
16606    namespace_name         go to state 83
16607    name                   go to state 84
16608    function_call          go to state 100
16609    class_name             go to state 101
16610    dereferencable_scalar  go to state 132
16611    constant               go to state 133
16612    variable_class_name    go to state 105
16613    dereferencable         go to state 106
16614    callable_expr          go to state 107
16615    callable_variable      go to state 108
16616    variable               go to state 623
16617    simple_variable        go to state 110
16618    static_member          go to state 111
16619
16620
16621State 521
16622
16623  304 expr: variable '=' expr .
16624  323     | expr . "|| (T_BOOLEAN_OR)" expr
16625  324     | expr . "&& (T_BOOLEAN_AND)" expr
16626  325     | expr . "or (T_LOGICAL_OR)" expr
16627  326     | expr . "and (T_LOGICAL_AND)" expr
16628  327     | expr . "xor (T_LOGICAL_XOR)" expr
16629  328     | expr . '|' expr
16630  329     | expr . '&' expr
16631  330     | expr . '^' expr
16632  331     | expr . '.' expr
16633  332     | expr . '+' expr
16634  333     | expr . '-' expr
16635  334     | expr . '*' expr
16636  335     | expr . "** (T_POW)" expr
16637  336     | expr . '/' expr
16638  337     | expr . '%' expr
16639  338     | expr . "<< (T_SL)" expr
16640  339     | expr . ">> (T_SR)" expr
16641  344     | expr . "=== (T_IS_IDENTICAL)" expr
16642  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
16643  346     | expr . "== (T_IS_EQUAL)" expr
16644  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
16645  348     | expr . '<' expr
16646  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
16647  350     | expr . '>' expr
16648  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
16649  352     | expr . "<=> (T_SPACESHIP)" expr
16650  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
16651  356     | expr . '?' expr ':' expr
16652  357     | expr . '?' ':' expr
16653  358     | expr . "?? (T_COALESCE)" expr
16654
16655    '?'                           shift, and go to state 240
16656    "?? (T_COALESCE)"             shift, and go to state 241
16657    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
16658    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
16659    '|'                           shift, and go to state 244
16660    '^'                           shift, and go to state 245
16661    '&'                           shift, and go to state 246
16662    "== (T_IS_EQUAL)"             shift, and go to state 247
16663    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
16664    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
16665    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
16666    "<=> (T_SPACESHIP)"           shift, and go to state 251
16667    '<'                           shift, and go to state 252
16668    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
16669    '>'                           shift, and go to state 254
16670    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
16671    "<< (T_SL)"                   shift, and go to state 256
16672    ">> (T_SR)"                   shift, and go to state 257
16673    '+'                           shift, and go to state 258
16674    '-'                           shift, and go to state 259
16675    '.'                           shift, and go to state 260
16676    '*'                           shift, and go to state 261
16677    '/'                           shift, and go to state 262
16678    '%'                           shift, and go to state 263
16679    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
16680    "** (T_POW)"                  shift, and go to state 265
16681
16682    $default  reduce using rule 304 (expr)
16683
16684
16685State 522
16686
16687  307 expr: variable "+= (T_PLUS_EQUAL)" expr .
16688  323     | expr . "|| (T_BOOLEAN_OR)" expr
16689  324     | expr . "&& (T_BOOLEAN_AND)" expr
16690  325     | expr . "or (T_LOGICAL_OR)" expr
16691  326     | expr . "and (T_LOGICAL_AND)" expr
16692  327     | expr . "xor (T_LOGICAL_XOR)" expr
16693  328     | expr . '|' expr
16694  329     | expr . '&' expr
16695  330     | expr . '^' expr
16696  331     | expr . '.' expr
16697  332     | expr . '+' expr
16698  333     | expr . '-' expr
16699  334     | expr . '*' expr
16700  335     | expr . "** (T_POW)" expr
16701  336     | expr . '/' expr
16702  337     | expr . '%' expr
16703  338     | expr . "<< (T_SL)" expr
16704  339     | expr . ">> (T_SR)" expr
16705  344     | expr . "=== (T_IS_IDENTICAL)" expr
16706  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
16707  346     | expr . "== (T_IS_EQUAL)" expr
16708  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
16709  348     | expr . '<' expr
16710  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
16711  350     | expr . '>' expr
16712  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
16713  352     | expr . "<=> (T_SPACESHIP)" expr
16714  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
16715  356     | expr . '?' expr ':' expr
16716  357     | expr . '?' ':' expr
16717  358     | expr . "?? (T_COALESCE)" expr
16718
16719    '?'                           shift, and go to state 240
16720    "?? (T_COALESCE)"             shift, and go to state 241
16721    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
16722    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
16723    '|'                           shift, and go to state 244
16724    '^'                           shift, and go to state 245
16725    '&'                           shift, and go to state 246
16726    "== (T_IS_EQUAL)"             shift, and go to state 247
16727    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
16728    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
16729    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
16730    "<=> (T_SPACESHIP)"           shift, and go to state 251
16731    '<'                           shift, and go to state 252
16732    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
16733    '>'                           shift, and go to state 254
16734    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
16735    "<< (T_SL)"                   shift, and go to state 256
16736    ">> (T_SR)"                   shift, and go to state 257
16737    '+'                           shift, and go to state 258
16738    '-'                           shift, and go to state 259
16739    '.'                           shift, and go to state 260
16740    '*'                           shift, and go to state 261
16741    '/'                           shift, and go to state 262
16742    '%'                           shift, and go to state 263
16743    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
16744    "** (T_POW)"                  shift, and go to state 265
16745
16746    $default  reduce using rule 307 (expr)
16747
16748
16749State 523
16750
16751  308 expr: variable "-= (T_MINUS_EQUAL)" expr .
16752  323     | expr . "|| (T_BOOLEAN_OR)" expr
16753  324     | expr . "&& (T_BOOLEAN_AND)" expr
16754  325     | expr . "or (T_LOGICAL_OR)" expr
16755  326     | expr . "and (T_LOGICAL_AND)" expr
16756  327     | expr . "xor (T_LOGICAL_XOR)" expr
16757  328     | expr . '|' expr
16758  329     | expr . '&' expr
16759  330     | expr . '^' expr
16760  331     | expr . '.' expr
16761  332     | expr . '+' expr
16762  333     | expr . '-' expr
16763  334     | expr . '*' expr
16764  335     | expr . "** (T_POW)" expr
16765  336     | expr . '/' expr
16766  337     | expr . '%' expr
16767  338     | expr . "<< (T_SL)" expr
16768  339     | expr . ">> (T_SR)" expr
16769  344     | expr . "=== (T_IS_IDENTICAL)" expr
16770  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
16771  346     | expr . "== (T_IS_EQUAL)" expr
16772  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
16773  348     | expr . '<' expr
16774  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
16775  350     | expr . '>' expr
16776  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
16777  352     | expr . "<=> (T_SPACESHIP)" expr
16778  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
16779  356     | expr . '?' expr ':' expr
16780  357     | expr . '?' ':' expr
16781  358     | expr . "?? (T_COALESCE)" expr
16782
16783    '?'                           shift, and go to state 240
16784    "?? (T_COALESCE)"             shift, and go to state 241
16785    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
16786    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
16787    '|'                           shift, and go to state 244
16788    '^'                           shift, and go to state 245
16789    '&'                           shift, and go to state 246
16790    "== (T_IS_EQUAL)"             shift, and go to state 247
16791    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
16792    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
16793    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
16794    "<=> (T_SPACESHIP)"           shift, and go to state 251
16795    '<'                           shift, and go to state 252
16796    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
16797    '>'                           shift, and go to state 254
16798    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
16799    "<< (T_SL)"                   shift, and go to state 256
16800    ">> (T_SR)"                   shift, and go to state 257
16801    '+'                           shift, and go to state 258
16802    '-'                           shift, and go to state 259
16803    '.'                           shift, and go to state 260
16804    '*'                           shift, and go to state 261
16805    '/'                           shift, and go to state 262
16806    '%'                           shift, and go to state 263
16807    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
16808    "** (T_POW)"                  shift, and go to state 265
16809
16810    $default  reduce using rule 308 (expr)
16811
16812
16813State 524
16814
16815  309 expr: variable "*= (T_MUL_EQUAL)" expr .
16816  323     | expr . "|| (T_BOOLEAN_OR)" expr
16817  324     | expr . "&& (T_BOOLEAN_AND)" expr
16818  325     | expr . "or (T_LOGICAL_OR)" expr
16819  326     | expr . "and (T_LOGICAL_AND)" expr
16820  327     | expr . "xor (T_LOGICAL_XOR)" expr
16821  328     | expr . '|' expr
16822  329     | expr . '&' expr
16823  330     | expr . '^' expr
16824  331     | expr . '.' expr
16825  332     | expr . '+' expr
16826  333     | expr . '-' expr
16827  334     | expr . '*' expr
16828  335     | expr . "** (T_POW)" expr
16829  336     | expr . '/' expr
16830  337     | expr . '%' expr
16831  338     | expr . "<< (T_SL)" expr
16832  339     | expr . ">> (T_SR)" expr
16833  344     | expr . "=== (T_IS_IDENTICAL)" expr
16834  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
16835  346     | expr . "== (T_IS_EQUAL)" expr
16836  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
16837  348     | expr . '<' expr
16838  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
16839  350     | expr . '>' expr
16840  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
16841  352     | expr . "<=> (T_SPACESHIP)" expr
16842  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
16843  356     | expr . '?' expr ':' expr
16844  357     | expr . '?' ':' expr
16845  358     | expr . "?? (T_COALESCE)" expr
16846
16847    '?'                           shift, and go to state 240
16848    "?? (T_COALESCE)"             shift, and go to state 241
16849    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
16850    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
16851    '|'                           shift, and go to state 244
16852    '^'                           shift, and go to state 245
16853    '&'                           shift, and go to state 246
16854    "== (T_IS_EQUAL)"             shift, and go to state 247
16855    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
16856    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
16857    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
16858    "<=> (T_SPACESHIP)"           shift, and go to state 251
16859    '<'                           shift, and go to state 252
16860    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
16861    '>'                           shift, and go to state 254
16862    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
16863    "<< (T_SL)"                   shift, and go to state 256
16864    ">> (T_SR)"                   shift, and go to state 257
16865    '+'                           shift, and go to state 258
16866    '-'                           shift, and go to state 259
16867    '.'                           shift, and go to state 260
16868    '*'                           shift, and go to state 261
16869    '/'                           shift, and go to state 262
16870    '%'                           shift, and go to state 263
16871    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
16872    "** (T_POW)"                  shift, and go to state 265
16873
16874    $default  reduce using rule 309 (expr)
16875
16876
16877State 525
16878
16879  311 expr: variable "/= (T_DIV_EQUAL)" expr .
16880  323     | expr . "|| (T_BOOLEAN_OR)" expr
16881  324     | expr . "&& (T_BOOLEAN_AND)" expr
16882  325     | expr . "or (T_LOGICAL_OR)" expr
16883  326     | expr . "and (T_LOGICAL_AND)" expr
16884  327     | expr . "xor (T_LOGICAL_XOR)" expr
16885  328     | expr . '|' expr
16886  329     | expr . '&' expr
16887  330     | expr . '^' expr
16888  331     | expr . '.' expr
16889  332     | expr . '+' expr
16890  333     | expr . '-' expr
16891  334     | expr . '*' expr
16892  335     | expr . "** (T_POW)" expr
16893  336     | expr . '/' expr
16894  337     | expr . '%' expr
16895  338     | expr . "<< (T_SL)" expr
16896  339     | expr . ">> (T_SR)" expr
16897  344     | expr . "=== (T_IS_IDENTICAL)" expr
16898  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
16899  346     | expr . "== (T_IS_EQUAL)" expr
16900  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
16901  348     | expr . '<' expr
16902  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
16903  350     | expr . '>' expr
16904  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
16905  352     | expr . "<=> (T_SPACESHIP)" expr
16906  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
16907  356     | expr . '?' expr ':' expr
16908  357     | expr . '?' ':' expr
16909  358     | expr . "?? (T_COALESCE)" expr
16910
16911    '?'                           shift, and go to state 240
16912    "?? (T_COALESCE)"             shift, and go to state 241
16913    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
16914    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
16915    '|'                           shift, and go to state 244
16916    '^'                           shift, and go to state 245
16917    '&'                           shift, and go to state 246
16918    "== (T_IS_EQUAL)"             shift, and go to state 247
16919    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
16920    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
16921    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
16922    "<=> (T_SPACESHIP)"           shift, and go to state 251
16923    '<'                           shift, and go to state 252
16924    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
16925    '>'                           shift, and go to state 254
16926    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
16927    "<< (T_SL)"                   shift, and go to state 256
16928    ">> (T_SR)"                   shift, and go to state 257
16929    '+'                           shift, and go to state 258
16930    '-'                           shift, and go to state 259
16931    '.'                           shift, and go to state 260
16932    '*'                           shift, and go to state 261
16933    '/'                           shift, and go to state 262
16934    '%'                           shift, and go to state 263
16935    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
16936    "** (T_POW)"                  shift, and go to state 265
16937
16938    $default  reduce using rule 311 (expr)
16939
16940
16941State 526
16942
16943  312 expr: variable ".= (T_CONCAT_EQUAL)" expr .
16944  323     | expr . "|| (T_BOOLEAN_OR)" expr
16945  324     | expr . "&& (T_BOOLEAN_AND)" expr
16946  325     | expr . "or (T_LOGICAL_OR)" expr
16947  326     | expr . "and (T_LOGICAL_AND)" expr
16948  327     | expr . "xor (T_LOGICAL_XOR)" expr
16949  328     | expr . '|' expr
16950  329     | expr . '&' expr
16951  330     | expr . '^' expr
16952  331     | expr . '.' expr
16953  332     | expr . '+' expr
16954  333     | expr . '-' expr
16955  334     | expr . '*' expr
16956  335     | expr . "** (T_POW)" expr
16957  336     | expr . '/' expr
16958  337     | expr . '%' expr
16959  338     | expr . "<< (T_SL)" expr
16960  339     | expr . ">> (T_SR)" expr
16961  344     | expr . "=== (T_IS_IDENTICAL)" expr
16962  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
16963  346     | expr . "== (T_IS_EQUAL)" expr
16964  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
16965  348     | expr . '<' expr
16966  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
16967  350     | expr . '>' expr
16968  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
16969  352     | expr . "<=> (T_SPACESHIP)" expr
16970  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
16971  356     | expr . '?' expr ':' expr
16972  357     | expr . '?' ':' expr
16973  358     | expr . "?? (T_COALESCE)" expr
16974
16975    '?'                           shift, and go to state 240
16976    "?? (T_COALESCE)"             shift, and go to state 241
16977    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
16978    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
16979    '|'                           shift, and go to state 244
16980    '^'                           shift, and go to state 245
16981    '&'                           shift, and go to state 246
16982    "== (T_IS_EQUAL)"             shift, and go to state 247
16983    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
16984    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
16985    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
16986    "<=> (T_SPACESHIP)"           shift, and go to state 251
16987    '<'                           shift, and go to state 252
16988    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
16989    '>'                           shift, and go to state 254
16990    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
16991    "<< (T_SL)"                   shift, and go to state 256
16992    ">> (T_SR)"                   shift, and go to state 257
16993    '+'                           shift, and go to state 258
16994    '-'                           shift, and go to state 259
16995    '.'                           shift, and go to state 260
16996    '*'                           shift, and go to state 261
16997    '/'                           shift, and go to state 262
16998    '%'                           shift, and go to state 263
16999    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
17000    "** (T_POW)"                  shift, and go to state 265
17001
17002    $default  reduce using rule 312 (expr)
17003
17004
17005State 527
17006
17007  313 expr: variable "%= (T_MOD_EQUAL)" expr .
17008  323     | expr . "|| (T_BOOLEAN_OR)" expr
17009  324     | expr . "&& (T_BOOLEAN_AND)" expr
17010  325     | expr . "or (T_LOGICAL_OR)" expr
17011  326     | expr . "and (T_LOGICAL_AND)" expr
17012  327     | expr . "xor (T_LOGICAL_XOR)" expr
17013  328     | expr . '|' expr
17014  329     | expr . '&' expr
17015  330     | expr . '^' expr
17016  331     | expr . '.' expr
17017  332     | expr . '+' expr
17018  333     | expr . '-' expr
17019  334     | expr . '*' expr
17020  335     | expr . "** (T_POW)" expr
17021  336     | expr . '/' expr
17022  337     | expr . '%' expr
17023  338     | expr . "<< (T_SL)" expr
17024  339     | expr . ">> (T_SR)" expr
17025  344     | expr . "=== (T_IS_IDENTICAL)" expr
17026  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
17027  346     | expr . "== (T_IS_EQUAL)" expr
17028  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
17029  348     | expr . '<' expr
17030  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
17031  350     | expr . '>' expr
17032  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
17033  352     | expr . "<=> (T_SPACESHIP)" expr
17034  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
17035  356     | expr . '?' expr ':' expr
17036  357     | expr . '?' ':' expr
17037  358     | expr . "?? (T_COALESCE)" expr
17038
17039    '?'                           shift, and go to state 240
17040    "?? (T_COALESCE)"             shift, and go to state 241
17041    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
17042    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
17043    '|'                           shift, and go to state 244
17044    '^'                           shift, and go to state 245
17045    '&'                           shift, and go to state 246
17046    "== (T_IS_EQUAL)"             shift, and go to state 247
17047    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
17048    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
17049    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
17050    "<=> (T_SPACESHIP)"           shift, and go to state 251
17051    '<'                           shift, and go to state 252
17052    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
17053    '>'                           shift, and go to state 254
17054    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
17055    "<< (T_SL)"                   shift, and go to state 256
17056    ">> (T_SR)"                   shift, and go to state 257
17057    '+'                           shift, and go to state 258
17058    '-'                           shift, and go to state 259
17059    '.'                           shift, and go to state 260
17060    '*'                           shift, and go to state 261
17061    '/'                           shift, and go to state 262
17062    '%'                           shift, and go to state 263
17063    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
17064    "** (T_POW)"                  shift, and go to state 265
17065
17066    $default  reduce using rule 313 (expr)
17067
17068
17069State 528
17070
17071  314 expr: variable "&= (T_AND_EQUAL)" expr .
17072  323     | expr . "|| (T_BOOLEAN_OR)" expr
17073  324     | expr . "&& (T_BOOLEAN_AND)" expr
17074  325     | expr . "or (T_LOGICAL_OR)" expr
17075  326     | expr . "and (T_LOGICAL_AND)" expr
17076  327     | expr . "xor (T_LOGICAL_XOR)" expr
17077  328     | expr . '|' expr
17078  329     | expr . '&' expr
17079  330     | expr . '^' expr
17080  331     | expr . '.' expr
17081  332     | expr . '+' expr
17082  333     | expr . '-' expr
17083  334     | expr . '*' expr
17084  335     | expr . "** (T_POW)" expr
17085  336     | expr . '/' expr
17086  337     | expr . '%' expr
17087  338     | expr . "<< (T_SL)" expr
17088  339     | expr . ">> (T_SR)" expr
17089  344     | expr . "=== (T_IS_IDENTICAL)" expr
17090  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
17091  346     | expr . "== (T_IS_EQUAL)" expr
17092  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
17093  348     | expr . '<' expr
17094  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
17095  350     | expr . '>' expr
17096  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
17097  352     | expr . "<=> (T_SPACESHIP)" expr
17098  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
17099  356     | expr . '?' expr ':' expr
17100  357     | expr . '?' ':' expr
17101  358     | expr . "?? (T_COALESCE)" expr
17102
17103    '?'                           shift, and go to state 240
17104    "?? (T_COALESCE)"             shift, and go to state 241
17105    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
17106    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
17107    '|'                           shift, and go to state 244
17108    '^'                           shift, and go to state 245
17109    '&'                           shift, and go to state 246
17110    "== (T_IS_EQUAL)"             shift, and go to state 247
17111    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
17112    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
17113    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
17114    "<=> (T_SPACESHIP)"           shift, and go to state 251
17115    '<'                           shift, and go to state 252
17116    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
17117    '>'                           shift, and go to state 254
17118    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
17119    "<< (T_SL)"                   shift, and go to state 256
17120    ">> (T_SR)"                   shift, and go to state 257
17121    '+'                           shift, and go to state 258
17122    '-'                           shift, and go to state 259
17123    '.'                           shift, and go to state 260
17124    '*'                           shift, and go to state 261
17125    '/'                           shift, and go to state 262
17126    '%'                           shift, and go to state 263
17127    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
17128    "** (T_POW)"                  shift, and go to state 265
17129
17130    $default  reduce using rule 314 (expr)
17131
17132
17133State 529
17134
17135  315 expr: variable "|= (T_OR_EQUAL)" expr .
17136  323     | expr . "|| (T_BOOLEAN_OR)" expr
17137  324     | expr . "&& (T_BOOLEAN_AND)" expr
17138  325     | expr . "or (T_LOGICAL_OR)" expr
17139  326     | expr . "and (T_LOGICAL_AND)" expr
17140  327     | expr . "xor (T_LOGICAL_XOR)" expr
17141  328     | expr . '|' expr
17142  329     | expr . '&' expr
17143  330     | expr . '^' expr
17144  331     | expr . '.' expr
17145  332     | expr . '+' expr
17146  333     | expr . '-' expr
17147  334     | expr . '*' expr
17148  335     | expr . "** (T_POW)" expr
17149  336     | expr . '/' expr
17150  337     | expr . '%' expr
17151  338     | expr . "<< (T_SL)" expr
17152  339     | expr . ">> (T_SR)" expr
17153  344     | expr . "=== (T_IS_IDENTICAL)" expr
17154  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
17155  346     | expr . "== (T_IS_EQUAL)" expr
17156  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
17157  348     | expr . '<' expr
17158  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
17159  350     | expr . '>' expr
17160  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
17161  352     | expr . "<=> (T_SPACESHIP)" expr
17162  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
17163  356     | expr . '?' expr ':' expr
17164  357     | expr . '?' ':' expr
17165  358     | expr . "?? (T_COALESCE)" expr
17166
17167    '?'                           shift, and go to state 240
17168    "?? (T_COALESCE)"             shift, and go to state 241
17169    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
17170    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
17171    '|'                           shift, and go to state 244
17172    '^'                           shift, and go to state 245
17173    '&'                           shift, and go to state 246
17174    "== (T_IS_EQUAL)"             shift, and go to state 247
17175    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
17176    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
17177    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
17178    "<=> (T_SPACESHIP)"           shift, and go to state 251
17179    '<'                           shift, and go to state 252
17180    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
17181    '>'                           shift, and go to state 254
17182    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
17183    "<< (T_SL)"                   shift, and go to state 256
17184    ">> (T_SR)"                   shift, and go to state 257
17185    '+'                           shift, and go to state 258
17186    '-'                           shift, and go to state 259
17187    '.'                           shift, and go to state 260
17188    '*'                           shift, and go to state 261
17189    '/'                           shift, and go to state 262
17190    '%'                           shift, and go to state 263
17191    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
17192    "** (T_POW)"                  shift, and go to state 265
17193
17194    $default  reduce using rule 315 (expr)
17195
17196
17197State 530
17198
17199  316 expr: variable "^= (T_XOR_EQUAL)" expr .
17200  323     | expr . "|| (T_BOOLEAN_OR)" expr
17201  324     | expr . "&& (T_BOOLEAN_AND)" expr
17202  325     | expr . "or (T_LOGICAL_OR)" expr
17203  326     | expr . "and (T_LOGICAL_AND)" expr
17204  327     | expr . "xor (T_LOGICAL_XOR)" expr
17205  328     | expr . '|' expr
17206  329     | expr . '&' expr
17207  330     | expr . '^' expr
17208  331     | expr . '.' expr
17209  332     | expr . '+' expr
17210  333     | expr . '-' expr
17211  334     | expr . '*' expr
17212  335     | expr . "** (T_POW)" expr
17213  336     | expr . '/' expr
17214  337     | expr . '%' expr
17215  338     | expr . "<< (T_SL)" expr
17216  339     | expr . ">> (T_SR)" expr
17217  344     | expr . "=== (T_IS_IDENTICAL)" expr
17218  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
17219  346     | expr . "== (T_IS_EQUAL)" expr
17220  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
17221  348     | expr . '<' expr
17222  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
17223  350     | expr . '>' expr
17224  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
17225  352     | expr . "<=> (T_SPACESHIP)" expr
17226  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
17227  356     | expr . '?' expr ':' expr
17228  357     | expr . '?' ':' expr
17229  358     | expr . "?? (T_COALESCE)" expr
17230
17231    '?'                           shift, and go to state 240
17232    "?? (T_COALESCE)"             shift, and go to state 241
17233    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
17234    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
17235    '|'                           shift, and go to state 244
17236    '^'                           shift, and go to state 245
17237    '&'                           shift, and go to state 246
17238    "== (T_IS_EQUAL)"             shift, and go to state 247
17239    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
17240    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
17241    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
17242    "<=> (T_SPACESHIP)"           shift, and go to state 251
17243    '<'                           shift, and go to state 252
17244    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
17245    '>'                           shift, and go to state 254
17246    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
17247    "<< (T_SL)"                   shift, and go to state 256
17248    ">> (T_SR)"                   shift, and go to state 257
17249    '+'                           shift, and go to state 258
17250    '-'                           shift, and go to state 259
17251    '.'                           shift, and go to state 260
17252    '*'                           shift, and go to state 261
17253    '/'                           shift, and go to state 262
17254    '%'                           shift, and go to state 263
17255    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
17256    "** (T_POW)"                  shift, and go to state 265
17257
17258    $default  reduce using rule 316 (expr)
17259
17260
17261State 531
17262
17263  317 expr: variable "<<= (T_SL_EQUAL)" expr .
17264  323     | expr . "|| (T_BOOLEAN_OR)" expr
17265  324     | expr . "&& (T_BOOLEAN_AND)" expr
17266  325     | expr . "or (T_LOGICAL_OR)" expr
17267  326     | expr . "and (T_LOGICAL_AND)" expr
17268  327     | expr . "xor (T_LOGICAL_XOR)" expr
17269  328     | expr . '|' expr
17270  329     | expr . '&' expr
17271  330     | expr . '^' expr
17272  331     | expr . '.' expr
17273  332     | expr . '+' expr
17274  333     | expr . '-' expr
17275  334     | expr . '*' expr
17276  335     | expr . "** (T_POW)" expr
17277  336     | expr . '/' expr
17278  337     | expr . '%' expr
17279  338     | expr . "<< (T_SL)" expr
17280  339     | expr . ">> (T_SR)" expr
17281  344     | expr . "=== (T_IS_IDENTICAL)" expr
17282  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
17283  346     | expr . "== (T_IS_EQUAL)" expr
17284  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
17285  348     | expr . '<' expr
17286  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
17287  350     | expr . '>' expr
17288  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
17289  352     | expr . "<=> (T_SPACESHIP)" expr
17290  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
17291  356     | expr . '?' expr ':' expr
17292  357     | expr . '?' ':' expr
17293  358     | expr . "?? (T_COALESCE)" expr
17294
17295    '?'                           shift, and go to state 240
17296    "?? (T_COALESCE)"             shift, and go to state 241
17297    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
17298    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
17299    '|'                           shift, and go to state 244
17300    '^'                           shift, and go to state 245
17301    '&'                           shift, and go to state 246
17302    "== (T_IS_EQUAL)"             shift, and go to state 247
17303    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
17304    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
17305    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
17306    "<=> (T_SPACESHIP)"           shift, and go to state 251
17307    '<'                           shift, and go to state 252
17308    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
17309    '>'                           shift, and go to state 254
17310    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
17311    "<< (T_SL)"                   shift, and go to state 256
17312    ">> (T_SR)"                   shift, and go to state 257
17313    '+'                           shift, and go to state 258
17314    '-'                           shift, and go to state 259
17315    '.'                           shift, and go to state 260
17316    '*'                           shift, and go to state 261
17317    '/'                           shift, and go to state 262
17318    '%'                           shift, and go to state 263
17319    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
17320    "** (T_POW)"                  shift, and go to state 265
17321
17322    $default  reduce using rule 317 (expr)
17323
17324
17325State 532
17326
17327  318 expr: variable ">>= (T_SR_EQUAL)" expr .
17328  323     | expr . "|| (T_BOOLEAN_OR)" expr
17329  324     | expr . "&& (T_BOOLEAN_AND)" expr
17330  325     | expr . "or (T_LOGICAL_OR)" expr
17331  326     | expr . "and (T_LOGICAL_AND)" expr
17332  327     | expr . "xor (T_LOGICAL_XOR)" expr
17333  328     | expr . '|' expr
17334  329     | expr . '&' expr
17335  330     | expr . '^' expr
17336  331     | expr . '.' expr
17337  332     | expr . '+' expr
17338  333     | expr . '-' expr
17339  334     | expr . '*' expr
17340  335     | expr . "** (T_POW)" expr
17341  336     | expr . '/' expr
17342  337     | expr . '%' expr
17343  338     | expr . "<< (T_SL)" expr
17344  339     | expr . ">> (T_SR)" expr
17345  344     | expr . "=== (T_IS_IDENTICAL)" expr
17346  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
17347  346     | expr . "== (T_IS_EQUAL)" expr
17348  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
17349  348     | expr . '<' expr
17350  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
17351  350     | expr . '>' expr
17352  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
17353  352     | expr . "<=> (T_SPACESHIP)" expr
17354  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
17355  356     | expr . '?' expr ':' expr
17356  357     | expr . '?' ':' expr
17357  358     | expr . "?? (T_COALESCE)" expr
17358
17359    '?'                           shift, and go to state 240
17360    "?? (T_COALESCE)"             shift, and go to state 241
17361    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
17362    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
17363    '|'                           shift, and go to state 244
17364    '^'                           shift, and go to state 245
17365    '&'                           shift, and go to state 246
17366    "== (T_IS_EQUAL)"             shift, and go to state 247
17367    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
17368    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
17369    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
17370    "<=> (T_SPACESHIP)"           shift, and go to state 251
17371    '<'                           shift, and go to state 252
17372    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
17373    '>'                           shift, and go to state 254
17374    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
17375    "<< (T_SL)"                   shift, and go to state 256
17376    ">> (T_SR)"                   shift, and go to state 257
17377    '+'                           shift, and go to state 258
17378    '-'                           shift, and go to state 259
17379    '.'                           shift, and go to state 260
17380    '*'                           shift, and go to state 261
17381    '/'                           shift, and go to state 262
17382    '%'                           shift, and go to state 263
17383    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
17384    "** (T_POW)"                  shift, and go to state 265
17385
17386    $default  reduce using rule 318 (expr)
17387
17388
17389State 533
17390
17391  310 expr: variable "**= (T_POW_EQUAL)" expr .
17392  323     | expr . "|| (T_BOOLEAN_OR)" expr
17393  324     | expr . "&& (T_BOOLEAN_AND)" expr
17394  325     | expr . "or (T_LOGICAL_OR)" expr
17395  326     | expr . "and (T_LOGICAL_AND)" expr
17396  327     | expr . "xor (T_LOGICAL_XOR)" expr
17397  328     | expr . '|' expr
17398  329     | expr . '&' expr
17399  330     | expr . '^' expr
17400  331     | expr . '.' expr
17401  332     | expr . '+' expr
17402  333     | expr . '-' expr
17403  334     | expr . '*' expr
17404  335     | expr . "** (T_POW)" expr
17405  336     | expr . '/' expr
17406  337     | expr . '%' expr
17407  338     | expr . "<< (T_SL)" expr
17408  339     | expr . ">> (T_SR)" expr
17409  344     | expr . "=== (T_IS_IDENTICAL)" expr
17410  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
17411  346     | expr . "== (T_IS_EQUAL)" expr
17412  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
17413  348     | expr . '<' expr
17414  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
17415  350     | expr . '>' expr
17416  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
17417  352     | expr . "<=> (T_SPACESHIP)" expr
17418  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
17419  356     | expr . '?' expr ':' expr
17420  357     | expr . '?' ':' expr
17421  358     | expr . "?? (T_COALESCE)" expr
17422
17423    '?'                           shift, and go to state 240
17424    "?? (T_COALESCE)"             shift, and go to state 241
17425    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
17426    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
17427    '|'                           shift, and go to state 244
17428    '^'                           shift, and go to state 245
17429    '&'                           shift, and go to state 246
17430    "== (T_IS_EQUAL)"             shift, and go to state 247
17431    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
17432    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
17433    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
17434    "<=> (T_SPACESHIP)"           shift, and go to state 251
17435    '<'                           shift, and go to state 252
17436    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
17437    '>'                           shift, and go to state 254
17438    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
17439    "<< (T_SL)"                   shift, and go to state 256
17440    ">> (T_SR)"                   shift, and go to state 257
17441    '+'                           shift, and go to state 258
17442    '-'                           shift, and go to state 259
17443    '.'                           shift, and go to state 260
17444    '*'                           shift, and go to state 261
17445    '/'                           shift, and go to state 262
17446    '%'                           shift, and go to state 263
17447    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
17448    "** (T_POW)"                  shift, and go to state 265
17449
17450    $default  reduce using rule 310 (expr)
17451
17452
17453State 534
17454
17455  491 internal_functions_in_yacc: "eval (T_EVAL)" '(' expr ')' .
17456
17457    $default  reduce using rule 491 (internal_functions_in_yacc)
17458
17459
17460State 535
17461
17462  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
17463  324     | expr . "&& (T_BOOLEAN_AND)" expr
17464  325     | expr . "or (T_LOGICAL_OR)" expr
17465  326     | expr . "and (T_LOGICAL_AND)" expr
17466  327     | expr . "xor (T_LOGICAL_XOR)" expr
17467  328     | expr . '|' expr
17468  329     | expr . '&' expr
17469  330     | expr . '^' expr
17470  331     | expr . '.' expr
17471  332     | expr . '+' expr
17472  333     | expr . '-' expr
17473  334     | expr . '*' expr
17474  335     | expr . "** (T_POW)" expr
17475  336     | expr . '/' expr
17476  337     | expr . '%' expr
17477  338     | expr . "<< (T_SL)" expr
17478  339     | expr . ">> (T_SR)" expr
17479  344     | expr . "=== (T_IS_IDENTICAL)" expr
17480  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
17481  346     | expr . "== (T_IS_EQUAL)" expr
17482  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
17483  348     | expr . '<' expr
17484  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
17485  350     | expr . '>' expr
17486  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
17487  352     | expr . "<=> (T_SPACESHIP)" expr
17488  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
17489  356     | expr . '?' expr ':' expr
17490  357     | expr . '?' ':' expr
17491  358     | expr . "?? (T_COALESCE)" expr
17492  374     | "yield (T_YIELD)" expr "=> (T_DOUBLE_ARROW)" expr .
17493
17494    '?'                           shift, and go to state 240
17495    "?? (T_COALESCE)"             shift, and go to state 241
17496    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
17497    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
17498    '|'                           shift, and go to state 244
17499    '^'                           shift, and go to state 245
17500    '&'                           shift, and go to state 246
17501    "== (T_IS_EQUAL)"             shift, and go to state 247
17502    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
17503    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
17504    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
17505    "<=> (T_SPACESHIP)"           shift, and go to state 251
17506    '<'                           shift, and go to state 252
17507    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
17508    '>'                           shift, and go to state 254
17509    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
17510    "<< (T_SL)"                   shift, and go to state 256
17511    ">> (T_SR)"                   shift, and go to state 257
17512    '+'                           shift, and go to state 258
17513    '-'                           shift, and go to state 259
17514    '.'                           shift, and go to state 260
17515    '*'                           shift, and go to state 261
17516    '/'                           shift, and go to state 262
17517    '%'                           shift, and go to state 263
17518    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
17519    "** (T_POW)"                  shift, and go to state 265
17520
17521    $default  reduce using rule 374 (expr)
17522
17523
17524State 536
17525
17526  405 dereferencable_scalar: '[' array_pair_list ']' .
17527
17528    $default  reduce using rule 405 (dereferencable_scalar)
17529
17530
17531State 537
17532
17533  430 dereferencable: '(' expr ')' .
17534  433 callable_expr: '(' expr ')' .
17535
17536    '('       reduce using rule 433 (callable_expr)
17537    $default  reduce using rule 430 (dereferencable)
17538
17539
17540State 538
17541
17542  302 expr: "list (T_LIST)" '(' array_pair_list . ')' '=' expr
17543  471 array_pair: "list (T_LIST)" '(' array_pair_list . ')'
17544
17545    ')'  shift, and go to state 624
17546
17547
17548State 539
17549
17550  468 array_pair: expr "=> (T_DOUBLE_ARROW)" '&' . variable
17551
17552    '['                                           shift, and go to state 129
17553    "static (T_STATIC)"                           shift, and go to state 130
17554    "identifier (T_STRING)"                       shift, and go to state 114
17555    "variable (T_VARIABLE)"                       shift, and go to state 35
17556    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
17557    "array (T_ARRAY)"                             shift, and go to state 65
17558    "namespace (T_NAMESPACE)"                     shift, and go to state 115
17559    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
17560    '('                                           shift, and go to state 131
17561    '$'                                           shift, and go to state 82
17562
17563    namespace_name         go to state 83
17564    name                   go to state 84
17565    function_call          go to state 100
17566    class_name             go to state 101
17567    dereferencable_scalar  go to state 132
17568    constant               go to state 133
17569    variable_class_name    go to state 105
17570    dereferencable         go to state 106
17571    callable_expr          go to state 107
17572    callable_variable      go to state 108
17573    variable               go to state 625
17574    simple_variable        go to state 110
17575    static_member          go to state 111
17576
17577
17578State 540
17579
17580  302 expr: "list (T_LIST)" . '(' array_pair_list ')' '=' expr
17581  470 array_pair: expr "=> (T_DOUBLE_ARROW)" "list (T_LIST)" . '(' array_pair_list ')'
17582
17583    '('  shift, and go to state 626
17584
17585
17586State 541
17587
17588  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
17589  324     | expr . "&& (T_BOOLEAN_AND)" expr
17590  325     | expr . "or (T_LOGICAL_OR)" expr
17591  326     | expr . "and (T_LOGICAL_AND)" expr
17592  327     | expr . "xor (T_LOGICAL_XOR)" expr
17593  328     | expr . '|' expr
17594  329     | expr . '&' expr
17595  330     | expr . '^' expr
17596  331     | expr . '.' expr
17597  332     | expr . '+' expr
17598  333     | expr . '-' expr
17599  334     | expr . '*' expr
17600  335     | expr . "** (T_POW)" expr
17601  336     | expr . '/' expr
17602  337     | expr . '%' expr
17603  338     | expr . "<< (T_SL)" expr
17604  339     | expr . ">> (T_SR)" expr
17605  344     | expr . "=== (T_IS_IDENTICAL)" expr
17606  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
17607  346     | expr . "== (T_IS_EQUAL)" expr
17608  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
17609  348     | expr . '<' expr
17610  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
17611  350     | expr . '>' expr
17612  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
17613  352     | expr . "<=> (T_SPACESHIP)" expr
17614  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
17615  356     | expr . '?' expr ':' expr
17616  357     | expr . '?' ':' expr
17617  358     | expr . "?? (T_COALESCE)" expr
17618  466 array_pair: expr "=> (T_DOUBLE_ARROW)" expr .
17619
17620    "or (T_LOGICAL_OR)"           shift, and go to state 237
17621    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
17622    "and (T_LOGICAL_AND)"         shift, and go to state 239
17623    '?'                           shift, and go to state 240
17624    "?? (T_COALESCE)"             shift, and go to state 241
17625    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
17626    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
17627    '|'                           shift, and go to state 244
17628    '^'                           shift, and go to state 245
17629    '&'                           shift, and go to state 246
17630    "== (T_IS_EQUAL)"             shift, and go to state 247
17631    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
17632    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
17633    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
17634    "<=> (T_SPACESHIP)"           shift, and go to state 251
17635    '<'                           shift, and go to state 252
17636    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
17637    '>'                           shift, and go to state 254
17638    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
17639    "<< (T_SL)"                   shift, and go to state 256
17640    ">> (T_SR)"                   shift, and go to state 257
17641    '+'                           shift, and go to state 258
17642    '-'                           shift, and go to state 259
17643    '.'                           shift, and go to state 260
17644    '*'                           shift, and go to state 261
17645    '/'                           shift, and go to state 262
17646    '%'                           shift, and go to state 263
17647    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
17648    "** (T_POW)"                  shift, and go to state 265
17649
17650    $default  reduce using rule 466 (array_pair)
17651
17652
17653State 542
17654
17655  303 expr: '[' array_pair_list ']' '=' . expr
17656
17657    "include (T_INCLUDE)"                         shift, and go to state 4
17658    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
17659    "eval (T_EVAL)"                               shift, and go to state 6
17660    "require (T_REQUIRE)"                         shift, and go to state 7
17661    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
17662    "print (T_PRINT)"                             shift, and go to state 9
17663    "yield (T_YIELD)"                             shift, and go to state 10
17664    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
17665    '+'                                           shift, and go to state 12
17666    '-'                                           shift, and go to state 13
17667    '!'                                           shift, and go to state 14
17668    '~'                                           shift, and go to state 15
17669    "++ (T_INC)"                                  shift, and go to state 16
17670    "-- (T_DEC)"                                  shift, and go to state 17
17671    "(int) (T_INT_CAST)"                          shift, and go to state 18
17672    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
17673    "(string) (T_STRING_CAST)"                    shift, and go to state 20
17674    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
17675    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
17676    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
17677    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
17678    '@'                                           shift, and go to state 25
17679    '['                                           shift, and go to state 26
17680    "new (T_NEW)"                                 shift, and go to state 27
17681    "clone (T_CLONE)"                             shift, and go to state 28
17682    "static (T_STATIC)"                           shift, and go to state 113
17683    "integer number (T_LNUMBER)"                  shift, and go to state 32
17684    "floating-point number (T_DNUMBER)"           shift, and go to state 33
17685    "identifier (T_STRING)"                       shift, and go to state 114
17686    "variable (T_VARIABLE)"                       shift, and go to state 35
17687    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
17688    "exit (T_EXIT)"                               shift, and go to state 38
17689    "function (T_FUNCTION)"                       shift, and go to state 50
17690    "isset (T_ISSET)"                             shift, and go to state 58
17691    "empty (T_EMPTY)"                             shift, and go to state 59
17692    "list (T_LIST)"                               shift, and go to state 64
17693    "array (T_ARRAY)"                             shift, and go to state 65
17694    "__LINE__ (T_LINE)"                           shift, and go to state 66
17695    "__FILE__ (T_FILE)"                           shift, and go to state 67
17696    "__DIR__ (T_DIR)"                             shift, and go to state 68
17697    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
17698    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
17699    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
17700    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
17701    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
17702    "namespace (T_NAMESPACE)"                     shift, and go to state 115
17703    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
17704    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
17705    '('                                           shift, and go to state 77
17706    '`'                                           shift, and go to state 80
17707    '"'                                           shift, and go to state 81
17708    '$'                                           shift, and go to state 82
17709
17710    namespace_name              go to state 83
17711    name                        go to state 84
17712    new_expr                    go to state 97
17713    expr                        go to state 627
17714    function                    go to state 117
17715    function_call               go to state 100
17716    class_name                  go to state 101
17717    dereferencable_scalar       go to state 102
17718    scalar                      go to state 103
17719    constant                    go to state 104
17720    variable_class_name         go to state 105
17721    dereferencable              go to state 106
17722    callable_expr               go to state 107
17723    callable_variable           go to state 108
17724    variable                    go to state 109
17725    simple_variable             go to state 110
17726    static_member               go to state 111
17727    internal_functions_in_yacc  go to state 112
17728
17729
17730State 543
17731
17732  464 non_empty_array_pair_list: non_empty_array_pair_list ',' possible_array_pair .
17733
17734    $default  reduce using rule 464 (non_empty_array_pair_list)
17735
17736
17737State 544
17738
17739  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments . extends_from implements_list backup_doc_comment '{' class_statement_list '}'
17740
17741    "extends (T_EXTENDS)"  shift, and go to state 583
17742
17743    $default  reduce using rule 182 (extends_from)
17744
17745    extends_from  go to state 628
17746
17747
17748State 545
17749
17750  453 new_variable: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable .
17751
17752    $default  reduce using rule 453 (new_variable)
17753
17754
17755State 546
17756
17757  450 new_variable: new_variable '[' optional_expr . ']'
17758
17759    ']'  shift, and go to state 629
17760
17761
17762State 547
17763
17764  452 new_variable: new_variable "-> (T_OBJECT_OPERATOR)" property_name .
17765
17766    $default  reduce using rule 452 (new_variable)
17767
17768
17769State 548
17770
17771  454 new_variable: new_variable ":: (T_PAAMAYIM_NEKUDOTAYIM)" simple_variable .
17772
17773    $default  reduce using rule 454 (new_variable)
17774
17775
17776State 549
17777
17778  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
17779  324     | expr . "&& (T_BOOLEAN_AND)" expr
17780  325     | expr . "or (T_LOGICAL_OR)" expr
17781  326     | expr . "and (T_LOGICAL_AND)" expr
17782  327     | expr . "xor (T_LOGICAL_XOR)" expr
17783  328     | expr . '|' expr
17784  329     | expr . '&' expr
17785  330     | expr . '^' expr
17786  331     | expr . '.' expr
17787  332     | expr . '+' expr
17788  333     | expr . '-' expr
17789  334     | expr . '*' expr
17790  335     | expr . "** (T_POW)" expr
17791  336     | expr . '/' expr
17792  337     | expr . '%' expr
17793  338     | expr . "<< (T_SL)" expr
17794  339     | expr . ">> (T_SR)" expr
17795  344     | expr . "=== (T_IS_IDENTICAL)" expr
17796  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
17797  346     | expr . "== (T_IS_EQUAL)" expr
17798  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
17799  348     | expr . '<' expr
17800  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
17801  350     | expr . '>' expr
17802  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
17803  352     | expr . "<=> (T_SPACESHIP)" expr
17804  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
17805  356     | expr . '?' expr ':' expr
17806  357     | expr . '?' ':' expr
17807  358     | expr . "?? (T_COALESCE)" expr
17808  451 new_variable: new_variable '{' expr . '}'
17809
17810    "or (T_LOGICAL_OR)"           shift, and go to state 237
17811    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
17812    "and (T_LOGICAL_AND)"         shift, and go to state 239
17813    '?'                           shift, and go to state 240
17814    "?? (T_COALESCE)"             shift, and go to state 241
17815    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
17816    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
17817    '|'                           shift, and go to state 244
17818    '^'                           shift, and go to state 245
17819    '&'                           shift, and go to state 246
17820    "== (T_IS_EQUAL)"             shift, and go to state 247
17821    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
17822    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
17823    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
17824    "<=> (T_SPACESHIP)"           shift, and go to state 251
17825    '<'                           shift, and go to state 252
17826    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
17827    '>'                           shift, and go to state 254
17828    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
17829    "<< (T_SL)"                   shift, and go to state 256
17830    ">> (T_SR)"                   shift, and go to state 257
17831    '+'                           shift, and go to state 258
17832    '-'                           shift, and go to state 259
17833    '.'                           shift, and go to state 260
17834    '*'                           shift, and go to state 261
17835    '/'                           shift, and go to state 262
17836    '%'                           shift, and go to state 263
17837    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
17838    "** (T_POW)"                  shift, and go to state 265
17839    '}'                           shift, and go to state 630
17840
17841
17842State 550
17843
17844  244 static_var: "variable (T_VARIABLE)" '=' expr .
17845  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
17846  324     | expr . "&& (T_BOOLEAN_AND)" expr
17847  325     | expr . "or (T_LOGICAL_OR)" expr
17848  326     | expr . "and (T_LOGICAL_AND)" expr
17849  327     | expr . "xor (T_LOGICAL_XOR)" expr
17850  328     | expr . '|' expr
17851  329     | expr . '&' expr
17852  330     | expr . '^' expr
17853  331     | expr . '.' expr
17854  332     | expr . '+' expr
17855  333     | expr . '-' expr
17856  334     | expr . '*' expr
17857  335     | expr . "** (T_POW)" expr
17858  336     | expr . '/' expr
17859  337     | expr . '%' expr
17860  338     | expr . "<< (T_SL)" expr
17861  339     | expr . ">> (T_SR)" expr
17862  344     | expr . "=== (T_IS_IDENTICAL)" expr
17863  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
17864  346     | expr . "== (T_IS_EQUAL)" expr
17865  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
17866  348     | expr . '<' expr
17867  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
17868  350     | expr . '>' expr
17869  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
17870  352     | expr . "<=> (T_SPACESHIP)" expr
17871  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
17872  356     | expr . '?' expr ':' expr
17873  357     | expr . '?' ':' expr
17874  358     | expr . "?? (T_COALESCE)" expr
17875
17876    "or (T_LOGICAL_OR)"           shift, and go to state 237
17877    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
17878    "and (T_LOGICAL_AND)"         shift, and go to state 239
17879    '?'                           shift, and go to state 240
17880    "?? (T_COALESCE)"             shift, and go to state 241
17881    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
17882    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
17883    '|'                           shift, and go to state 244
17884    '^'                           shift, and go to state 245
17885    '&'                           shift, and go to state 246
17886    "== (T_IS_EQUAL)"             shift, and go to state 247
17887    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
17888    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
17889    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
17890    "<=> (T_SPACESHIP)"           shift, and go to state 251
17891    '<'                           shift, and go to state 252
17892    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
17893    '>'                           shift, and go to state 254
17894    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
17895    "<< (T_SL)"                   shift, and go to state 256
17896    ">> (T_SR)"                   shift, and go to state 257
17897    '+'                           shift, and go to state 258
17898    '-'                           shift, and go to state 259
17899    '.'                           shift, and go to state 260
17900    '*'                           shift, and go to state 261
17901    '/'                           shift, and go to state 262
17902    '%'                           shift, and go to state 263
17903    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
17904    "** (T_POW)"                  shift, and go to state 265
17905
17906    $default  reduce using rule 244 (static_var)
17907
17908
17909State 551
17910
17911  241 static_var_list: static_var_list ',' static_var .
17912
17913    $default  reduce using rule 241 (static_var_list)
17914
17915
17916State 552
17917
17918  377 expr: "static (T_STATIC)" function returns_ref backup_doc_comment . '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
17919
17920    '('  shift, and go to state 631
17921
17922
17923State 553
17924
17925  398 exit_expr: '(' optional_expr ')' .
17926
17927    $default  reduce using rule 398 (exit_expr)
17928
17929
17930State 554
17931
17932  209 if_stmt_without_else: "if (T_IF)" '(' expr ')' . statement
17933  213 alt_if_stmt_without_else: "if (T_IF)" '(' expr ')' . ':' inner_statement_list
17934
17935    "include (T_INCLUDE)"                         shift, and go to state 4
17936    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
17937    "eval (T_EVAL)"                               shift, and go to state 6
17938    "require (T_REQUIRE)"                         shift, and go to state 7
17939    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
17940    "print (T_PRINT)"                             shift, and go to state 9
17941    "yield (T_YIELD)"                             shift, and go to state 10
17942    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
17943    ':'                                           shift, and go to state 632
17944    '+'                                           shift, and go to state 12
17945    '-'                                           shift, and go to state 13
17946    '!'                                           shift, and go to state 14
17947    '~'                                           shift, and go to state 15
17948    "++ (T_INC)"                                  shift, and go to state 16
17949    "-- (T_DEC)"                                  shift, and go to state 17
17950    "(int) (T_INT_CAST)"                          shift, and go to state 18
17951    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
17952    "(string) (T_STRING_CAST)"                    shift, and go to state 20
17953    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
17954    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
17955    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
17956    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
17957    '@'                                           shift, and go to state 25
17958    '['                                           shift, and go to state 26
17959    "new (T_NEW)"                                 shift, and go to state 27
17960    "clone (T_CLONE)"                             shift, and go to state 28
17961    "static (T_STATIC)"                           shift, and go to state 29
17962    "integer number (T_LNUMBER)"                  shift, and go to state 32
17963    "floating-point number (T_DNUMBER)"           shift, and go to state 33
17964    "identifier (T_STRING)"                       shift, and go to state 34
17965    "variable (T_VARIABLE)"                       shift, and go to state 35
17966    T_INLINE_HTML                                 shift, and go to state 36
17967    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
17968    "exit (T_EXIT)"                               shift, and go to state 38
17969    "if (T_IF)"                                   shift, and go to state 39
17970    "echo (T_ECHO)"                               shift, and go to state 40
17971    "do (T_DO)"                                   shift, and go to state 41
17972    "while (T_WHILE)"                             shift, and go to state 42
17973    "for (T_FOR)"                                 shift, and go to state 43
17974    "foreach (T_FOREACH)"                         shift, and go to state 44
17975    "declare (T_DECLARE)"                         shift, and go to state 45
17976    "switch (T_SWITCH)"                           shift, and go to state 46
17977    "break (T_BREAK)"                             shift, and go to state 47
17978    "continue (T_CONTINUE)"                       shift, and go to state 48
17979    "goto (T_GOTO)"                               shift, and go to state 49
17980    "function (T_FUNCTION)"                       shift, and go to state 50
17981    "return (T_RETURN)"                           shift, and go to state 52
17982    "try (T_TRY)"                                 shift, and go to state 53
17983    "throw (T_THROW)"                             shift, and go to state 54
17984    "global (T_GLOBAL)"                           shift, and go to state 56
17985    "unset (T_UNSET)"                             shift, and go to state 57
17986    "isset (T_ISSET)"                             shift, and go to state 58
17987    "empty (T_EMPTY)"                             shift, and go to state 59
17988    "list (T_LIST)"                               shift, and go to state 64
17989    "array (T_ARRAY)"                             shift, and go to state 65
17990    "__LINE__ (T_LINE)"                           shift, and go to state 66
17991    "__FILE__ (T_FILE)"                           shift, and go to state 67
17992    "__DIR__ (T_DIR)"                             shift, and go to state 68
17993    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
17994    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
17995    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
17996    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
17997    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
17998    "namespace (T_NAMESPACE)"                     shift, and go to state 115
17999    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
18000    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
18001    '('                                           shift, and go to state 77
18002    ';'                                           shift, and go to state 78
18003    '{'                                           shift, and go to state 79
18004    '`'                                           shift, and go to state 80
18005    '"'                                           shift, and go to state 81
18006    '$'                                           shift, and go to state 82
18007
18008    namespace_name              go to state 83
18009    name                        go to state 84
18010    statement                   go to state 633
18011    if_stmt_without_else        go to state 93
18012    if_stmt                     go to state 94
18013    alt_if_stmt_without_else    go to state 95
18014    alt_if_stmt                 go to state 96
18015    new_expr                    go to state 97
18016    expr                        go to state 98
18017    function                    go to state 117
18018    function_call               go to state 100
18019    class_name                  go to state 101
18020    dereferencable_scalar       go to state 102
18021    scalar                      go to state 103
18022    constant                    go to state 104
18023    variable_class_name         go to state 105
18024    dereferencable              go to state 106
18025    callable_expr               go to state 107
18026    callable_variable           go to state 108
18027    variable                    go to state 109
18028    simple_variable             go to state 110
18029    static_member               go to state 111
18030    internal_functions_in_yacc  go to state 112
18031
18032
18033State 555
18034
18035  290 echo_expr_list: echo_expr_list ',' echo_expr .
18036
18037    $default  reduce using rule 290 (echo_expr_list)
18038
18039
18040State 556
18041
18042  135 statement: "do (T_DO)" statement "while (T_WHILE)" '(' . expr ')' ';'
18043
18044    "include (T_INCLUDE)"                         shift, and go to state 4
18045    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
18046    "eval (T_EVAL)"                               shift, and go to state 6
18047    "require (T_REQUIRE)"                         shift, and go to state 7
18048    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
18049    "print (T_PRINT)"                             shift, and go to state 9
18050    "yield (T_YIELD)"                             shift, and go to state 10
18051    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
18052    '+'                                           shift, and go to state 12
18053    '-'                                           shift, and go to state 13
18054    '!'                                           shift, and go to state 14
18055    '~'                                           shift, and go to state 15
18056    "++ (T_INC)"                                  shift, and go to state 16
18057    "-- (T_DEC)"                                  shift, and go to state 17
18058    "(int) (T_INT_CAST)"                          shift, and go to state 18
18059    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
18060    "(string) (T_STRING_CAST)"                    shift, and go to state 20
18061    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
18062    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
18063    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
18064    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
18065    '@'                                           shift, and go to state 25
18066    '['                                           shift, and go to state 26
18067    "new (T_NEW)"                                 shift, and go to state 27
18068    "clone (T_CLONE)"                             shift, and go to state 28
18069    "static (T_STATIC)"                           shift, and go to state 113
18070    "integer number (T_LNUMBER)"                  shift, and go to state 32
18071    "floating-point number (T_DNUMBER)"           shift, and go to state 33
18072    "identifier (T_STRING)"                       shift, and go to state 114
18073    "variable (T_VARIABLE)"                       shift, and go to state 35
18074    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
18075    "exit (T_EXIT)"                               shift, and go to state 38
18076    "function (T_FUNCTION)"                       shift, and go to state 50
18077    "isset (T_ISSET)"                             shift, and go to state 58
18078    "empty (T_EMPTY)"                             shift, and go to state 59
18079    "list (T_LIST)"                               shift, and go to state 64
18080    "array (T_ARRAY)"                             shift, and go to state 65
18081    "__LINE__ (T_LINE)"                           shift, and go to state 66
18082    "__FILE__ (T_FILE)"                           shift, and go to state 67
18083    "__DIR__ (T_DIR)"                             shift, and go to state 68
18084    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
18085    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
18086    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
18087    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
18088    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
18089    "namespace (T_NAMESPACE)"                     shift, and go to state 115
18090    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
18091    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
18092    '('                                           shift, and go to state 77
18093    '`'                                           shift, and go to state 80
18094    '"'                                           shift, and go to state 81
18095    '$'                                           shift, and go to state 82
18096
18097    namespace_name              go to state 83
18098    name                        go to state 84
18099    new_expr                    go to state 97
18100    expr                        go to state 634
18101    function                    go to state 117
18102    function_call               go to state 100
18103    class_name                  go to state 101
18104    dereferencable_scalar       go to state 102
18105    scalar                      go to state 103
18106    constant                    go to state 104
18107    variable_class_name         go to state 105
18108    dereferencable              go to state 106
18109    callable_expr               go to state 107
18110    callable_variable           go to state 108
18111    variable                    go to state 109
18112    simple_variable             go to state 110
18113    static_member               go to state 111
18114    internal_functions_in_yacc  go to state 112
18115
18116
18117State 557
18118
18119  134 statement: "while (T_WHILE)" '(' expr ')' . while_statement
18120
18121    "include (T_INCLUDE)"                         shift, and go to state 4
18122    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
18123    "eval (T_EVAL)"                               shift, and go to state 6
18124    "require (T_REQUIRE)"                         shift, and go to state 7
18125    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
18126    "print (T_PRINT)"                             shift, and go to state 9
18127    "yield (T_YIELD)"                             shift, and go to state 10
18128    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
18129    ':'                                           shift, and go to state 635
18130    '+'                                           shift, and go to state 12
18131    '-'                                           shift, and go to state 13
18132    '!'                                           shift, and go to state 14
18133    '~'                                           shift, and go to state 15
18134    "++ (T_INC)"                                  shift, and go to state 16
18135    "-- (T_DEC)"                                  shift, and go to state 17
18136    "(int) (T_INT_CAST)"                          shift, and go to state 18
18137    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
18138    "(string) (T_STRING_CAST)"                    shift, and go to state 20
18139    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
18140    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
18141    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
18142    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
18143    '@'                                           shift, and go to state 25
18144    '['                                           shift, and go to state 26
18145    "new (T_NEW)"                                 shift, and go to state 27
18146    "clone (T_CLONE)"                             shift, and go to state 28
18147    "static (T_STATIC)"                           shift, and go to state 29
18148    "integer number (T_LNUMBER)"                  shift, and go to state 32
18149    "floating-point number (T_DNUMBER)"           shift, and go to state 33
18150    "identifier (T_STRING)"                       shift, and go to state 34
18151    "variable (T_VARIABLE)"                       shift, and go to state 35
18152    T_INLINE_HTML                                 shift, and go to state 36
18153    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
18154    "exit (T_EXIT)"                               shift, and go to state 38
18155    "if (T_IF)"                                   shift, and go to state 39
18156    "echo (T_ECHO)"                               shift, and go to state 40
18157    "do (T_DO)"                                   shift, and go to state 41
18158    "while (T_WHILE)"                             shift, and go to state 42
18159    "for (T_FOR)"                                 shift, and go to state 43
18160    "foreach (T_FOREACH)"                         shift, and go to state 44
18161    "declare (T_DECLARE)"                         shift, and go to state 45
18162    "switch (T_SWITCH)"                           shift, and go to state 46
18163    "break (T_BREAK)"                             shift, and go to state 47
18164    "continue (T_CONTINUE)"                       shift, and go to state 48
18165    "goto (T_GOTO)"                               shift, and go to state 49
18166    "function (T_FUNCTION)"                       shift, and go to state 50
18167    "return (T_RETURN)"                           shift, and go to state 52
18168    "try (T_TRY)"                                 shift, and go to state 53
18169    "throw (T_THROW)"                             shift, and go to state 54
18170    "global (T_GLOBAL)"                           shift, and go to state 56
18171    "unset (T_UNSET)"                             shift, and go to state 57
18172    "isset (T_ISSET)"                             shift, and go to state 58
18173    "empty (T_EMPTY)"                             shift, and go to state 59
18174    "list (T_LIST)"                               shift, and go to state 64
18175    "array (T_ARRAY)"                             shift, and go to state 65
18176    "__LINE__ (T_LINE)"                           shift, and go to state 66
18177    "__FILE__ (T_FILE)"                           shift, and go to state 67
18178    "__DIR__ (T_DIR)"                             shift, and go to state 68
18179    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
18180    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
18181    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
18182    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
18183    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
18184    "namespace (T_NAMESPACE)"                     shift, and go to state 115
18185    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
18186    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
18187    '('                                           shift, and go to state 77
18188    ';'                                           shift, and go to state 78
18189    '{'                                           shift, and go to state 79
18190    '`'                                           shift, and go to state 80
18191    '"'                                           shift, and go to state 81
18192    '$'                                           shift, and go to state 82
18193
18194    namespace_name              go to state 83
18195    name                        go to state 84
18196    statement                   go to state 636
18197    while_statement             go to state 637
18198    if_stmt_without_else        go to state 93
18199    if_stmt                     go to state 94
18200    alt_if_stmt_without_else    go to state 95
18201    alt_if_stmt                 go to state 96
18202    new_expr                    go to state 97
18203    expr                        go to state 98
18204    function                    go to state 117
18205    function_call               go to state 100
18206    class_name                  go to state 101
18207    dereferencable_scalar       go to state 102
18208    scalar                      go to state 103
18209    constant                    go to state 104
18210    variable_class_name         go to state 105
18211    dereferencable              go to state 106
18212    callable_expr               go to state 107
18213    callable_variable           go to state 108
18214    variable                    go to state 109
18215    simple_variable             go to state 110
18216    static_member               go to state 111
18217    internal_functions_in_yacc  go to state 112
18218
18219
18220State 558
18221
18222  136 statement: "for (T_FOR)" '(' for_exprs ';' . for_exprs ';' for_exprs ')' for_statement
18223
18224    "include (T_INCLUDE)"                         shift, and go to state 4
18225    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
18226    "eval (T_EVAL)"                               shift, and go to state 6
18227    "require (T_REQUIRE)"                         shift, and go to state 7
18228    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
18229    "print (T_PRINT)"                             shift, and go to state 9
18230    "yield (T_YIELD)"                             shift, and go to state 10
18231    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
18232    '+'                                           shift, and go to state 12
18233    '-'                                           shift, and go to state 13
18234    '!'                                           shift, and go to state 14
18235    '~'                                           shift, and go to state 15
18236    "++ (T_INC)"                                  shift, and go to state 16
18237    "-- (T_DEC)"                                  shift, and go to state 17
18238    "(int) (T_INT_CAST)"                          shift, and go to state 18
18239    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
18240    "(string) (T_STRING_CAST)"                    shift, and go to state 20
18241    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
18242    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
18243    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
18244    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
18245    '@'                                           shift, and go to state 25
18246    '['                                           shift, and go to state 26
18247    "new (T_NEW)"                                 shift, and go to state 27
18248    "clone (T_CLONE)"                             shift, and go to state 28
18249    "static (T_STATIC)"                           shift, and go to state 113
18250    "integer number (T_LNUMBER)"                  shift, and go to state 32
18251    "floating-point number (T_DNUMBER)"           shift, and go to state 33
18252    "identifier (T_STRING)"                       shift, and go to state 114
18253    "variable (T_VARIABLE)"                       shift, and go to state 35
18254    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
18255    "exit (T_EXIT)"                               shift, and go to state 38
18256    "function (T_FUNCTION)"                       shift, and go to state 50
18257    "isset (T_ISSET)"                             shift, and go to state 58
18258    "empty (T_EMPTY)"                             shift, and go to state 59
18259    "list (T_LIST)"                               shift, and go to state 64
18260    "array (T_ARRAY)"                             shift, and go to state 65
18261    "__LINE__ (T_LINE)"                           shift, and go to state 66
18262    "__FILE__ (T_FILE)"                           shift, and go to state 67
18263    "__DIR__ (T_DIR)"                             shift, and go to state 68
18264    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
18265    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
18266    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
18267    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
18268    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
18269    "namespace (T_NAMESPACE)"                     shift, and go to state 115
18270    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
18271    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
18272    '('                                           shift, and go to state 77
18273    '`'                                           shift, and go to state 80
18274    '"'                                           shift, and go to state 81
18275    '$'                                           shift, and go to state 82
18276
18277    $default  reduce using rule 293 (for_exprs)
18278
18279    namespace_name              go to state 83
18280    name                        go to state 84
18281    for_exprs                   go to state 638
18282    non_empty_for_exprs         go to state 320
18283    new_expr                    go to state 97
18284    expr                        go to state 321
18285    function                    go to state 117
18286    function_call               go to state 100
18287    class_name                  go to state 101
18288    dereferencable_scalar       go to state 102
18289    scalar                      go to state 103
18290    constant                    go to state 104
18291    variable_class_name         go to state 105
18292    dereferencable              go to state 106
18293    callable_expr               go to state 107
18294    callable_variable           go to state 108
18295    variable                    go to state 109
18296    simple_variable             go to state 110
18297    static_member               go to state 111
18298    internal_functions_in_yacc  go to state 112
18299
18300
18301State 559
18302
18303  295 non_empty_for_exprs: non_empty_for_exprs ',' . expr
18304
18305    "include (T_INCLUDE)"                         shift, and go to state 4
18306    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
18307    "eval (T_EVAL)"                               shift, and go to state 6
18308    "require (T_REQUIRE)"                         shift, and go to state 7
18309    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
18310    "print (T_PRINT)"                             shift, and go to state 9
18311    "yield (T_YIELD)"                             shift, and go to state 10
18312    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
18313    '+'                                           shift, and go to state 12
18314    '-'                                           shift, and go to state 13
18315    '!'                                           shift, and go to state 14
18316    '~'                                           shift, and go to state 15
18317    "++ (T_INC)"                                  shift, and go to state 16
18318    "-- (T_DEC)"                                  shift, and go to state 17
18319    "(int) (T_INT_CAST)"                          shift, and go to state 18
18320    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
18321    "(string) (T_STRING_CAST)"                    shift, and go to state 20
18322    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
18323    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
18324    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
18325    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
18326    '@'                                           shift, and go to state 25
18327    '['                                           shift, and go to state 26
18328    "new (T_NEW)"                                 shift, and go to state 27
18329    "clone (T_CLONE)"                             shift, and go to state 28
18330    "static (T_STATIC)"                           shift, and go to state 113
18331    "integer number (T_LNUMBER)"                  shift, and go to state 32
18332    "floating-point number (T_DNUMBER)"           shift, and go to state 33
18333    "identifier (T_STRING)"                       shift, and go to state 114
18334    "variable (T_VARIABLE)"                       shift, and go to state 35
18335    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
18336    "exit (T_EXIT)"                               shift, and go to state 38
18337    "function (T_FUNCTION)"                       shift, and go to state 50
18338    "isset (T_ISSET)"                             shift, and go to state 58
18339    "empty (T_EMPTY)"                             shift, and go to state 59
18340    "list (T_LIST)"                               shift, and go to state 64
18341    "array (T_ARRAY)"                             shift, and go to state 65
18342    "__LINE__ (T_LINE)"                           shift, and go to state 66
18343    "__FILE__ (T_FILE)"                           shift, and go to state 67
18344    "__DIR__ (T_DIR)"                             shift, and go to state 68
18345    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
18346    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
18347    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
18348    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
18349    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
18350    "namespace (T_NAMESPACE)"                     shift, and go to state 115
18351    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
18352    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
18353    '('                                           shift, and go to state 77
18354    '`'                                           shift, and go to state 80
18355    '"'                                           shift, and go to state 81
18356    '$'                                           shift, and go to state 82
18357
18358    namespace_name              go to state 83
18359    name                        go to state 84
18360    new_expr                    go to state 97
18361    expr                        go to state 639
18362    function                    go to state 117
18363    function_call               go to state 100
18364    class_name                  go to state 101
18365    dereferencable_scalar       go to state 102
18366    scalar                      go to state 103
18367    constant                    go to state 104
18368    variable_class_name         go to state 105
18369    dereferencable              go to state 106
18370    callable_expr               go to state 107
18371    callable_variable           go to state 108
18372    variable                    go to state 109
18373    simple_variable             go to state 110
18374    static_member               go to state 111
18375    internal_functions_in_yacc  go to state 112
18376
18377
18378State 560
18379
18380  147 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" . foreach_variable ')' foreach_statement
18381  148          | "foreach (T_FOREACH)" '(' expr "as (T_AS)" . foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable ')' foreach_statement
18382
18383    '&'                                           shift, and go to state 640
18384    '['                                           shift, and go to state 641
18385    "static (T_STATIC)"                           shift, and go to state 130
18386    "identifier (T_STRING)"                       shift, and go to state 114
18387    "variable (T_VARIABLE)"                       shift, and go to state 35
18388    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
18389    "list (T_LIST)"                               shift, and go to state 642
18390    "array (T_ARRAY)"                             shift, and go to state 65
18391    "namespace (T_NAMESPACE)"                     shift, and go to state 115
18392    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
18393    '('                                           shift, and go to state 131
18394    '$'                                           shift, and go to state 82
18395
18396    namespace_name         go to state 83
18397    name                   go to state 84
18398    foreach_variable       go to state 643
18399    function_call          go to state 100
18400    class_name             go to state 101
18401    dereferencable_scalar  go to state 132
18402    constant               go to state 133
18403    variable_class_name    go to state 105
18404    dereferencable         go to state 106
18405    callable_expr          go to state 107
18406    callable_variable      go to state 108
18407    variable               go to state 644
18408    simple_variable        go to state 110
18409    static_member          go to state 111
18410
18411
18412State 561
18413
18414  150 statement: "declare (T_DECLARE)" '(' const_list ')' . $@3 declare_statement
18415
18416    $default  reduce using rule 149 ($@3)
18417
18418    $@3  go to state 645
18419
18420
18421State 562
18422
18423  137 statement: "switch (T_SWITCH)" '(' expr ')' . switch_case_list
18424
18425    ':'  shift, and go to state 646
18426    '{'  shift, and go to state 647
18427
18428    switch_case_list  go to state 648
18429
18430
18431State 563
18432
18433  289 const_decl: "identifier (T_STRING)" '=' expr . backup_doc_comment
18434  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
18435  324     | expr . "&& (T_BOOLEAN_AND)" expr
18436  325     | expr . "or (T_LOGICAL_OR)" expr
18437  326     | expr . "and (T_LOGICAL_AND)" expr
18438  327     | expr . "xor (T_LOGICAL_XOR)" expr
18439  328     | expr . '|' expr
18440  329     | expr . '&' expr
18441  330     | expr . '^' expr
18442  331     | expr . '.' expr
18443  332     | expr . '+' expr
18444  333     | expr . '-' expr
18445  334     | expr . '*' expr
18446  335     | expr . "** (T_POW)" expr
18447  336     | expr . '/' expr
18448  337     | expr . '%' expr
18449  338     | expr . "<< (T_SL)" expr
18450  339     | expr . ">> (T_SR)" expr
18451  344     | expr . "=== (T_IS_IDENTICAL)" expr
18452  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
18453  346     | expr . "== (T_IS_EQUAL)" expr
18454  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
18455  348     | expr . '<' expr
18456  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
18457  350     | expr . '>' expr
18458  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
18459  352     | expr . "<=> (T_SPACESHIP)" expr
18460  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
18461  356     | expr . '?' expr ':' expr
18462  357     | expr . '?' ':' expr
18463  358     | expr . "?? (T_COALESCE)" expr
18464
18465    "or (T_LOGICAL_OR)"           shift, and go to state 237
18466    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
18467    "and (T_LOGICAL_AND)"         shift, and go to state 239
18468    '?'                           shift, and go to state 240
18469    "?? (T_COALESCE)"             shift, and go to state 241
18470    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
18471    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
18472    '|'                           shift, and go to state 244
18473    '^'                           shift, and go to state 245
18474    '&'                           shift, and go to state 246
18475    "== (T_IS_EQUAL)"             shift, and go to state 247
18476    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
18477    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
18478    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
18479    "<=> (T_SPACESHIP)"           shift, and go to state 251
18480    '<'                           shift, and go to state 252
18481    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
18482    '>'                           shift, and go to state 254
18483    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
18484    "<< (T_SL)"                   shift, and go to state 256
18485    ">> (T_SR)"                   shift, and go to state 257
18486    '+'                           shift, and go to state 258
18487    '-'                           shift, and go to state 259
18488    '.'                           shift, and go to state 260
18489    '*'                           shift, and go to state 261
18490    '/'                           shift, and go to state 262
18491    '%'                           shift, and go to state 263
18492    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
18493    "** (T_POW)"                  shift, and go to state 265
18494
18495    $default  reduce using rule 379 (backup_doc_comment)
18496
18497    backup_doc_comment  go to state 649
18498
18499
18500State 564
18501
18502  121 const_list: const_list ',' const_decl .
18503
18504    $default  reduce using rule 121 (const_list)
18505
18506
18507State 565
18508
18509  152 statement: "try (T_TRY)" '{' inner_statement_list '}' . catch_list finally_statement
18510
18511    $default  reduce using rule 156 (catch_list)
18512
18513    catch_list  go to state 650
18514
18515
18516State 566
18517
18518   81 namespace_name: namespace_name "\\ (T_NS_SEPARATOR)" . "identifier (T_STRING)"
18519  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" . '{' inline_use_declarations possible_comma '}'
18520
18521    "identifier (T_STRING)"  shift, and go to state 386
18522    '{'                      shift, and go to state 651
18523
18524
18525State 567
18526
18527  118 unprefixed_use_declaration: namespace_name "as (T_AS)" "identifier (T_STRING)" .
18528
18529    $default  reduce using rule 118 (unprefixed_use_declaration)
18530
18531
18532State 568
18533
18534  105 mixed_group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' . inline_use_declarations possible_comma '}'
18535
18536    "identifier (T_STRING)"  shift, and go to state 114
18537    "function (T_FUNCTION)"  shift, and go to state 186
18538    "const (T_CONST)"        shift, and go to state 187
18539
18540    namespace_name              go to state 574
18541    use_type                    go to state 652
18542    inline_use_declarations     go to state 653
18543    inline_use_declaration      go to state 654
18544    unprefixed_use_declaration  go to state 655
18545
18546
18547State 569
18548
18549   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
18550  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name . "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}'
18551  117 unprefixed_use_declaration: namespace_name .
18552  118                           | namespace_name . "as (T_AS)" "identifier (T_STRING)"
18553
18554    "as (T_AS)"            shift, and go to state 336
18555    "\\ (T_NS_SEPARATOR)"  shift, and go to state 656
18556
18557    $default  reduce using rule 117 (unprefixed_use_declaration)
18558
18559
18560State 570
18561
18562   81 namespace_name: namespace_name "\\ (T_NS_SEPARATOR)" . "identifier (T_STRING)"
18563  103 group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" . '{' unprefixed_use_declarations possible_comma '}'
18564
18565    "identifier (T_STRING)"  shift, and go to state 386
18566    '{'                      shift, and go to state 657
18567
18568
18569State 571
18570
18571   97 top_statement: "use (T_USE)" use_type group_use_declaration ';' .
18572
18573    $default  reduce using rule 97 (top_statement)
18574
18575
18576State 572
18577
18578   99 top_statement: "use (T_USE)" use_type use_declarations ';' .
18579
18580    $default  reduce using rule 99 (top_statement)
18581
18582
18583State 573
18584
18585  120 use_declaration: "\\ (T_NS_SEPARATOR)" . unprefixed_use_declaration
18586
18587    "identifier (T_STRING)"  shift, and go to state 114
18588
18589    namespace_name              go to state 574
18590    unprefixed_use_declaration  go to state 335
18591
18592
18593State 574
18594
18595   81 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)"
18596  117 unprefixed_use_declaration: namespace_name .
18597  118                           | namespace_name . "as (T_AS)" "identifier (T_STRING)"
18598
18599    "as (T_AS)"            shift, and go to state 336
18600    "\\ (T_NS_SEPARATOR)"  shift, and go to state 227
18601
18602    $default  reduce using rule 117 (unprefixed_use_declaration)
18603
18604
18605State 575
18606
18607  113 use_declarations: use_declarations ',' use_declaration .
18608
18609    $default  reduce using rule 113 (use_declarations)
18610
18611
18612State 576
18613
18614  238 global_var_list: global_var_list ',' global_var .
18615
18616    $default  reduce using rule 238 (global_var_list)
18617
18618
18619State 577
18620
18621  108 possible_comma: ',' .
18622  163 unset_variables: unset_variables ',' . unset_variable
18623
18624    '['                                           shift, and go to state 129
18625    "static (T_STATIC)"                           shift, and go to state 130
18626    "identifier (T_STRING)"                       shift, and go to state 114
18627    "variable (T_VARIABLE)"                       shift, and go to state 35
18628    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
18629    "array (T_ARRAY)"                             shift, and go to state 65
18630    "namespace (T_NAMESPACE)"                     shift, and go to state 115
18631    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
18632    '('                                           shift, and go to state 131
18633    '$'                                           shift, and go to state 82
18634
18635    $default  reduce using rule 108 (possible_comma)
18636
18637    namespace_name         go to state 83
18638    name                   go to state 84
18639    unset_variable         go to state 658
18640    function_call          go to state 100
18641    class_name             go to state 101
18642    dereferencable_scalar  go to state 132
18643    constant               go to state 133
18644    variable_class_name    go to state 105
18645    dereferencable         go to state 106
18646    callable_expr          go to state 107
18647    callable_variable      go to state 108
18648    variable               go to state 349
18649    simple_variable        go to state 110
18650    static_member          go to state 111
18651
18652
18653State 578
18654
18655  146 statement: "unset (T_UNSET)" '(' unset_variables possible_comma . ')' ';'
18656
18657    ')'  shift, and go to state 659
18658
18659
18660State 579
18661
18662  108 possible_comma: ',' .
18663  495 isset_variables: isset_variables ',' . isset_variable
18664
18665    "include (T_INCLUDE)"                         shift, and go to state 4
18666    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
18667    "eval (T_EVAL)"                               shift, and go to state 6
18668    "require (T_REQUIRE)"                         shift, and go to state 7
18669    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
18670    "print (T_PRINT)"                             shift, and go to state 9
18671    "yield (T_YIELD)"                             shift, and go to state 10
18672    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
18673    '+'                                           shift, and go to state 12
18674    '-'                                           shift, and go to state 13
18675    '!'                                           shift, and go to state 14
18676    '~'                                           shift, and go to state 15
18677    "++ (T_INC)"                                  shift, and go to state 16
18678    "-- (T_DEC)"                                  shift, and go to state 17
18679    "(int) (T_INT_CAST)"                          shift, and go to state 18
18680    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
18681    "(string) (T_STRING_CAST)"                    shift, and go to state 20
18682    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
18683    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
18684    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
18685    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
18686    '@'                                           shift, and go to state 25
18687    '['                                           shift, and go to state 26
18688    "new (T_NEW)"                                 shift, and go to state 27
18689    "clone (T_CLONE)"                             shift, and go to state 28
18690    "static (T_STATIC)"                           shift, and go to state 113
18691    "integer number (T_LNUMBER)"                  shift, and go to state 32
18692    "floating-point number (T_DNUMBER)"           shift, and go to state 33
18693    "identifier (T_STRING)"                       shift, and go to state 114
18694    "variable (T_VARIABLE)"                       shift, and go to state 35
18695    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
18696    "exit (T_EXIT)"                               shift, and go to state 38
18697    "function (T_FUNCTION)"                       shift, and go to state 50
18698    "isset (T_ISSET)"                             shift, and go to state 58
18699    "empty (T_EMPTY)"                             shift, and go to state 59
18700    "list (T_LIST)"                               shift, and go to state 64
18701    "array (T_ARRAY)"                             shift, and go to state 65
18702    "__LINE__ (T_LINE)"                           shift, and go to state 66
18703    "__FILE__ (T_FILE)"                           shift, and go to state 67
18704    "__DIR__ (T_DIR)"                             shift, and go to state 68
18705    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
18706    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
18707    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
18708    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
18709    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
18710    "namespace (T_NAMESPACE)"                     shift, and go to state 115
18711    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
18712    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
18713    '('                                           shift, and go to state 77
18714    '`'                                           shift, and go to state 80
18715    '"'                                           shift, and go to state 81
18716    '$'                                           shift, and go to state 82
18717
18718    $default  reduce using rule 108 (possible_comma)
18719
18720    namespace_name              go to state 83
18721    name                        go to state 84
18722    new_expr                    go to state 97
18723    expr                        go to state 350
18724    function                    go to state 117
18725    function_call               go to state 100
18726    class_name                  go to state 101
18727    dereferencable_scalar       go to state 102
18728    scalar                      go to state 103
18729    constant                    go to state 104
18730    variable_class_name         go to state 105
18731    dereferencable              go to state 106
18732    callable_expr               go to state 107
18733    callable_variable           go to state 108
18734    variable                    go to state 109
18735    simple_variable             go to state 110
18736    static_member               go to state 111
18737    internal_functions_in_yacc  go to state 112
18738    isset_variable              go to state 660
18739
18740
18741State 580
18742
18743  487 internal_functions_in_yacc: "isset (T_ISSET)" '(' isset_variables possible_comma . ')'
18744
18745    ')'  shift, and go to state 661
18746
18747
18748State 581
18749
18750  488 internal_functions_in_yacc: "empty (T_EMPTY)" '(' expr ')' .
18751
18752    $default  reduce using rule 488 (internal_functions_in_yacc)
18753
18754
18755State 582
18756
18757   90 top_statement: "__halt_compiler (T_HALT_COMPILER)" '(' ')' ';' .
18758
18759    $default  reduce using rule 90 (top_statement)
18760
18761
18762State 583
18763
18764  183 extends_from: "extends (T_EXTENDS)" . name
18765
18766    "identifier (T_STRING)"    shift, and go to state 114
18767    "namespace (T_NAMESPACE)"  shift, and go to state 115
18768    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
18769
18770    namespace_name  go to state 83
18771    name            go to state 662
18772
18773
18774State 584
18775
18776  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" extends_from . implements_list backup_doc_comment '{' class_statement_list '}'
18777
18778    "implements (T_IMPLEMENTS)"  shift, and go to state 663
18779
18780    $default  reduce using rule 186 (implements_list)
18781
18782    implements_list  go to state 664
18783
18784
18785State 585
18786
18787  179 trait_declaration_statement: "trait (T_TRAIT)" @6 "identifier (T_STRING)" backup_doc_comment . '{' class_statement_list '}'
18788
18789    '{'  shift, and go to state 665
18790
18791
18792State 586
18793
18794  185 interface_extends_list: "extends (T_EXTENDS)" . name_list
18795
18796    "identifier (T_STRING)"    shift, and go to state 114
18797    "namespace (T_NAMESPACE)"  shift, and go to state 115
18798    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
18799
18800    namespace_name  go to state 83
18801    name            go to state 666
18802    name_list       go to state 667
18803
18804
18805State 587
18806
18807  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 "identifier (T_STRING)" interface_extends_list . backup_doc_comment '{' class_statement_list '}'
18808
18809    $default  reduce using rule 379 (backup_doc_comment)
18810
18811    backup_doc_comment  go to state 668
18812
18813
18814State 588
18815
18816  302 expr: "list (T_LIST)" '(' array_pair_list ')' . '=' expr
18817
18818    '='  shift, and go to state 669
18819
18820
18821State 589
18822
18823  404 dereferencable_scalar: "array (T_ARRAY)" '(' array_pair_list ')' .
18824
18825    $default  reduce using rule 404 (dereferencable_scalar)
18826
18827
18828State 590
18829
18830  485 encaps_var_offset: '-' . "number (T_NUM_STRING)"
18831
18832    "number (T_NUM_STRING)"  shift, and go to state 670
18833
18834
18835State 591
18836
18837  483 encaps_var_offset: "identifier (T_STRING)" .
18838
18839    $default  reduce using rule 483 (encaps_var_offset)
18840
18841
18842State 592
18843
18844  486 encaps_var_offset: "variable (T_VARIABLE)" .
18845
18846    $default  reduce using rule 486 (encaps_var_offset)
18847
18848
18849State 593
18850
18851  484 encaps_var_offset: "number (T_NUM_STRING)" .
18852
18853    $default  reduce using rule 484 (encaps_var_offset)
18854
18855
18856State 594
18857
18858  477 encaps_var: "variable (T_VARIABLE)" '[' encaps_var_offset . ']'
18859
18860    ']'  shift, and go to state 671
18861
18862
18863State 595
18864
18865  478 encaps_var: "variable (T_VARIABLE)" "-> (T_OBJECT_OPERATOR)" "identifier (T_STRING)" .
18866
18867    $default  reduce using rule 478 (encaps_var)
18868
18869
18870State 596
18871
18872  481 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' . expr ']' '}'
18873
18874    "include (T_INCLUDE)"                         shift, and go to state 4
18875    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
18876    "eval (T_EVAL)"                               shift, and go to state 6
18877    "require (T_REQUIRE)"                         shift, and go to state 7
18878    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
18879    "print (T_PRINT)"                             shift, and go to state 9
18880    "yield (T_YIELD)"                             shift, and go to state 10
18881    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
18882    '+'                                           shift, and go to state 12
18883    '-'                                           shift, and go to state 13
18884    '!'                                           shift, and go to state 14
18885    '~'                                           shift, and go to state 15
18886    "++ (T_INC)"                                  shift, and go to state 16
18887    "-- (T_DEC)"                                  shift, and go to state 17
18888    "(int) (T_INT_CAST)"                          shift, and go to state 18
18889    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
18890    "(string) (T_STRING_CAST)"                    shift, and go to state 20
18891    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
18892    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
18893    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
18894    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
18895    '@'                                           shift, and go to state 25
18896    '['                                           shift, and go to state 26
18897    "new (T_NEW)"                                 shift, and go to state 27
18898    "clone (T_CLONE)"                             shift, and go to state 28
18899    "static (T_STATIC)"                           shift, and go to state 113
18900    "integer number (T_LNUMBER)"                  shift, and go to state 32
18901    "floating-point number (T_DNUMBER)"           shift, and go to state 33
18902    "identifier (T_STRING)"                       shift, and go to state 114
18903    "variable (T_VARIABLE)"                       shift, and go to state 35
18904    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
18905    "exit (T_EXIT)"                               shift, and go to state 38
18906    "function (T_FUNCTION)"                       shift, and go to state 50
18907    "isset (T_ISSET)"                             shift, and go to state 58
18908    "empty (T_EMPTY)"                             shift, and go to state 59
18909    "list (T_LIST)"                               shift, and go to state 64
18910    "array (T_ARRAY)"                             shift, and go to state 65
18911    "__LINE__ (T_LINE)"                           shift, and go to state 66
18912    "__FILE__ (T_FILE)"                           shift, and go to state 67
18913    "__DIR__ (T_DIR)"                             shift, and go to state 68
18914    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
18915    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
18916    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
18917    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
18918    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
18919    "namespace (T_NAMESPACE)"                     shift, and go to state 115
18920    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
18921    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
18922    '('                                           shift, and go to state 77
18923    '`'                                           shift, and go to state 80
18924    '"'                                           shift, and go to state 81
18925    '$'                                           shift, and go to state 82
18926
18927    namespace_name              go to state 83
18928    name                        go to state 84
18929    new_expr                    go to state 97
18930    expr                        go to state 672
18931    function                    go to state 117
18932    function_call               go to state 100
18933    class_name                  go to state 101
18934    dereferencable_scalar       go to state 102
18935    scalar                      go to state 103
18936    constant                    go to state 104
18937    variable_class_name         go to state 105
18938    dereferencable              go to state 106
18939    callable_expr               go to state 107
18940    callable_variable           go to state 108
18941    variable                    go to state 109
18942    simple_variable             go to state 110
18943    static_member               go to state 111
18944    internal_functions_in_yacc  go to state 112
18945
18946
18947State 597
18948
18949  480 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '}' .
18950
18951    $default  reduce using rule 480 (encaps_var)
18952
18953
18954State 598
18955
18956  479 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" expr '}' .
18957
18958    $default  reduce using rule 479 (encaps_var)
18959
18960
18961State 599
18962
18963  482 encaps_var: "{$ (T_CURLY_OPEN)" variable '}' .
18964
18965    $default  reduce using rule 482 (encaps_var)
18966
18967
18968State 600
18969
18970   93 top_statement: "namespace (T_NAMESPACE)" namespace_name $@1 '{' . top_statement_list '}'
18971
18972    $default  reduce using rule 79 (top_statement_list)
18973
18974    top_statement_list  go to state 673
18975
18976
18977State 601
18978
18979   78 top_statement_list: top_statement_list . top_statement
18980   95 top_statement: "namespace (T_NAMESPACE)" $@2 '{' top_statement_list . '}'
18981
18982    "include (T_INCLUDE)"                         shift, and go to state 4
18983    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
18984    "eval (T_EVAL)"                               shift, and go to state 6
18985    "require (T_REQUIRE)"                         shift, and go to state 7
18986    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
18987    "print (T_PRINT)"                             shift, and go to state 9
18988    "yield (T_YIELD)"                             shift, and go to state 10
18989    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
18990    '+'                                           shift, and go to state 12
18991    '-'                                           shift, and go to state 13
18992    '!'                                           shift, and go to state 14
18993    '~'                                           shift, and go to state 15
18994    "++ (T_INC)"                                  shift, and go to state 16
18995    "-- (T_DEC)"                                  shift, and go to state 17
18996    "(int) (T_INT_CAST)"                          shift, and go to state 18
18997    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
18998    "(string) (T_STRING_CAST)"                    shift, and go to state 20
18999    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
19000    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
19001    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
19002    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
19003    '@'                                           shift, and go to state 25
19004    '['                                           shift, and go to state 26
19005    "new (T_NEW)"                                 shift, and go to state 27
19006    "clone (T_CLONE)"                             shift, and go to state 28
19007    "static (T_STATIC)"                           shift, and go to state 29
19008    "abstract (T_ABSTRACT)"                       shift, and go to state 30
19009    "final (T_FINAL)"                             shift, and go to state 31
19010    "integer number (T_LNUMBER)"                  shift, and go to state 32
19011    "floating-point number (T_DNUMBER)"           shift, and go to state 33
19012    "identifier (T_STRING)"                       shift, and go to state 34
19013    "variable (T_VARIABLE)"                       shift, and go to state 35
19014    T_INLINE_HTML                                 shift, and go to state 36
19015    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
19016    "exit (T_EXIT)"                               shift, and go to state 38
19017    "if (T_IF)"                                   shift, and go to state 39
19018    "echo (T_ECHO)"                               shift, and go to state 40
19019    "do (T_DO)"                                   shift, and go to state 41
19020    "while (T_WHILE)"                             shift, and go to state 42
19021    "for (T_FOR)"                                 shift, and go to state 43
19022    "foreach (T_FOREACH)"                         shift, and go to state 44
19023    "declare (T_DECLARE)"                         shift, and go to state 45
19024    "switch (T_SWITCH)"                           shift, and go to state 46
19025    "break (T_BREAK)"                             shift, and go to state 47
19026    "continue (T_CONTINUE)"                       shift, and go to state 48
19027    "goto (T_GOTO)"                               shift, and go to state 49
19028    "function (T_FUNCTION)"                       shift, and go to state 50
19029    "const (T_CONST)"                             shift, and go to state 51
19030    "return (T_RETURN)"                           shift, and go to state 52
19031    "try (T_TRY)"                                 shift, and go to state 53
19032    "throw (T_THROW)"                             shift, and go to state 54
19033    "use (T_USE)"                                 shift, and go to state 55
19034    "global (T_GLOBAL)"                           shift, and go to state 56
19035    "unset (T_UNSET)"                             shift, and go to state 57
19036    "isset (T_ISSET)"                             shift, and go to state 58
19037    "empty (T_EMPTY)"                             shift, and go to state 59
19038    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 60
19039    "class (T_CLASS)"                             shift, and go to state 61
19040    "trait (T_TRAIT)"                             shift, and go to state 62
19041    "interface (T_INTERFACE)"                     shift, and go to state 63
19042    "list (T_LIST)"                               shift, and go to state 64
19043    "array (T_ARRAY)"                             shift, and go to state 65
19044    "__LINE__ (T_LINE)"                           shift, and go to state 66
19045    "__FILE__ (T_FILE)"                           shift, and go to state 67
19046    "__DIR__ (T_DIR)"                             shift, and go to state 68
19047    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
19048    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
19049    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
19050    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
19051    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
19052    "namespace (T_NAMESPACE)"                     shift, and go to state 74
19053    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
19054    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
19055    '('                                           shift, and go to state 77
19056    ';'                                           shift, and go to state 78
19057    '{'                                           shift, and go to state 79
19058    '}'                                           shift, and go to state 674
19059    '`'                                           shift, and go to state 80
19060    '"'                                           shift, and go to state 81
19061    '$'                                           shift, and go to state 82
19062
19063    namespace_name                   go to state 83
19064    name                             go to state 84
19065    top_statement                    go to state 85
19066    statement                        go to state 86
19067    function_declaration_statement   go to state 87
19068    class_declaration_statement      go to state 88
19069    class_modifiers                  go to state 89
19070    class_modifier                   go to state 90
19071    trait_declaration_statement      go to state 91
19072    interface_declaration_statement  go to state 92
19073    if_stmt_without_else             go to state 93
19074    if_stmt                          go to state 94
19075    alt_if_stmt_without_else         go to state 95
19076    alt_if_stmt                      go to state 96
19077    new_expr                         go to state 97
19078    expr                             go to state 98
19079    function                         go to state 99
19080    function_call                    go to state 100
19081    class_name                       go to state 101
19082    dereferencable_scalar            go to state 102
19083    scalar                           go to state 103
19084    constant                         go to state 104
19085    variable_class_name              go to state 105
19086    dereferencable                   go to state 106
19087    callable_expr                    go to state 107
19088    callable_variable                go to state 108
19089    variable                         go to state 109
19090    simple_variable                  go to state 110
19091    static_member                    go to state 111
19092    internal_functions_in_yacc       go to state 112
19093
19094
19095State 602
19096
19097  130 inner_statement: "__halt_compiler (T_HALT_COMPILER)" '(' . ')' ';'
19098
19099    ')'  shift, and go to state 675
19100
19101
19102State 603
19103
19104  445 simple_variable: '$' '{' expr '}' .
19105
19106    $default  reduce using rule 445 (simple_variable)
19107
19108
19109State 604
19110
19111  237 argument: "... (T_ELLIPSIS)" expr .
19112  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
19113  324     | expr . "&& (T_BOOLEAN_AND)" expr
19114  325     | expr . "or (T_LOGICAL_OR)" expr
19115  326     | expr . "and (T_LOGICAL_AND)" expr
19116  327     | expr . "xor (T_LOGICAL_XOR)" expr
19117  328     | expr . '|' expr
19118  329     | expr . '&' expr
19119  330     | expr . '^' expr
19120  331     | expr . '.' expr
19121  332     | expr . '+' expr
19122  333     | expr . '-' expr
19123  334     | expr . '*' expr
19124  335     | expr . "** (T_POW)" expr
19125  336     | expr . '/' expr
19126  337     | expr . '%' expr
19127  338     | expr . "<< (T_SL)" expr
19128  339     | expr . ">> (T_SR)" expr
19129  344     | expr . "=== (T_IS_IDENTICAL)" expr
19130  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
19131  346     | expr . "== (T_IS_EQUAL)" expr
19132  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
19133  348     | expr . '<' expr
19134  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
19135  350     | expr . '>' expr
19136  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
19137  352     | expr . "<=> (T_SPACESHIP)" expr
19138  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
19139  356     | expr . '?' expr ':' expr
19140  357     | expr . '?' ':' expr
19141  358     | expr . "?? (T_COALESCE)" expr
19142
19143    "or (T_LOGICAL_OR)"           shift, and go to state 237
19144    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
19145    "and (T_LOGICAL_AND)"         shift, and go to state 239
19146    '?'                           shift, and go to state 240
19147    "?? (T_COALESCE)"             shift, and go to state 241
19148    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
19149    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
19150    '|'                           shift, and go to state 244
19151    '^'                           shift, and go to state 245
19152    '&'                           shift, and go to state 246
19153    "== (T_IS_EQUAL)"             shift, and go to state 247
19154    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
19155    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
19156    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
19157    "<=> (T_SPACESHIP)"           shift, and go to state 251
19158    '<'                           shift, and go to state 252
19159    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
19160    '>'                           shift, and go to state 254
19161    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
19162    "<< (T_SL)"                   shift, and go to state 256
19163    ">> (T_SR)"                   shift, and go to state 257
19164    '+'                           shift, and go to state 258
19165    '-'                           shift, and go to state 259
19166    '.'                           shift, and go to state 260
19167    '*'                           shift, and go to state 261
19168    '/'                           shift, and go to state 262
19169    '%'                           shift, and go to state 263
19170    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
19171    "** (T_POW)"                  shift, and go to state 265
19172
19173    $default  reduce using rule 237 (argument)
19174
19175
19176State 605
19177
19178  108 possible_comma: ',' .
19179  235 non_empty_argument_list: non_empty_argument_list ',' . argument
19180
19181    "include (T_INCLUDE)"                         shift, and go to state 4
19182    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
19183    "eval (T_EVAL)"                               shift, and go to state 6
19184    "require (T_REQUIRE)"                         shift, and go to state 7
19185    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
19186    "print (T_PRINT)"                             shift, and go to state 9
19187    "yield (T_YIELD)"                             shift, and go to state 10
19188    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
19189    '+'                                           shift, and go to state 12
19190    '-'                                           shift, and go to state 13
19191    '!'                                           shift, and go to state 14
19192    '~'                                           shift, and go to state 15
19193    "++ (T_INC)"                                  shift, and go to state 16
19194    "-- (T_DEC)"                                  shift, and go to state 17
19195    "(int) (T_INT_CAST)"                          shift, and go to state 18
19196    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
19197    "(string) (T_STRING_CAST)"                    shift, and go to state 20
19198    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
19199    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
19200    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
19201    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
19202    '@'                                           shift, and go to state 25
19203    '['                                           shift, and go to state 26
19204    "new (T_NEW)"                                 shift, and go to state 27
19205    "clone (T_CLONE)"                             shift, and go to state 28
19206    "static (T_STATIC)"                           shift, and go to state 113
19207    "integer number (T_LNUMBER)"                  shift, and go to state 32
19208    "floating-point number (T_DNUMBER)"           shift, and go to state 33
19209    "identifier (T_STRING)"                       shift, and go to state 114
19210    "variable (T_VARIABLE)"                       shift, and go to state 35
19211    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
19212    "exit (T_EXIT)"                               shift, and go to state 38
19213    "function (T_FUNCTION)"                       shift, and go to state 50
19214    "isset (T_ISSET)"                             shift, and go to state 58
19215    "empty (T_EMPTY)"                             shift, and go to state 59
19216    "list (T_LIST)"                               shift, and go to state 64
19217    "array (T_ARRAY)"                             shift, and go to state 65
19218    "__LINE__ (T_LINE)"                           shift, and go to state 66
19219    "__FILE__ (T_FILE)"                           shift, and go to state 67
19220    "__DIR__ (T_DIR)"                             shift, and go to state 68
19221    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
19222    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
19223    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
19224    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
19225    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
19226    "namespace (T_NAMESPACE)"                     shift, and go to state 115
19227    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
19228    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
19229    "... (T_ELLIPSIS)"                            shift, and go to state 387
19230    '('                                           shift, and go to state 77
19231    '`'                                           shift, and go to state 80
19232    '"'                                           shift, and go to state 81
19233    '$'                                           shift, and go to state 82
19234
19235    $default  reduce using rule 108 (possible_comma)
19236
19237    namespace_name              go to state 83
19238    name                        go to state 84
19239    argument                    go to state 676
19240    new_expr                    go to state 97
19241    expr                        go to state 391
19242    function                    go to state 117
19243    function_call               go to state 100
19244    class_name                  go to state 101
19245    dereferencable_scalar       go to state 102
19246    scalar                      go to state 103
19247    constant                    go to state 104
19248    variable_class_name         go to state 105
19249    dereferencable              go to state 106
19250    callable_expr               go to state 107
19251    callable_variable           go to state 108
19252    variable                    go to state 109
19253    simple_variable             go to state 110
19254    static_member               go to state 111
19255    internal_functions_in_yacc  go to state 112
19256
19257
19258State 606
19259
19260  233 argument_list: '(' non_empty_argument_list possible_comma . ')'
19261
19262    ')'  shift, and go to state 677
19263
19264
19265State 607
19266
19267  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" . extends_from implements_list backup_doc_comment '{' class_statement_list '}'
19268
19269    "extends (T_EXTENDS)"  shift, and go to state 583
19270
19271    $default  reduce using rule 182 (extends_from)
19272
19273    extends_from  go to state 678
19274
19275
19276State 608
19277
19278  210 if_stmt_without_else: if_stmt_without_else "elseif (T_ELSEIF)" '(' expr . ')' statement
19279  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
19280  324     | expr . "&& (T_BOOLEAN_AND)" expr
19281  325     | expr . "or (T_LOGICAL_OR)" expr
19282  326     | expr . "and (T_LOGICAL_AND)" expr
19283  327     | expr . "xor (T_LOGICAL_XOR)" expr
19284  328     | expr . '|' expr
19285  329     | expr . '&' expr
19286  330     | expr . '^' expr
19287  331     | expr . '.' expr
19288  332     | expr . '+' expr
19289  333     | expr . '-' expr
19290  334     | expr . '*' expr
19291  335     | expr . "** (T_POW)" expr
19292  336     | expr . '/' expr
19293  337     | expr . '%' expr
19294  338     | expr . "<< (T_SL)" expr
19295  339     | expr . ">> (T_SR)" expr
19296  344     | expr . "=== (T_IS_IDENTICAL)" expr
19297  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
19298  346     | expr . "== (T_IS_EQUAL)" expr
19299  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
19300  348     | expr . '<' expr
19301  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
19302  350     | expr . '>' expr
19303  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
19304  352     | expr . "<=> (T_SPACESHIP)" expr
19305  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
19306  356     | expr . '?' expr ':' expr
19307  357     | expr . '?' ':' expr
19308  358     | expr . "?? (T_COALESCE)" expr
19309
19310    "or (T_LOGICAL_OR)"           shift, and go to state 237
19311    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
19312    "and (T_LOGICAL_AND)"         shift, and go to state 239
19313    '?'                           shift, and go to state 240
19314    "?? (T_COALESCE)"             shift, and go to state 241
19315    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
19316    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
19317    '|'                           shift, and go to state 244
19318    '^'                           shift, and go to state 245
19319    '&'                           shift, and go to state 246
19320    "== (T_IS_EQUAL)"             shift, and go to state 247
19321    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
19322    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
19323    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
19324    "<=> (T_SPACESHIP)"           shift, and go to state 251
19325    '<'                           shift, and go to state 252
19326    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
19327    '>'                           shift, and go to state 254
19328    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
19329    "<< (T_SL)"                   shift, and go to state 256
19330    ">> (T_SR)"                   shift, and go to state 257
19331    '+'                           shift, and go to state 258
19332    '-'                           shift, and go to state 259
19333    '.'                           shift, and go to state 260
19334    '*'                           shift, and go to state 261
19335    '/'                           shift, and go to state 262
19336    '%'                           shift, and go to state 263
19337    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
19338    "** (T_POW)"                  shift, and go to state 265
19339    ')'                           shift, and go to state 679
19340
19341
19342State 609
19343
19344  214 alt_if_stmt_without_else: alt_if_stmt_without_else "elseif (T_ELSEIF)" '(' expr . ')' ':' inner_statement_list
19345  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
19346  324     | expr . "&& (T_BOOLEAN_AND)" expr
19347  325     | expr . "or (T_LOGICAL_OR)" expr
19348  326     | expr . "and (T_LOGICAL_AND)" expr
19349  327     | expr . "xor (T_LOGICAL_XOR)" expr
19350  328     | expr . '|' expr
19351  329     | expr . '&' expr
19352  330     | expr . '^' expr
19353  331     | expr . '.' expr
19354  332     | expr . '+' expr
19355  333     | expr . '-' expr
19356  334     | expr . '*' expr
19357  335     | expr . "** (T_POW)" expr
19358  336     | expr . '/' expr
19359  337     | expr . '%' expr
19360  338     | expr . "<< (T_SL)" expr
19361  339     | expr . ">> (T_SR)" expr
19362  344     | expr . "=== (T_IS_IDENTICAL)" expr
19363  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
19364  346     | expr . "== (T_IS_EQUAL)" expr
19365  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
19366  348     | expr . '<' expr
19367  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
19368  350     | expr . '>' expr
19369  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
19370  352     | expr . "<=> (T_SPACESHIP)" expr
19371  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
19372  356     | expr . '?' expr ':' expr
19373  357     | expr . '?' ':' expr
19374  358     | expr . "?? (T_COALESCE)" expr
19375
19376    "or (T_LOGICAL_OR)"           shift, and go to state 237
19377    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
19378    "and (T_LOGICAL_AND)"         shift, and go to state 239
19379    '?'                           shift, and go to state 240
19380    "?? (T_COALESCE)"             shift, and go to state 241
19381    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
19382    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
19383    '|'                           shift, and go to state 244
19384    '^'                           shift, and go to state 245
19385    '&'                           shift, and go to state 246
19386    "== (T_IS_EQUAL)"             shift, and go to state 247
19387    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
19388    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
19389    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
19390    "<=> (T_SPACESHIP)"           shift, and go to state 251
19391    '<'                           shift, and go to state 252
19392    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
19393    '>'                           shift, and go to state 254
19394    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
19395    "<< (T_SL)"                   shift, and go to state 256
19396    ">> (T_SR)"                   shift, and go to state 257
19397    '+'                           shift, and go to state 258
19398    '-'                           shift, and go to state 259
19399    '.'                           shift, and go to state 260
19400    '*'                           shift, and go to state 261
19401    '/'                           shift, and go to state 262
19402    '%'                           shift, and go to state 263
19403    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
19404    "** (T_POW)"                  shift, and go to state 265
19405    ')'                           shift, and go to state 680
19406
19407
19408State 610
19409
19410  123 inner_statement_list: inner_statement_list . inner_statement
19411  216 alt_if_stmt: alt_if_stmt_without_else "else (T_ELSE)" ':' inner_statement_list . "endif (T_ENDIF)" ';'
19412
19413    "include (T_INCLUDE)"                         shift, and go to state 4
19414    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
19415    "eval (T_EVAL)"                               shift, and go to state 6
19416    "require (T_REQUIRE)"                         shift, and go to state 7
19417    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
19418    "print (T_PRINT)"                             shift, and go to state 9
19419    "yield (T_YIELD)"                             shift, and go to state 10
19420    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
19421    '+'                                           shift, and go to state 12
19422    '-'                                           shift, and go to state 13
19423    '!'                                           shift, and go to state 14
19424    '~'                                           shift, and go to state 15
19425    "++ (T_INC)"                                  shift, and go to state 16
19426    "-- (T_DEC)"                                  shift, and go to state 17
19427    "(int) (T_INT_CAST)"                          shift, and go to state 18
19428    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
19429    "(string) (T_STRING_CAST)"                    shift, and go to state 20
19430    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
19431    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
19432    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
19433    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
19434    '@'                                           shift, and go to state 25
19435    '['                                           shift, and go to state 26
19436    "new (T_NEW)"                                 shift, and go to state 27
19437    "clone (T_CLONE)"                             shift, and go to state 28
19438    "endif (T_ENDIF)"                             shift, and go to state 681
19439    "static (T_STATIC)"                           shift, and go to state 29
19440    "abstract (T_ABSTRACT)"                       shift, and go to state 30
19441    "final (T_FINAL)"                             shift, and go to state 31
19442    "integer number (T_LNUMBER)"                  shift, and go to state 32
19443    "floating-point number (T_DNUMBER)"           shift, and go to state 33
19444    "identifier (T_STRING)"                       shift, and go to state 34
19445    "variable (T_VARIABLE)"                       shift, and go to state 35
19446    T_INLINE_HTML                                 shift, and go to state 36
19447    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
19448    "exit (T_EXIT)"                               shift, and go to state 38
19449    "if (T_IF)"                                   shift, and go to state 39
19450    "echo (T_ECHO)"                               shift, and go to state 40
19451    "do (T_DO)"                                   shift, and go to state 41
19452    "while (T_WHILE)"                             shift, and go to state 42
19453    "for (T_FOR)"                                 shift, and go to state 43
19454    "foreach (T_FOREACH)"                         shift, and go to state 44
19455    "declare (T_DECLARE)"                         shift, and go to state 45
19456    "switch (T_SWITCH)"                           shift, and go to state 46
19457    "break (T_BREAK)"                             shift, and go to state 47
19458    "continue (T_CONTINUE)"                       shift, and go to state 48
19459    "goto (T_GOTO)"                               shift, and go to state 49
19460    "function (T_FUNCTION)"                       shift, and go to state 50
19461    "return (T_RETURN)"                           shift, and go to state 52
19462    "try (T_TRY)"                                 shift, and go to state 53
19463    "throw (T_THROW)"                             shift, and go to state 54
19464    "global (T_GLOBAL)"                           shift, and go to state 56
19465    "unset (T_UNSET)"                             shift, and go to state 57
19466    "isset (T_ISSET)"                             shift, and go to state 58
19467    "empty (T_EMPTY)"                             shift, and go to state 59
19468    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
19469    "class (T_CLASS)"                             shift, and go to state 61
19470    "trait (T_TRAIT)"                             shift, and go to state 62
19471    "interface (T_INTERFACE)"                     shift, and go to state 63
19472    "list (T_LIST)"                               shift, and go to state 64
19473    "array (T_ARRAY)"                             shift, and go to state 65
19474    "__LINE__ (T_LINE)"                           shift, and go to state 66
19475    "__FILE__ (T_FILE)"                           shift, and go to state 67
19476    "__DIR__ (T_DIR)"                             shift, and go to state 68
19477    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
19478    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
19479    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
19480    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
19481    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
19482    "namespace (T_NAMESPACE)"                     shift, and go to state 115
19483    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
19484    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
19485    '('                                           shift, and go to state 77
19486    ';'                                           shift, and go to state 78
19487    '{'                                           shift, and go to state 79
19488    '`'                                           shift, and go to state 80
19489    '"'                                           shift, and go to state 81
19490    '$'                                           shift, and go to state 82
19491
19492    namespace_name                   go to state 83
19493    name                             go to state 84
19494    inner_statement                  go to state 377
19495    statement                        go to state 378
19496    function_declaration_statement   go to state 379
19497    class_declaration_statement      go to state 380
19498    class_modifiers                  go to state 89
19499    class_modifier                   go to state 90
19500    trait_declaration_statement      go to state 381
19501    interface_declaration_statement  go to state 382
19502    if_stmt_without_else             go to state 93
19503    if_stmt                          go to state 94
19504    alt_if_stmt_without_else         go to state 95
19505    alt_if_stmt                      go to state 96
19506    new_expr                         go to state 97
19507    expr                             go to state 98
19508    function                         go to state 99
19509    function_call                    go to state 100
19510    class_name                       go to state 101
19511    dereferencable_scalar            go to state 102
19512    scalar                           go to state 103
19513    constant                         go to state 104
19514    variable_class_name              go to state 105
19515    dereferencable                   go to state 106
19516    callable_expr                    go to state 107
19517    callable_variable                go to state 108
19518    variable                         go to state 109
19519    simple_variable                  go to state 110
19520    static_member                    go to state 111
19521    internal_functions_in_yacc       go to state 112
19522
19523
19524State 611
19525
19526  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
19527  324     | expr . "&& (T_BOOLEAN_AND)" expr
19528  325     | expr . "or (T_LOGICAL_OR)" expr
19529  326     | expr . "and (T_LOGICAL_AND)" expr
19530  327     | expr . "xor (T_LOGICAL_XOR)" expr
19531  328     | expr . '|' expr
19532  329     | expr . '&' expr
19533  330     | expr . '^' expr
19534  331     | expr . '.' expr
19535  332     | expr . '+' expr
19536  333     | expr . '-' expr
19537  334     | expr . '*' expr
19538  335     | expr . "** (T_POW)" expr
19539  336     | expr . '/' expr
19540  337     | expr . '%' expr
19541  338     | expr . "<< (T_SL)" expr
19542  339     | expr . ">> (T_SR)" expr
19543  344     | expr . "=== (T_IS_IDENTICAL)" expr
19544  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
19545  346     | expr . "== (T_IS_EQUAL)" expr
19546  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
19547  348     | expr . '<' expr
19548  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
19549  350     | expr . '>' expr
19550  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
19551  352     | expr . "<=> (T_SPACESHIP)" expr
19552  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
19553  356     | expr . '?' expr ':' expr
19554  357     | expr . '?' ':' expr
19555  357     | expr '?' ':' expr .
19556  358     | expr . "?? (T_COALESCE)" expr
19557
19558    "?? (T_COALESCE)"             shift, and go to state 241
19559    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
19560    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
19561    '|'                           shift, and go to state 244
19562    '^'                           shift, and go to state 245
19563    '&'                           shift, and go to state 246
19564    "== (T_IS_EQUAL)"             shift, and go to state 247
19565    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
19566    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
19567    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
19568    "<=> (T_SPACESHIP)"           shift, and go to state 251
19569    '<'                           shift, and go to state 252
19570    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
19571    '>'                           shift, and go to state 254
19572    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
19573    "<< (T_SL)"                   shift, and go to state 256
19574    ">> (T_SR)"                   shift, and go to state 257
19575    '+'                           shift, and go to state 258
19576    '-'                           shift, and go to state 259
19577    '.'                           shift, and go to state 260
19578    '*'                           shift, and go to state 261
19579    '/'                           shift, and go to state 262
19580    '%'                           shift, and go to state 263
19581    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
19582    "** (T_POW)"                  shift, and go to state 265
19583
19584    $default  reduce using rule 357 (expr)
19585
19586
19587State 612
19588
19589  356 expr: expr '?' expr ':' . expr
19590
19591    "include (T_INCLUDE)"                         shift, and go to state 4
19592    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
19593    "eval (T_EVAL)"                               shift, and go to state 6
19594    "require (T_REQUIRE)"                         shift, and go to state 7
19595    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
19596    "print (T_PRINT)"                             shift, and go to state 9
19597    "yield (T_YIELD)"                             shift, and go to state 10
19598    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
19599    '+'                                           shift, and go to state 12
19600    '-'                                           shift, and go to state 13
19601    '!'                                           shift, and go to state 14
19602    '~'                                           shift, and go to state 15
19603    "++ (T_INC)"                                  shift, and go to state 16
19604    "-- (T_DEC)"                                  shift, and go to state 17
19605    "(int) (T_INT_CAST)"                          shift, and go to state 18
19606    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
19607    "(string) (T_STRING_CAST)"                    shift, and go to state 20
19608    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
19609    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
19610    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
19611    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
19612    '@'                                           shift, and go to state 25
19613    '['                                           shift, and go to state 26
19614    "new (T_NEW)"                                 shift, and go to state 27
19615    "clone (T_CLONE)"                             shift, and go to state 28
19616    "static (T_STATIC)"                           shift, and go to state 113
19617    "integer number (T_LNUMBER)"                  shift, and go to state 32
19618    "floating-point number (T_DNUMBER)"           shift, and go to state 33
19619    "identifier (T_STRING)"                       shift, and go to state 114
19620    "variable (T_VARIABLE)"                       shift, and go to state 35
19621    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
19622    "exit (T_EXIT)"                               shift, and go to state 38
19623    "function (T_FUNCTION)"                       shift, and go to state 50
19624    "isset (T_ISSET)"                             shift, and go to state 58
19625    "empty (T_EMPTY)"                             shift, and go to state 59
19626    "list (T_LIST)"                               shift, and go to state 64
19627    "array (T_ARRAY)"                             shift, and go to state 65
19628    "__LINE__ (T_LINE)"                           shift, and go to state 66
19629    "__FILE__ (T_FILE)"                           shift, and go to state 67
19630    "__DIR__ (T_DIR)"                             shift, and go to state 68
19631    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
19632    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
19633    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
19634    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
19635    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
19636    "namespace (T_NAMESPACE)"                     shift, and go to state 115
19637    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
19638    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
19639    '('                                           shift, and go to state 77
19640    '`'                                           shift, and go to state 80
19641    '"'                                           shift, and go to state 81
19642    '$'                                           shift, and go to state 82
19643
19644    namespace_name              go to state 83
19645    name                        go to state 84
19646    new_expr                    go to state 97
19647    expr                        go to state 682
19648    function                    go to state 117
19649    function_call               go to state 100
19650    class_name                  go to state 101
19651    dereferencable_scalar       go to state 102
19652    scalar                      go to state 103
19653    constant                    go to state 104
19654    variable_class_name         go to state 105
19655    dereferencable              go to state 106
19656    callable_expr               go to state 107
19657    callable_variable           go to state 108
19658    variable                    go to state 109
19659    simple_variable             go to state 110
19660    static_member               go to state 111
19661    internal_functions_in_yacc  go to state 112
19662
19663
19664State 613
19665
19666  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment . '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
19667
19668    '('  shift, and go to state 683
19669
19670
19671State 614
19672
19673  376 expr: function returns_ref backup_doc_comment '(' . parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
19674
19675    '?'                        shift, and go to state 684
19676    "identifier (T_STRING)"    shift, and go to state 114
19677    "array (T_ARRAY)"          shift, and go to state 685
19678    "callable (T_CALLABLE)"    shift, and go to state 686
19679    "namespace (T_NAMESPACE)"  shift, and go to state 115
19680    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
19681
19682    ')'       reduce using rule 218 (parameter_list)
19683    $default  reduce using rule 223 (optional_type)
19684
19685    namespace_name            go to state 83
19686    name                      go to state 687
19687    parameter_list            go to state 688
19688    non_empty_parameter_list  go to state 689
19689    parameter                 go to state 690
19690    optional_type             go to state 691
19691    type_expr                 go to state 692
19692    type                      go to state 693
19693
19694
19695State 615
19696
19697  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
19698  324     | expr . "&& (T_BOOLEAN_AND)" expr
19699  325     | expr . "or (T_LOGICAL_OR)" expr
19700  326     | expr . "and (T_LOGICAL_AND)" expr
19701  327     | expr . "xor (T_LOGICAL_XOR)" expr
19702  328     | expr . '|' expr
19703  329     | expr . '&' expr
19704  330     | expr . '^' expr
19705  331     | expr . '.' expr
19706  332     | expr . '+' expr
19707  333     | expr . '-' expr
19708  334     | expr . '*' expr
19709  335     | expr . "** (T_POW)" expr
19710  336     | expr . '/' expr
19711  337     | expr . '%' expr
19712  338     | expr . "<< (T_SL)" expr
19713  339     | expr . ">> (T_SR)" expr
19714  344     | expr . "=== (T_IS_IDENTICAL)" expr
19715  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
19716  346     | expr . "== (T_IS_EQUAL)" expr
19717  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
19718  348     | expr . '<' expr
19719  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
19720  350     | expr . '>' expr
19721  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
19722  352     | expr . "<=> (T_SPACESHIP)" expr
19723  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
19724  356     | expr . '?' expr ':' expr
19725  357     | expr . '?' ':' expr
19726  358     | expr . "?? (T_COALESCE)" expr
19727  456 member_name: '{' expr . '}'
19728
19729    "or (T_LOGICAL_OR)"           shift, and go to state 237
19730    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
19731    "and (T_LOGICAL_AND)"         shift, and go to state 239
19732    '?'                           shift, and go to state 240
19733    "?? (T_COALESCE)"             shift, and go to state 241
19734    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
19735    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
19736    '|'                           shift, and go to state 244
19737    '^'                           shift, and go to state 245
19738    '&'                           shift, and go to state 246
19739    "== (T_IS_EQUAL)"             shift, and go to state 247
19740    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
19741    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
19742    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
19743    "<=> (T_SPACESHIP)"           shift, and go to state 251
19744    '<'                           shift, and go to state 252
19745    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
19746    '>'                           shift, and go to state 254
19747    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
19748    "<< (T_SL)"                   shift, and go to state 256
19749    ">> (T_SR)"                   shift, and go to state 257
19750    '+'                           shift, and go to state 258
19751    '-'                           shift, and go to state 259
19752    '.'                           shift, and go to state 260
19753    '*'                           shift, and go to state 261
19754    '/'                           shift, and go to state 262
19755    '%'                           shift, and go to state 263
19756    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
19757    "** (T_POW)"                  shift, and go to state 265
19758    '}'                           shift, and go to state 694
19759
19760
19761State 616
19762
19763  390 function_call: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list .
19764
19765    $default  reduce using rule 390 (function_call)
19766
19767
19768State 617
19769
19770  437 callable_variable: constant '[' optional_expr ']' .
19771
19772    $default  reduce using rule 437 (callable_variable)
19773
19774
19775State 618
19776
19777  391 function_call: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" member_name argument_list .
19778
19779    $default  reduce using rule 391 (function_call)
19780
19781
19782State 619
19783
19784  436 callable_variable: dereferencable '[' optional_expr ']' .
19785
19786    $default  reduce using rule 436 (callable_variable)
19787
19788
19789State 620
19790
19791  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
19792  324     | expr . "&& (T_BOOLEAN_AND)" expr
19793  325     | expr . "or (T_LOGICAL_OR)" expr
19794  326     | expr . "and (T_LOGICAL_AND)" expr
19795  327     | expr . "xor (T_LOGICAL_XOR)" expr
19796  328     | expr . '|' expr
19797  329     | expr . '&' expr
19798  330     | expr . '^' expr
19799  331     | expr . '.' expr
19800  332     | expr . '+' expr
19801  333     | expr . '-' expr
19802  334     | expr . '*' expr
19803  335     | expr . "** (T_POW)" expr
19804  336     | expr . '/' expr
19805  337     | expr . '%' expr
19806  338     | expr . "<< (T_SL)" expr
19807  339     | expr . ">> (T_SR)" expr
19808  344     | expr . "=== (T_IS_IDENTICAL)" expr
19809  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
19810  346     | expr . "== (T_IS_EQUAL)" expr
19811  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
19812  348     | expr . '<' expr
19813  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
19814  350     | expr . '>' expr
19815  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
19816  352     | expr . "<=> (T_SPACESHIP)" expr
19817  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
19818  356     | expr . '?' expr ':' expr
19819  357     | expr . '?' ':' expr
19820  358     | expr . "?? (T_COALESCE)" expr
19821  459 property_name: '{' expr . '}'
19822
19823    "or (T_LOGICAL_OR)"           shift, and go to state 237
19824    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
19825    "and (T_LOGICAL_AND)"         shift, and go to state 239
19826    '?'                           shift, and go to state 240
19827    "?? (T_COALESCE)"             shift, and go to state 241
19828    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
19829    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
19830    '|'                           shift, and go to state 244
19831    '^'                           shift, and go to state 245
19832    '&'                           shift, and go to state 246
19833    "== (T_IS_EQUAL)"             shift, and go to state 247
19834    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
19835    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
19836    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
19837    "<=> (T_SPACESHIP)"           shift, and go to state 251
19838    '<'                           shift, and go to state 252
19839    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
19840    '>'                           shift, and go to state 254
19841    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
19842    "<< (T_SL)"                   shift, and go to state 256
19843    ">> (T_SR)"                   shift, and go to state 257
19844    '+'                           shift, and go to state 258
19845    '-'                           shift, and go to state 259
19846    '.'                           shift, and go to state 260
19847    '*'                           shift, and go to state 261
19848    '/'                           shift, and go to state 262
19849    '%'                           shift, and go to state 263
19850    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
19851    "** (T_POW)"                  shift, and go to state 265
19852    '}'                           shift, and go to state 695
19853
19854
19855State 621
19856
19857  439 callable_variable: dereferencable "-> (T_OBJECT_OPERATOR)" property_name argument_list .
19858
19859    $default  reduce using rule 439 (callable_variable)
19860
19861
19862State 622
19863
19864  438 callable_variable: dereferencable '{' expr '}' .
19865
19866    $default  reduce using rule 438 (callable_variable)
19867
19868
19869State 623
19870
19871  305 expr: variable '=' '&' variable .
19872  429 dereferencable: variable .
19873
19874    '['                            reduce using rule 429 (dereferencable)
19875    "-> (T_OBJECT_OPERATOR)"       reduce using rule 429 (dereferencable)
19876    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  reduce using rule 429 (dereferencable)
19877    '{'                            reduce using rule 429 (dereferencable)
19878    $default                       reduce using rule 305 (expr)
19879
19880
19881State 624
19882
19883  302 expr: "list (T_LIST)" '(' array_pair_list ')' . '=' expr
19884  471 array_pair: "list (T_LIST)" '(' array_pair_list ')' .
19885
19886    '='  shift, and go to state 669
19887
19888    $default  reduce using rule 471 (array_pair)
19889
19890
19891State 625
19892
19893  429 dereferencable: variable .
19894  468 array_pair: expr "=> (T_DOUBLE_ARROW)" '&' variable .
19895
19896    ','       reduce using rule 468 (array_pair)
19897    ')'       reduce using rule 468 (array_pair)
19898    ']'       reduce using rule 468 (array_pair)
19899    $default  reduce using rule 429 (dereferencable)
19900
19901
19902State 626
19903
19904  302 expr: "list (T_LIST)" '(' . array_pair_list ')' '=' expr
19905  470 array_pair: expr "=> (T_DOUBLE_ARROW)" "list (T_LIST)" '(' . array_pair_list ')'
19906
19907    "include (T_INCLUDE)"                         shift, and go to state 4
19908    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
19909    "eval (T_EVAL)"                               shift, and go to state 6
19910    "require (T_REQUIRE)"                         shift, and go to state 7
19911    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
19912    "print (T_PRINT)"                             shift, and go to state 9
19913    "yield (T_YIELD)"                             shift, and go to state 10
19914    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
19915    '&'                                           shift, and go to state 144
19916    '+'                                           shift, and go to state 12
19917    '-'                                           shift, and go to state 13
19918    '!'                                           shift, and go to state 14
19919    '~'                                           shift, and go to state 15
19920    "++ (T_INC)"                                  shift, and go to state 16
19921    "-- (T_DEC)"                                  shift, and go to state 17
19922    "(int) (T_INT_CAST)"                          shift, and go to state 18
19923    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
19924    "(string) (T_STRING_CAST)"                    shift, and go to state 20
19925    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
19926    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
19927    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
19928    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
19929    '@'                                           shift, and go to state 25
19930    '['                                           shift, and go to state 26
19931    "new (T_NEW)"                                 shift, and go to state 27
19932    "clone (T_CLONE)"                             shift, and go to state 28
19933    "static (T_STATIC)"                           shift, and go to state 113
19934    "integer number (T_LNUMBER)"                  shift, and go to state 32
19935    "floating-point number (T_DNUMBER)"           shift, and go to state 33
19936    "identifier (T_STRING)"                       shift, and go to state 114
19937    "variable (T_VARIABLE)"                       shift, and go to state 35
19938    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
19939    "exit (T_EXIT)"                               shift, and go to state 38
19940    "function (T_FUNCTION)"                       shift, and go to state 50
19941    "isset (T_ISSET)"                             shift, and go to state 58
19942    "empty (T_EMPTY)"                             shift, and go to state 59
19943    "list (T_LIST)"                               shift, and go to state 145
19944    "array (T_ARRAY)"                             shift, and go to state 65
19945    "__LINE__ (T_LINE)"                           shift, and go to state 66
19946    "__FILE__ (T_FILE)"                           shift, and go to state 67
19947    "__DIR__ (T_DIR)"                             shift, and go to state 68
19948    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
19949    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
19950    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
19951    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
19952    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
19953    "namespace (T_NAMESPACE)"                     shift, and go to state 115
19954    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
19955    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
19956    '('                                           shift, and go to state 77
19957    '`'                                           shift, and go to state 80
19958    '"'                                           shift, and go to state 81
19959    '$'                                           shift, and go to state 82
19960
19961    $default  reduce using rule 462 (possible_array_pair)
19962
19963    namespace_name              go to state 83
19964    name                        go to state 84
19965    new_expr                    go to state 97
19966    expr                        go to state 146
19967    function                    go to state 117
19968    function_call               go to state 100
19969    class_name                  go to state 101
19970    dereferencable_scalar       go to state 102
19971    scalar                      go to state 103
19972    constant                    go to state 104
19973    variable_class_name         go to state 105
19974    dereferencable              go to state 106
19975    callable_expr               go to state 107
19976    callable_variable           go to state 108
19977    variable                    go to state 109
19978    simple_variable             go to state 110
19979    static_member               go to state 111
19980    array_pair_list             go to state 696
19981    possible_array_pair         go to state 148
19982    non_empty_array_pair_list   go to state 149
19983    array_pair                  go to state 150
19984    internal_functions_in_yacc  go to state 112
19985
19986
19987State 627
19988
19989  303 expr: '[' array_pair_list ']' '=' expr .
19990  323     | expr . "|| (T_BOOLEAN_OR)" expr
19991  324     | expr . "&& (T_BOOLEAN_AND)" expr
19992  325     | expr . "or (T_LOGICAL_OR)" expr
19993  326     | expr . "and (T_LOGICAL_AND)" expr
19994  327     | expr . "xor (T_LOGICAL_XOR)" expr
19995  328     | expr . '|' expr
19996  329     | expr . '&' expr
19997  330     | expr . '^' expr
19998  331     | expr . '.' expr
19999  332     | expr . '+' expr
20000  333     | expr . '-' expr
20001  334     | expr . '*' expr
20002  335     | expr . "** (T_POW)" expr
20003  336     | expr . '/' expr
20004  337     | expr . '%' expr
20005  338     | expr . "<< (T_SL)" expr
20006  339     | expr . ">> (T_SR)" expr
20007  344     | expr . "=== (T_IS_IDENTICAL)" expr
20008  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
20009  346     | expr . "== (T_IS_EQUAL)" expr
20010  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
20011  348     | expr . '<' expr
20012  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
20013  350     | expr . '>' expr
20014  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
20015  352     | expr . "<=> (T_SPACESHIP)" expr
20016  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
20017  356     | expr . '?' expr ':' expr
20018  357     | expr . '?' ':' expr
20019  358     | expr . "?? (T_COALESCE)" expr
20020
20021    '?'                           shift, and go to state 240
20022    "?? (T_COALESCE)"             shift, and go to state 241
20023    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
20024    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
20025    '|'                           shift, and go to state 244
20026    '^'                           shift, and go to state 245
20027    '&'                           shift, and go to state 246
20028    "== (T_IS_EQUAL)"             shift, and go to state 247
20029    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
20030    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
20031    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
20032    "<=> (T_SPACESHIP)"           shift, and go to state 251
20033    '<'                           shift, and go to state 252
20034    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
20035    '>'                           shift, and go to state 254
20036    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
20037    "<< (T_SL)"                   shift, and go to state 256
20038    ">> (T_SR)"                   shift, and go to state 257
20039    '+'                           shift, and go to state 258
20040    '-'                           shift, and go to state 259
20041    '.'                           shift, and go to state 260
20042    '*'                           shift, and go to state 261
20043    '/'                           shift, and go to state 262
20044    '%'                           shift, and go to state 263
20045    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
20046    "** (T_POW)"                  shift, and go to state 265
20047
20048    $default  reduce using rule 303 (expr)
20049
20050
20051State 628
20052
20053  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments extends_from . implements_list backup_doc_comment '{' class_statement_list '}'
20054
20055    "implements (T_IMPLEMENTS)"  shift, and go to state 663
20056
20057    $default  reduce using rule 186 (implements_list)
20058
20059    implements_list  go to state 697
20060
20061
20062State 629
20063
20064  450 new_variable: new_variable '[' optional_expr ']' .
20065
20066    $default  reduce using rule 450 (new_variable)
20067
20068
20069State 630
20070
20071  451 new_variable: new_variable '{' expr '}' .
20072
20073    $default  reduce using rule 451 (new_variable)
20074
20075
20076State 631
20077
20078  377 expr: "static (T_STATIC)" function returns_ref backup_doc_comment '(' . parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
20079
20080    '?'                        shift, and go to state 684
20081    "identifier (T_STRING)"    shift, and go to state 114
20082    "array (T_ARRAY)"          shift, and go to state 685
20083    "callable (T_CALLABLE)"    shift, and go to state 686
20084    "namespace (T_NAMESPACE)"  shift, and go to state 115
20085    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
20086
20087    ')'       reduce using rule 218 (parameter_list)
20088    $default  reduce using rule 223 (optional_type)
20089
20090    namespace_name            go to state 83
20091    name                      go to state 687
20092    parameter_list            go to state 698
20093    non_empty_parameter_list  go to state 689
20094    parameter                 go to state 690
20095    optional_type             go to state 691
20096    type_expr                 go to state 692
20097    type                      go to state 693
20098
20099
20100State 632
20101
20102  213 alt_if_stmt_without_else: "if (T_IF)" '(' expr ')' ':' . inner_statement_list
20103
20104    $default  reduce using rule 124 (inner_statement_list)
20105
20106    inner_statement_list  go to state 699
20107
20108
20109State 633
20110
20111  209 if_stmt_without_else: "if (T_IF)" '(' expr ')' statement .
20112
20113    $default  reduce using rule 209 (if_stmt_without_else)
20114
20115
20116State 634
20117
20118  135 statement: "do (T_DO)" statement "while (T_WHILE)" '(' expr . ')' ';'
20119  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
20120  324     | expr . "&& (T_BOOLEAN_AND)" expr
20121  325     | expr . "or (T_LOGICAL_OR)" expr
20122  326     | expr . "and (T_LOGICAL_AND)" expr
20123  327     | expr . "xor (T_LOGICAL_XOR)" expr
20124  328     | expr . '|' expr
20125  329     | expr . '&' expr
20126  330     | expr . '^' expr
20127  331     | expr . '.' expr
20128  332     | expr . '+' expr
20129  333     | expr . '-' expr
20130  334     | expr . '*' expr
20131  335     | expr . "** (T_POW)" expr
20132  336     | expr . '/' expr
20133  337     | expr . '%' expr
20134  338     | expr . "<< (T_SL)" expr
20135  339     | expr . ">> (T_SR)" expr
20136  344     | expr . "=== (T_IS_IDENTICAL)" expr
20137  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
20138  346     | expr . "== (T_IS_EQUAL)" expr
20139  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
20140  348     | expr . '<' expr
20141  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
20142  350     | expr . '>' expr
20143  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
20144  352     | expr . "<=> (T_SPACESHIP)" expr
20145  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
20146  356     | expr . '?' expr ':' expr
20147  357     | expr . '?' ':' expr
20148  358     | expr . "?? (T_COALESCE)" expr
20149
20150    "or (T_LOGICAL_OR)"           shift, and go to state 237
20151    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
20152    "and (T_LOGICAL_AND)"         shift, and go to state 239
20153    '?'                           shift, and go to state 240
20154    "?? (T_COALESCE)"             shift, and go to state 241
20155    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
20156    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
20157    '|'                           shift, and go to state 244
20158    '^'                           shift, and go to state 245
20159    '&'                           shift, and go to state 246
20160    "== (T_IS_EQUAL)"             shift, and go to state 247
20161    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
20162    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
20163    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
20164    "<=> (T_SPACESHIP)"           shift, and go to state 251
20165    '<'                           shift, and go to state 252
20166    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
20167    '>'                           shift, and go to state 254
20168    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
20169    "<< (T_SL)"                   shift, and go to state 256
20170    ">> (T_SR)"                   shift, and go to state 257
20171    '+'                           shift, and go to state 258
20172    '-'                           shift, and go to state 259
20173    '.'                           shift, and go to state 260
20174    '*'                           shift, and go to state 261
20175    '/'                           shift, and go to state 262
20176    '%'                           shift, and go to state 263
20177    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
20178    "** (T_POW)"                  shift, and go to state 265
20179    ')'                           shift, and go to state 700
20180
20181
20182State 635
20183
20184  208 while_statement: ':' . inner_statement_list "endwhile (T_ENDWHILE)" ';'
20185
20186    $default  reduce using rule 124 (inner_statement_list)
20187
20188    inner_statement_list  go to state 701
20189
20190
20191State 636
20192
20193  207 while_statement: statement .
20194
20195    $default  reduce using rule 207 (while_statement)
20196
20197
20198State 637
20199
20200  134 statement: "while (T_WHILE)" '(' expr ')' while_statement .
20201
20202    $default  reduce using rule 134 (statement)
20203
20204
20205State 638
20206
20207  136 statement: "for (T_FOR)" '(' for_exprs ';' for_exprs . ';' for_exprs ')' for_statement
20208
20209    ';'  shift, and go to state 702
20210
20211
20212State 639
20213
20214  295 non_empty_for_exprs: non_empty_for_exprs ',' expr .
20215  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
20216  324     | expr . "&& (T_BOOLEAN_AND)" expr
20217  325     | expr . "or (T_LOGICAL_OR)" expr
20218  326     | expr . "and (T_LOGICAL_AND)" expr
20219  327     | expr . "xor (T_LOGICAL_XOR)" expr
20220  328     | expr . '|' expr
20221  329     | expr . '&' expr
20222  330     | expr . '^' expr
20223  331     | expr . '.' expr
20224  332     | expr . '+' expr
20225  333     | expr . '-' expr
20226  334     | expr . '*' expr
20227  335     | expr . "** (T_POW)" expr
20228  336     | expr . '/' expr
20229  337     | expr . '%' expr
20230  338     | expr . "<< (T_SL)" expr
20231  339     | expr . ">> (T_SR)" expr
20232  344     | expr . "=== (T_IS_IDENTICAL)" expr
20233  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
20234  346     | expr . "== (T_IS_EQUAL)" expr
20235  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
20236  348     | expr . '<' expr
20237  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
20238  350     | expr . '>' expr
20239  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
20240  352     | expr . "<=> (T_SPACESHIP)" expr
20241  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
20242  356     | expr . '?' expr ':' expr
20243  357     | expr . '?' ':' expr
20244  358     | expr . "?? (T_COALESCE)" expr
20245
20246    "or (T_LOGICAL_OR)"           shift, and go to state 237
20247    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
20248    "and (T_LOGICAL_AND)"         shift, and go to state 239
20249    '?'                           shift, and go to state 240
20250    "?? (T_COALESCE)"             shift, and go to state 241
20251    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
20252    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
20253    '|'                           shift, and go to state 244
20254    '^'                           shift, and go to state 245
20255    '&'                           shift, and go to state 246
20256    "== (T_IS_EQUAL)"             shift, and go to state 247
20257    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
20258    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
20259    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
20260    "<=> (T_SPACESHIP)"           shift, and go to state 251
20261    '<'                           shift, and go to state 252
20262    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
20263    '>'                           shift, and go to state 254
20264    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
20265    "<< (T_SL)"                   shift, and go to state 256
20266    ">> (T_SR)"                   shift, and go to state 257
20267    '+'                           shift, and go to state 258
20268    '-'                           shift, and go to state 259
20269    '.'                           shift, and go to state 260
20270    '*'                           shift, and go to state 261
20271    '/'                           shift, and go to state 262
20272    '%'                           shift, and go to state 263
20273    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
20274    "** (T_POW)"                  shift, and go to state 265
20275
20276    $default  reduce using rule 295 (non_empty_for_exprs)
20277
20278
20279State 640
20280
20281  189 foreach_variable: '&' . variable
20282
20283    '['                                           shift, and go to state 129
20284    "static (T_STATIC)"                           shift, and go to state 130
20285    "identifier (T_STRING)"                       shift, and go to state 114
20286    "variable (T_VARIABLE)"                       shift, and go to state 35
20287    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
20288    "array (T_ARRAY)"                             shift, and go to state 65
20289    "namespace (T_NAMESPACE)"                     shift, and go to state 115
20290    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
20291    '('                                           shift, and go to state 131
20292    '$'                                           shift, and go to state 82
20293
20294    namespace_name         go to state 83
20295    name                   go to state 84
20296    function_call          go to state 100
20297    class_name             go to state 101
20298    dereferencable_scalar  go to state 132
20299    constant               go to state 133
20300    variable_class_name    go to state 105
20301    dereferencable         go to state 106
20302    callable_expr          go to state 107
20303    callable_variable      go to state 108
20304    variable               go to state 703
20305    simple_variable        go to state 110
20306    static_member          go to state 111
20307
20308
20309State 641
20310
20311  191 foreach_variable: '[' . array_pair_list ']'
20312  405 dereferencable_scalar: '[' . array_pair_list ']'
20313
20314    "include (T_INCLUDE)"                         shift, and go to state 4
20315    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
20316    "eval (T_EVAL)"                               shift, and go to state 6
20317    "require (T_REQUIRE)"                         shift, and go to state 7
20318    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
20319    "print (T_PRINT)"                             shift, and go to state 9
20320    "yield (T_YIELD)"                             shift, and go to state 10
20321    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
20322    '&'                                           shift, and go to state 144
20323    '+'                                           shift, and go to state 12
20324    '-'                                           shift, and go to state 13
20325    '!'                                           shift, and go to state 14
20326    '~'                                           shift, and go to state 15
20327    "++ (T_INC)"                                  shift, and go to state 16
20328    "-- (T_DEC)"                                  shift, and go to state 17
20329    "(int) (T_INT_CAST)"                          shift, and go to state 18
20330    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
20331    "(string) (T_STRING_CAST)"                    shift, and go to state 20
20332    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
20333    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
20334    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
20335    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
20336    '@'                                           shift, and go to state 25
20337    '['                                           shift, and go to state 26
20338    "new (T_NEW)"                                 shift, and go to state 27
20339    "clone (T_CLONE)"                             shift, and go to state 28
20340    "static (T_STATIC)"                           shift, and go to state 113
20341    "integer number (T_LNUMBER)"                  shift, and go to state 32
20342    "floating-point number (T_DNUMBER)"           shift, and go to state 33
20343    "identifier (T_STRING)"                       shift, and go to state 114
20344    "variable (T_VARIABLE)"                       shift, and go to state 35
20345    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
20346    "exit (T_EXIT)"                               shift, and go to state 38
20347    "function (T_FUNCTION)"                       shift, and go to state 50
20348    "isset (T_ISSET)"                             shift, and go to state 58
20349    "empty (T_EMPTY)"                             shift, and go to state 59
20350    "list (T_LIST)"                               shift, and go to state 145
20351    "array (T_ARRAY)"                             shift, and go to state 65
20352    "__LINE__ (T_LINE)"                           shift, and go to state 66
20353    "__FILE__ (T_FILE)"                           shift, and go to state 67
20354    "__DIR__ (T_DIR)"                             shift, and go to state 68
20355    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
20356    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
20357    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
20358    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
20359    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
20360    "namespace (T_NAMESPACE)"                     shift, and go to state 115
20361    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
20362    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
20363    '('                                           shift, and go to state 77
20364    '`'                                           shift, and go to state 80
20365    '"'                                           shift, and go to state 81
20366    '$'                                           shift, and go to state 82
20367
20368    $default  reduce using rule 462 (possible_array_pair)
20369
20370    namespace_name              go to state 83
20371    name                        go to state 84
20372    new_expr                    go to state 97
20373    expr                        go to state 146
20374    function                    go to state 117
20375    function_call               go to state 100
20376    class_name                  go to state 101
20377    dereferencable_scalar       go to state 102
20378    scalar                      go to state 103
20379    constant                    go to state 104
20380    variable_class_name         go to state 105
20381    dereferencable              go to state 106
20382    callable_expr               go to state 107
20383    callable_variable           go to state 108
20384    variable                    go to state 109
20385    simple_variable             go to state 110
20386    static_member               go to state 111
20387    array_pair_list             go to state 704
20388    possible_array_pair         go to state 148
20389    non_empty_array_pair_list   go to state 149
20390    array_pair                  go to state 150
20391    internal_functions_in_yacc  go to state 112
20392
20393
20394State 642
20395
20396  190 foreach_variable: "list (T_LIST)" . '(' array_pair_list ')'
20397
20398    '('  shift, and go to state 705
20399
20400
20401State 643
20402
20403  147 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable . ')' foreach_statement
20404  148          | "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable . "=> (T_DOUBLE_ARROW)" foreach_variable ')' foreach_statement
20405
20406    "=> (T_DOUBLE_ARROW)"  shift, and go to state 706
20407    ')'                    shift, and go to state 707
20408
20409
20410State 644
20411
20412  188 foreach_variable: variable .
20413  429 dereferencable: variable .
20414
20415    "=> (T_DOUBLE_ARROW)"  reduce using rule 188 (foreach_variable)
20416    ')'                    reduce using rule 188 (foreach_variable)
20417    $default               reduce using rule 429 (dereferencable)
20418
20419
20420State 645
20421
20422  150 statement: "declare (T_DECLARE)" '(' const_list ')' $@3 . declare_statement
20423
20424    "include (T_INCLUDE)"                         shift, and go to state 4
20425    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
20426    "eval (T_EVAL)"                               shift, and go to state 6
20427    "require (T_REQUIRE)"                         shift, and go to state 7
20428    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
20429    "print (T_PRINT)"                             shift, and go to state 9
20430    "yield (T_YIELD)"                             shift, and go to state 10
20431    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
20432    ':'                                           shift, and go to state 708
20433    '+'                                           shift, and go to state 12
20434    '-'                                           shift, and go to state 13
20435    '!'                                           shift, and go to state 14
20436    '~'                                           shift, and go to state 15
20437    "++ (T_INC)"                                  shift, and go to state 16
20438    "-- (T_DEC)"                                  shift, and go to state 17
20439    "(int) (T_INT_CAST)"                          shift, and go to state 18
20440    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
20441    "(string) (T_STRING_CAST)"                    shift, and go to state 20
20442    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
20443    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
20444    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
20445    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
20446    '@'                                           shift, and go to state 25
20447    '['                                           shift, and go to state 26
20448    "new (T_NEW)"                                 shift, and go to state 27
20449    "clone (T_CLONE)"                             shift, and go to state 28
20450    "static (T_STATIC)"                           shift, and go to state 29
20451    "integer number (T_LNUMBER)"                  shift, and go to state 32
20452    "floating-point number (T_DNUMBER)"           shift, and go to state 33
20453    "identifier (T_STRING)"                       shift, and go to state 34
20454    "variable (T_VARIABLE)"                       shift, and go to state 35
20455    T_INLINE_HTML                                 shift, and go to state 36
20456    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
20457    "exit (T_EXIT)"                               shift, and go to state 38
20458    "if (T_IF)"                                   shift, and go to state 39
20459    "echo (T_ECHO)"                               shift, and go to state 40
20460    "do (T_DO)"                                   shift, and go to state 41
20461    "while (T_WHILE)"                             shift, and go to state 42
20462    "for (T_FOR)"                                 shift, and go to state 43
20463    "foreach (T_FOREACH)"                         shift, and go to state 44
20464    "declare (T_DECLARE)"                         shift, and go to state 45
20465    "switch (T_SWITCH)"                           shift, and go to state 46
20466    "break (T_BREAK)"                             shift, and go to state 47
20467    "continue (T_CONTINUE)"                       shift, and go to state 48
20468    "goto (T_GOTO)"                               shift, and go to state 49
20469    "function (T_FUNCTION)"                       shift, and go to state 50
20470    "return (T_RETURN)"                           shift, and go to state 52
20471    "try (T_TRY)"                                 shift, and go to state 53
20472    "throw (T_THROW)"                             shift, and go to state 54
20473    "global (T_GLOBAL)"                           shift, and go to state 56
20474    "unset (T_UNSET)"                             shift, and go to state 57
20475    "isset (T_ISSET)"                             shift, and go to state 58
20476    "empty (T_EMPTY)"                             shift, and go to state 59
20477    "list (T_LIST)"                               shift, and go to state 64
20478    "array (T_ARRAY)"                             shift, and go to state 65
20479    "__LINE__ (T_LINE)"                           shift, and go to state 66
20480    "__FILE__ (T_FILE)"                           shift, and go to state 67
20481    "__DIR__ (T_DIR)"                             shift, and go to state 68
20482    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
20483    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
20484    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
20485    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
20486    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
20487    "namespace (T_NAMESPACE)"                     shift, and go to state 115
20488    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
20489    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
20490    '('                                           shift, and go to state 77
20491    ';'                                           shift, and go to state 78
20492    '{'                                           shift, and go to state 79
20493    '`'                                           shift, and go to state 80
20494    '"'                                           shift, and go to state 81
20495    '$'                                           shift, and go to state 82
20496
20497    namespace_name              go to state 83
20498    name                        go to state 84
20499    statement                   go to state 709
20500    declare_statement           go to state 710
20501    if_stmt_without_else        go to state 93
20502    if_stmt                     go to state 94
20503    alt_if_stmt_without_else    go to state 95
20504    alt_if_stmt                 go to state 96
20505    new_expr                    go to state 97
20506    expr                        go to state 98
20507    function                    go to state 117
20508    function_call               go to state 100
20509    class_name                  go to state 101
20510    dereferencable_scalar       go to state 102
20511    scalar                      go to state 103
20512    constant                    go to state 104
20513    variable_class_name         go to state 105
20514    dereferencable              go to state 106
20515    callable_expr               go to state 107
20516    callable_variable           go to state 108
20517    variable                    go to state 109
20518    simple_variable             go to state 110
20519    static_member               go to state 111
20520    internal_functions_in_yacc  go to state 112
20521
20522
20523State 646
20524
20525  200 switch_case_list: ':' . case_list "endswitch (T_ENDSWITCH)" ';'
20526  201                 | ':' . ';' case_list "endswitch (T_ENDSWITCH)" ';'
20527
20528    ';'  shift, and go to state 711
20529
20530    $default  reduce using rule 202 (case_list)
20531
20532    case_list  go to state 712
20533
20534
20535State 647
20536
20537  198 switch_case_list: '{' . case_list '}'
20538  199                 | '{' . ';' case_list '}'
20539
20540    ';'  shift, and go to state 713
20541
20542    $default  reduce using rule 202 (case_list)
20543
20544    case_list  go to state 714
20545
20546
20547State 648
20548
20549  137 statement: "switch (T_SWITCH)" '(' expr ')' switch_case_list .
20550
20551    $default  reduce using rule 137 (statement)
20552
20553
20554State 649
20555
20556  289 const_decl: "identifier (T_STRING)" '=' expr backup_doc_comment .
20557
20558    $default  reduce using rule 289 (const_decl)
20559
20560
20561State 650
20562
20563  152 statement: "try (T_TRY)" '{' inner_statement_list '}' catch_list . finally_statement
20564  157 catch_list: catch_list . "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list '}'
20565
20566    "catch (T_CATCH)"      shift, and go to state 715
20567    "finally (T_FINALLY)"  shift, and go to state 716
20568
20569    $default  reduce using rule 160 (finally_statement)
20570
20571    finally_statement  go to state 717
20572
20573
20574State 651
20575
20576  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' . inline_use_declarations possible_comma '}'
20577
20578    "identifier (T_STRING)"  shift, and go to state 114
20579    "function (T_FUNCTION)"  shift, and go to state 186
20580    "const (T_CONST)"        shift, and go to state 187
20581
20582    namespace_name              go to state 574
20583    use_type                    go to state 652
20584    inline_use_declarations     go to state 718
20585    inline_use_declaration      go to state 654
20586    unprefixed_use_declaration  go to state 655
20587
20588
20589State 652
20590
20591  116 inline_use_declaration: use_type . unprefixed_use_declaration
20592
20593    "identifier (T_STRING)"  shift, and go to state 114
20594
20595    namespace_name              go to state 574
20596    unprefixed_use_declaration  go to state 719
20597
20598
20599State 653
20600
20601  105 mixed_group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations . possible_comma '}'
20602  109 inline_use_declarations: inline_use_declarations . ',' inline_use_declaration
20603
20604    ','  shift, and go to state 720
20605
20606    $default  reduce using rule 107 (possible_comma)
20607
20608    possible_comma  go to state 721
20609
20610
20611State 654
20612
20613  110 inline_use_declarations: inline_use_declaration .
20614
20615    $default  reduce using rule 110 (inline_use_declarations)
20616
20617
20618State 655
20619
20620  115 inline_use_declaration: unprefixed_use_declaration .
20621
20622    $default  reduce using rule 115 (inline_use_declaration)
20623
20624
20625State 656
20626
20627   81 namespace_name: namespace_name "\\ (T_NS_SEPARATOR)" . "identifier (T_STRING)"
20628  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" . '{' unprefixed_use_declarations possible_comma '}'
20629
20630    "identifier (T_STRING)"  shift, and go to state 386
20631    '{'                      shift, and go to state 722
20632
20633
20634State 657
20635
20636  103 group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' . unprefixed_use_declarations possible_comma '}'
20637
20638    "identifier (T_STRING)"  shift, and go to state 114
20639
20640    namespace_name               go to state 574
20641    unprefixed_use_declarations  go to state 723
20642    unprefixed_use_declaration   go to state 724
20643
20644
20645State 658
20646
20647  163 unset_variables: unset_variables ',' unset_variable .
20648
20649    $default  reduce using rule 163 (unset_variables)
20650
20651
20652State 659
20653
20654  146 statement: "unset (T_UNSET)" '(' unset_variables possible_comma ')' . ';'
20655
20656    ';'  shift, and go to state 725
20657
20658
20659State 660
20660
20661  495 isset_variables: isset_variables ',' isset_variable .
20662
20663    $default  reduce using rule 495 (isset_variables)
20664
20665
20666State 661
20667
20668  487 internal_functions_in_yacc: "isset (T_ISSET)" '(' isset_variables possible_comma ')' .
20669
20670    $default  reduce using rule 487 (internal_functions_in_yacc)
20671
20672
20673State 662
20674
20675  183 extends_from: "extends (T_EXTENDS)" name .
20676
20677    $default  reduce using rule 183 (extends_from)
20678
20679
20680State 663
20681
20682  187 implements_list: "implements (T_IMPLEMENTS)" . name_list
20683
20684    "identifier (T_STRING)"    shift, and go to state 114
20685    "namespace (T_NAMESPACE)"  shift, and go to state 115
20686    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
20687
20688    namespace_name  go to state 83
20689    name            go to state 666
20690    name_list       go to state 726
20691
20692
20693State 664
20694
20695  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" extends_from implements_list . backup_doc_comment '{' class_statement_list '}'
20696
20697    $default  reduce using rule 379 (backup_doc_comment)
20698
20699    backup_doc_comment  go to state 727
20700
20701
20702State 665
20703
20704  179 trait_declaration_statement: "trait (T_TRAIT)" @6 "identifier (T_STRING)" backup_doc_comment '{' . class_statement_list '}'
20705
20706    $default  reduce using rule 246 (class_statement_list)
20707
20708    class_statement_list  go to state 728
20709
20710
20711State 666
20712
20713  251 name_list: name .
20714
20715    $default  reduce using rule 251 (name_list)
20716
20717
20718State 667
20719
20720  185 interface_extends_list: "extends (T_EXTENDS)" name_list .
20721  252 name_list: name_list . ',' name
20722
20723    ','  shift, and go to state 729
20724
20725    $default  reduce using rule 185 (interface_extends_list)
20726
20727
20728State 668
20729
20730  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 "identifier (T_STRING)" interface_extends_list backup_doc_comment . '{' class_statement_list '}'
20731
20732    '{'  shift, and go to state 730
20733
20734
20735State 669
20736
20737  302 expr: "list (T_LIST)" '(' array_pair_list ')' '=' . expr
20738
20739    "include (T_INCLUDE)"                         shift, and go to state 4
20740    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
20741    "eval (T_EVAL)"                               shift, and go to state 6
20742    "require (T_REQUIRE)"                         shift, and go to state 7
20743    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
20744    "print (T_PRINT)"                             shift, and go to state 9
20745    "yield (T_YIELD)"                             shift, and go to state 10
20746    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
20747    '+'                                           shift, and go to state 12
20748    '-'                                           shift, and go to state 13
20749    '!'                                           shift, and go to state 14
20750    '~'                                           shift, and go to state 15
20751    "++ (T_INC)"                                  shift, and go to state 16
20752    "-- (T_DEC)"                                  shift, and go to state 17
20753    "(int) (T_INT_CAST)"                          shift, and go to state 18
20754    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
20755    "(string) (T_STRING_CAST)"                    shift, and go to state 20
20756    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
20757    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
20758    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
20759    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
20760    '@'                                           shift, and go to state 25
20761    '['                                           shift, and go to state 26
20762    "new (T_NEW)"                                 shift, and go to state 27
20763    "clone (T_CLONE)"                             shift, and go to state 28
20764    "static (T_STATIC)"                           shift, and go to state 113
20765    "integer number (T_LNUMBER)"                  shift, and go to state 32
20766    "floating-point number (T_DNUMBER)"           shift, and go to state 33
20767    "identifier (T_STRING)"                       shift, and go to state 114
20768    "variable (T_VARIABLE)"                       shift, and go to state 35
20769    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
20770    "exit (T_EXIT)"                               shift, and go to state 38
20771    "function (T_FUNCTION)"                       shift, and go to state 50
20772    "isset (T_ISSET)"                             shift, and go to state 58
20773    "empty (T_EMPTY)"                             shift, and go to state 59
20774    "list (T_LIST)"                               shift, and go to state 64
20775    "array (T_ARRAY)"                             shift, and go to state 65
20776    "__LINE__ (T_LINE)"                           shift, and go to state 66
20777    "__FILE__ (T_FILE)"                           shift, and go to state 67
20778    "__DIR__ (T_DIR)"                             shift, and go to state 68
20779    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
20780    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
20781    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
20782    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
20783    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
20784    "namespace (T_NAMESPACE)"                     shift, and go to state 115
20785    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
20786    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
20787    '('                                           shift, and go to state 77
20788    '`'                                           shift, and go to state 80
20789    '"'                                           shift, and go to state 81
20790    '$'                                           shift, and go to state 82
20791
20792    namespace_name              go to state 83
20793    name                        go to state 84
20794    new_expr                    go to state 97
20795    expr                        go to state 731
20796    function                    go to state 117
20797    function_call               go to state 100
20798    class_name                  go to state 101
20799    dereferencable_scalar       go to state 102
20800    scalar                      go to state 103
20801    constant                    go to state 104
20802    variable_class_name         go to state 105
20803    dereferencable              go to state 106
20804    callable_expr               go to state 107
20805    callable_variable           go to state 108
20806    variable                    go to state 109
20807    simple_variable             go to state 110
20808    static_member               go to state 111
20809    internal_functions_in_yacc  go to state 112
20810
20811
20812State 670
20813
20814  485 encaps_var_offset: '-' "number (T_NUM_STRING)" .
20815
20816    $default  reduce using rule 485 (encaps_var_offset)
20817
20818
20819State 671
20820
20821  477 encaps_var: "variable (T_VARIABLE)" '[' encaps_var_offset ']' .
20822
20823    $default  reduce using rule 477 (encaps_var)
20824
20825
20826State 672
20827
20828  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
20829  324     | expr . "&& (T_BOOLEAN_AND)" expr
20830  325     | expr . "or (T_LOGICAL_OR)" expr
20831  326     | expr . "and (T_LOGICAL_AND)" expr
20832  327     | expr . "xor (T_LOGICAL_XOR)" expr
20833  328     | expr . '|' expr
20834  329     | expr . '&' expr
20835  330     | expr . '^' expr
20836  331     | expr . '.' expr
20837  332     | expr . '+' expr
20838  333     | expr . '-' expr
20839  334     | expr . '*' expr
20840  335     | expr . "** (T_POW)" expr
20841  336     | expr . '/' expr
20842  337     | expr . '%' expr
20843  338     | expr . "<< (T_SL)" expr
20844  339     | expr . ">> (T_SR)" expr
20845  344     | expr . "=== (T_IS_IDENTICAL)" expr
20846  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
20847  346     | expr . "== (T_IS_EQUAL)" expr
20848  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
20849  348     | expr . '<' expr
20850  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
20851  350     | expr . '>' expr
20852  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
20853  352     | expr . "<=> (T_SPACESHIP)" expr
20854  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
20855  356     | expr . '?' expr ':' expr
20856  357     | expr . '?' ':' expr
20857  358     | expr . "?? (T_COALESCE)" expr
20858  481 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' expr . ']' '}'
20859
20860    "or (T_LOGICAL_OR)"           shift, and go to state 237
20861    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
20862    "and (T_LOGICAL_AND)"         shift, and go to state 239
20863    '?'                           shift, and go to state 240
20864    "?? (T_COALESCE)"             shift, and go to state 241
20865    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
20866    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
20867    '|'                           shift, and go to state 244
20868    '^'                           shift, and go to state 245
20869    '&'                           shift, and go to state 246
20870    "== (T_IS_EQUAL)"             shift, and go to state 247
20871    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
20872    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
20873    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
20874    "<=> (T_SPACESHIP)"           shift, and go to state 251
20875    '<'                           shift, and go to state 252
20876    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
20877    '>'                           shift, and go to state 254
20878    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
20879    "<< (T_SL)"                   shift, and go to state 256
20880    ">> (T_SR)"                   shift, and go to state 257
20881    '+'                           shift, and go to state 258
20882    '-'                           shift, and go to state 259
20883    '.'                           shift, and go to state 260
20884    '*'                           shift, and go to state 261
20885    '/'                           shift, and go to state 262
20886    '%'                           shift, and go to state 263
20887    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
20888    "** (T_POW)"                  shift, and go to state 265
20889    ']'                           shift, and go to state 732
20890
20891
20892State 673
20893
20894   78 top_statement_list: top_statement_list . top_statement
20895   93 top_statement: "namespace (T_NAMESPACE)" namespace_name $@1 '{' top_statement_list . '}'
20896
20897    "include (T_INCLUDE)"                         shift, and go to state 4
20898    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
20899    "eval (T_EVAL)"                               shift, and go to state 6
20900    "require (T_REQUIRE)"                         shift, and go to state 7
20901    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
20902    "print (T_PRINT)"                             shift, and go to state 9
20903    "yield (T_YIELD)"                             shift, and go to state 10
20904    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
20905    '+'                                           shift, and go to state 12
20906    '-'                                           shift, and go to state 13
20907    '!'                                           shift, and go to state 14
20908    '~'                                           shift, and go to state 15
20909    "++ (T_INC)"                                  shift, and go to state 16
20910    "-- (T_DEC)"                                  shift, and go to state 17
20911    "(int) (T_INT_CAST)"                          shift, and go to state 18
20912    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
20913    "(string) (T_STRING_CAST)"                    shift, and go to state 20
20914    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
20915    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
20916    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
20917    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
20918    '@'                                           shift, and go to state 25
20919    '['                                           shift, and go to state 26
20920    "new (T_NEW)"                                 shift, and go to state 27
20921    "clone (T_CLONE)"                             shift, and go to state 28
20922    "static (T_STATIC)"                           shift, and go to state 29
20923    "abstract (T_ABSTRACT)"                       shift, and go to state 30
20924    "final (T_FINAL)"                             shift, and go to state 31
20925    "integer number (T_LNUMBER)"                  shift, and go to state 32
20926    "floating-point number (T_DNUMBER)"           shift, and go to state 33
20927    "identifier (T_STRING)"                       shift, and go to state 34
20928    "variable (T_VARIABLE)"                       shift, and go to state 35
20929    T_INLINE_HTML                                 shift, and go to state 36
20930    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
20931    "exit (T_EXIT)"                               shift, and go to state 38
20932    "if (T_IF)"                                   shift, and go to state 39
20933    "echo (T_ECHO)"                               shift, and go to state 40
20934    "do (T_DO)"                                   shift, and go to state 41
20935    "while (T_WHILE)"                             shift, and go to state 42
20936    "for (T_FOR)"                                 shift, and go to state 43
20937    "foreach (T_FOREACH)"                         shift, and go to state 44
20938    "declare (T_DECLARE)"                         shift, and go to state 45
20939    "switch (T_SWITCH)"                           shift, and go to state 46
20940    "break (T_BREAK)"                             shift, and go to state 47
20941    "continue (T_CONTINUE)"                       shift, and go to state 48
20942    "goto (T_GOTO)"                               shift, and go to state 49
20943    "function (T_FUNCTION)"                       shift, and go to state 50
20944    "const (T_CONST)"                             shift, and go to state 51
20945    "return (T_RETURN)"                           shift, and go to state 52
20946    "try (T_TRY)"                                 shift, and go to state 53
20947    "throw (T_THROW)"                             shift, and go to state 54
20948    "use (T_USE)"                                 shift, and go to state 55
20949    "global (T_GLOBAL)"                           shift, and go to state 56
20950    "unset (T_UNSET)"                             shift, and go to state 57
20951    "isset (T_ISSET)"                             shift, and go to state 58
20952    "empty (T_EMPTY)"                             shift, and go to state 59
20953    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 60
20954    "class (T_CLASS)"                             shift, and go to state 61
20955    "trait (T_TRAIT)"                             shift, and go to state 62
20956    "interface (T_INTERFACE)"                     shift, and go to state 63
20957    "list (T_LIST)"                               shift, and go to state 64
20958    "array (T_ARRAY)"                             shift, and go to state 65
20959    "__LINE__ (T_LINE)"                           shift, and go to state 66
20960    "__FILE__ (T_FILE)"                           shift, and go to state 67
20961    "__DIR__ (T_DIR)"                             shift, and go to state 68
20962    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
20963    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
20964    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
20965    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
20966    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
20967    "namespace (T_NAMESPACE)"                     shift, and go to state 74
20968    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
20969    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
20970    '('                                           shift, and go to state 77
20971    ';'                                           shift, and go to state 78
20972    '{'                                           shift, and go to state 79
20973    '}'                                           shift, and go to state 733
20974    '`'                                           shift, and go to state 80
20975    '"'                                           shift, and go to state 81
20976    '$'                                           shift, and go to state 82
20977
20978    namespace_name                   go to state 83
20979    name                             go to state 84
20980    top_statement                    go to state 85
20981    statement                        go to state 86
20982    function_declaration_statement   go to state 87
20983    class_declaration_statement      go to state 88
20984    class_modifiers                  go to state 89
20985    class_modifier                   go to state 90
20986    trait_declaration_statement      go to state 91
20987    interface_declaration_statement  go to state 92
20988    if_stmt_without_else             go to state 93
20989    if_stmt                          go to state 94
20990    alt_if_stmt_without_else         go to state 95
20991    alt_if_stmt                      go to state 96
20992    new_expr                         go to state 97
20993    expr                             go to state 98
20994    function                         go to state 99
20995    function_call                    go to state 100
20996    class_name                       go to state 101
20997    dereferencable_scalar            go to state 102
20998    scalar                           go to state 103
20999    constant                         go to state 104
21000    variable_class_name              go to state 105
21001    dereferencable                   go to state 106
21002    callable_expr                    go to state 107
21003    callable_variable                go to state 108
21004    variable                         go to state 109
21005    simple_variable                  go to state 110
21006    static_member                    go to state 111
21007    internal_functions_in_yacc       go to state 112
21008
21009
21010State 674
21011
21012   95 top_statement: "namespace (T_NAMESPACE)" $@2 '{' top_statement_list '}' .
21013
21014    $default  reduce using rule 95 (top_statement)
21015
21016
21017State 675
21018
21019  130 inner_statement: "__halt_compiler (T_HALT_COMPILER)" '(' ')' . ';'
21020
21021    ';'  shift, and go to state 734
21022
21023
21024State 676
21025
21026  235 non_empty_argument_list: non_empty_argument_list ',' argument .
21027
21028    $default  reduce using rule 235 (non_empty_argument_list)
21029
21030
21031State 677
21032
21033  233 argument_list: '(' non_empty_argument_list possible_comma ')' .
21034
21035    $default  reduce using rule 233 (argument_list)
21036
21037
21038State 678
21039
21040  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from . implements_list backup_doc_comment '{' class_statement_list '}'
21041
21042    "implements (T_IMPLEMENTS)"  shift, and go to state 663
21043
21044    $default  reduce using rule 186 (implements_list)
21045
21046    implements_list  go to state 735
21047
21048
21049State 679
21050
21051  210 if_stmt_without_else: if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' . statement
21052
21053    "include (T_INCLUDE)"                         shift, and go to state 4
21054    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
21055    "eval (T_EVAL)"                               shift, and go to state 6
21056    "require (T_REQUIRE)"                         shift, and go to state 7
21057    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
21058    "print (T_PRINT)"                             shift, and go to state 9
21059    "yield (T_YIELD)"                             shift, and go to state 10
21060    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
21061    '+'                                           shift, and go to state 12
21062    '-'                                           shift, and go to state 13
21063    '!'                                           shift, and go to state 14
21064    '~'                                           shift, and go to state 15
21065    "++ (T_INC)"                                  shift, and go to state 16
21066    "-- (T_DEC)"                                  shift, and go to state 17
21067    "(int) (T_INT_CAST)"                          shift, and go to state 18
21068    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
21069    "(string) (T_STRING_CAST)"                    shift, and go to state 20
21070    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
21071    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
21072    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
21073    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
21074    '@'                                           shift, and go to state 25
21075    '['                                           shift, and go to state 26
21076    "new (T_NEW)"                                 shift, and go to state 27
21077    "clone (T_CLONE)"                             shift, and go to state 28
21078    "static (T_STATIC)"                           shift, and go to state 29
21079    "integer number (T_LNUMBER)"                  shift, and go to state 32
21080    "floating-point number (T_DNUMBER)"           shift, and go to state 33
21081    "identifier (T_STRING)"                       shift, and go to state 34
21082    "variable (T_VARIABLE)"                       shift, and go to state 35
21083    T_INLINE_HTML                                 shift, and go to state 36
21084    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
21085    "exit (T_EXIT)"                               shift, and go to state 38
21086    "if (T_IF)"                                   shift, and go to state 39
21087    "echo (T_ECHO)"                               shift, and go to state 40
21088    "do (T_DO)"                                   shift, and go to state 41
21089    "while (T_WHILE)"                             shift, and go to state 42
21090    "for (T_FOR)"                                 shift, and go to state 43
21091    "foreach (T_FOREACH)"                         shift, and go to state 44
21092    "declare (T_DECLARE)"                         shift, and go to state 45
21093    "switch (T_SWITCH)"                           shift, and go to state 46
21094    "break (T_BREAK)"                             shift, and go to state 47
21095    "continue (T_CONTINUE)"                       shift, and go to state 48
21096    "goto (T_GOTO)"                               shift, and go to state 49
21097    "function (T_FUNCTION)"                       shift, and go to state 50
21098    "return (T_RETURN)"                           shift, and go to state 52
21099    "try (T_TRY)"                                 shift, and go to state 53
21100    "throw (T_THROW)"                             shift, and go to state 54
21101    "global (T_GLOBAL)"                           shift, and go to state 56
21102    "unset (T_UNSET)"                             shift, and go to state 57
21103    "isset (T_ISSET)"                             shift, and go to state 58
21104    "empty (T_EMPTY)"                             shift, and go to state 59
21105    "list (T_LIST)"                               shift, and go to state 64
21106    "array (T_ARRAY)"                             shift, and go to state 65
21107    "__LINE__ (T_LINE)"                           shift, and go to state 66
21108    "__FILE__ (T_FILE)"                           shift, and go to state 67
21109    "__DIR__ (T_DIR)"                             shift, and go to state 68
21110    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
21111    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
21112    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
21113    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
21114    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
21115    "namespace (T_NAMESPACE)"                     shift, and go to state 115
21116    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
21117    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
21118    '('                                           shift, and go to state 77
21119    ';'                                           shift, and go to state 78
21120    '{'                                           shift, and go to state 79
21121    '`'                                           shift, and go to state 80
21122    '"'                                           shift, and go to state 81
21123    '$'                                           shift, and go to state 82
21124
21125    namespace_name              go to state 83
21126    name                        go to state 84
21127    statement                   go to state 736
21128    if_stmt_without_else        go to state 93
21129    if_stmt                     go to state 94
21130    alt_if_stmt_without_else    go to state 95
21131    alt_if_stmt                 go to state 96
21132    new_expr                    go to state 97
21133    expr                        go to state 98
21134    function                    go to state 117
21135    function_call               go to state 100
21136    class_name                  go to state 101
21137    dereferencable_scalar       go to state 102
21138    scalar                      go to state 103
21139    constant                    go to state 104
21140    variable_class_name         go to state 105
21141    dereferencable              go to state 106
21142    callable_expr               go to state 107
21143    callable_variable           go to state 108
21144    variable                    go to state 109
21145    simple_variable             go to state 110
21146    static_member               go to state 111
21147    internal_functions_in_yacc  go to state 112
21148
21149
21150State 680
21151
21152  214 alt_if_stmt_without_else: alt_if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' . ':' inner_statement_list
21153
21154    ':'  shift, and go to state 737
21155
21156
21157State 681
21158
21159  216 alt_if_stmt: alt_if_stmt_without_else "else (T_ELSE)" ':' inner_statement_list "endif (T_ENDIF)" . ';'
21160
21161    ';'  shift, and go to state 738
21162
21163
21164State 682
21165
21166  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
21167  324     | expr . "&& (T_BOOLEAN_AND)" expr
21168  325     | expr . "or (T_LOGICAL_OR)" expr
21169  326     | expr . "and (T_LOGICAL_AND)" expr
21170  327     | expr . "xor (T_LOGICAL_XOR)" expr
21171  328     | expr . '|' expr
21172  329     | expr . '&' expr
21173  330     | expr . '^' expr
21174  331     | expr . '.' expr
21175  332     | expr . '+' expr
21176  333     | expr . '-' expr
21177  334     | expr . '*' expr
21178  335     | expr . "** (T_POW)" expr
21179  336     | expr . '/' expr
21180  337     | expr . '%' expr
21181  338     | expr . "<< (T_SL)" expr
21182  339     | expr . ">> (T_SR)" expr
21183  344     | expr . "=== (T_IS_IDENTICAL)" expr
21184  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
21185  346     | expr . "== (T_IS_EQUAL)" expr
21186  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
21187  348     | expr . '<' expr
21188  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
21189  350     | expr . '>' expr
21190  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
21191  352     | expr . "<=> (T_SPACESHIP)" expr
21192  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
21193  356     | expr . '?' expr ':' expr
21194  356     | expr '?' expr ':' expr .
21195  357     | expr . '?' ':' expr
21196  358     | expr . "?? (T_COALESCE)" expr
21197
21198    "?? (T_COALESCE)"             shift, and go to state 241
21199    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
21200    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
21201    '|'                           shift, and go to state 244
21202    '^'                           shift, and go to state 245
21203    '&'                           shift, and go to state 246
21204    "== (T_IS_EQUAL)"             shift, and go to state 247
21205    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
21206    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
21207    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
21208    "<=> (T_SPACESHIP)"           shift, and go to state 251
21209    '<'                           shift, and go to state 252
21210    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
21211    '>'                           shift, and go to state 254
21212    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
21213    "<< (T_SL)"                   shift, and go to state 256
21214    ">> (T_SR)"                   shift, and go to state 257
21215    '+'                           shift, and go to state 258
21216    '-'                           shift, and go to state 259
21217    '.'                           shift, and go to state 260
21218    '*'                           shift, and go to state 261
21219    '/'                           shift, and go to state 262
21220    '%'                           shift, and go to state 263
21221    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
21222    "** (T_POW)"                  shift, and go to state 265
21223
21224    $default  reduce using rule 356 (expr)
21225
21226
21227State 683
21228
21229  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' . parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
21230
21231    '?'                        shift, and go to state 684
21232    "identifier (T_STRING)"    shift, and go to state 114
21233    "array (T_ARRAY)"          shift, and go to state 685
21234    "callable (T_CALLABLE)"    shift, and go to state 686
21235    "namespace (T_NAMESPACE)"  shift, and go to state 115
21236    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
21237
21238    ')'       reduce using rule 218 (parameter_list)
21239    $default  reduce using rule 223 (optional_type)
21240
21241    namespace_name            go to state 83
21242    name                      go to state 687
21243    parameter_list            go to state 739
21244    non_empty_parameter_list  go to state 689
21245    parameter                 go to state 690
21246    optional_type             go to state 691
21247    type_expr                 go to state 692
21248    type                      go to state 693
21249
21250
21251State 684
21252
21253  226 type_expr: '?' . type
21254
21255    "identifier (T_STRING)"    shift, and go to state 114
21256    "array (T_ARRAY)"          shift, and go to state 685
21257    "callable (T_CALLABLE)"    shift, and go to state 686
21258    "namespace (T_NAMESPACE)"  shift, and go to state 115
21259    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
21260
21261    namespace_name  go to state 83
21262    name            go to state 687
21263    type            go to state 740
21264
21265
21266State 685
21267
21268  227 type: "array (T_ARRAY)" .
21269
21270    $default  reduce using rule 227 (type)
21271
21272
21273State 686
21274
21275  228 type: "callable (T_CALLABLE)" .
21276
21277    $default  reduce using rule 228 (type)
21278
21279
21280State 687
21281
21282  229 type: name .
21283
21284    $default  reduce using rule 229 (type)
21285
21286
21287State 688
21288
21289  376 expr: function returns_ref backup_doc_comment '(' parameter_list . ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
21290
21291    ')'  shift, and go to state 741
21292
21293
21294State 689
21295
21296  217 parameter_list: non_empty_parameter_list .
21297  220 non_empty_parameter_list: non_empty_parameter_list . ',' parameter
21298
21299    ','  shift, and go to state 742
21300
21301    $default  reduce using rule 217 (parameter_list)
21302
21303
21304State 690
21305
21306  219 non_empty_parameter_list: parameter .
21307
21308    $default  reduce using rule 219 (non_empty_parameter_list)
21309
21310
21311State 691
21312
21313  221 parameter: optional_type . is_reference is_variadic "variable (T_VARIABLE)"
21314  222          | optional_type . is_reference is_variadic "variable (T_VARIABLE)" '=' expr
21315
21316    '&'  shift, and go to state 743
21317
21318    $default  reduce using rule 166 (is_reference)
21319
21320    is_reference  go to state 744
21321
21322
21323State 692
21324
21325  224 optional_type: type_expr .
21326
21327    $default  reduce using rule 224 (optional_type)
21328
21329
21330State 693
21331
21332  225 type_expr: type .
21333
21334    $default  reduce using rule 225 (type_expr)
21335
21336
21337State 694
21338
21339  456 member_name: '{' expr '}' .
21340
21341    $default  reduce using rule 456 (member_name)
21342
21343
21344State 695
21345
21346  459 property_name: '{' expr '}' .
21347
21348    $default  reduce using rule 459 (property_name)
21349
21350
21351State 696
21352
21353  302 expr: "list (T_LIST)" '(' array_pair_list . ')' '=' expr
21354  470 array_pair: expr "=> (T_DOUBLE_ARROW)" "list (T_LIST)" '(' array_pair_list . ')'
21355
21356    ')'  shift, and go to state 745
21357
21358
21359State 697
21360
21361  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments extends_from implements_list . backup_doc_comment '{' class_statement_list '}'
21362
21363    $default  reduce using rule 379 (backup_doc_comment)
21364
21365    backup_doc_comment  go to state 746
21366
21367
21368State 698
21369
21370  377 expr: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list . ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
21371
21372    ')'  shift, and go to state 747
21373
21374
21375State 699
21376
21377  123 inner_statement_list: inner_statement_list . inner_statement
21378  213 alt_if_stmt_without_else: "if (T_IF)" '(' expr ')' ':' inner_statement_list .
21379
21380    "include (T_INCLUDE)"                         shift, and go to state 4
21381    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
21382    "eval (T_EVAL)"                               shift, and go to state 6
21383    "require (T_REQUIRE)"                         shift, and go to state 7
21384    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
21385    "print (T_PRINT)"                             shift, and go to state 9
21386    "yield (T_YIELD)"                             shift, and go to state 10
21387    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
21388    '+'                                           shift, and go to state 12
21389    '-'                                           shift, and go to state 13
21390    '!'                                           shift, and go to state 14
21391    '~'                                           shift, and go to state 15
21392    "++ (T_INC)"                                  shift, and go to state 16
21393    "-- (T_DEC)"                                  shift, and go to state 17
21394    "(int) (T_INT_CAST)"                          shift, and go to state 18
21395    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
21396    "(string) (T_STRING_CAST)"                    shift, and go to state 20
21397    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
21398    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
21399    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
21400    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
21401    '@'                                           shift, and go to state 25
21402    '['                                           shift, and go to state 26
21403    "new (T_NEW)"                                 shift, and go to state 27
21404    "clone (T_CLONE)"                             shift, and go to state 28
21405    "static (T_STATIC)"                           shift, and go to state 29
21406    "abstract (T_ABSTRACT)"                       shift, and go to state 30
21407    "final (T_FINAL)"                             shift, and go to state 31
21408    "integer number (T_LNUMBER)"                  shift, and go to state 32
21409    "floating-point number (T_DNUMBER)"           shift, and go to state 33
21410    "identifier (T_STRING)"                       shift, and go to state 34
21411    "variable (T_VARIABLE)"                       shift, and go to state 35
21412    T_INLINE_HTML                                 shift, and go to state 36
21413    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
21414    "exit (T_EXIT)"                               shift, and go to state 38
21415    "if (T_IF)"                                   shift, and go to state 39
21416    "echo (T_ECHO)"                               shift, and go to state 40
21417    "do (T_DO)"                                   shift, and go to state 41
21418    "while (T_WHILE)"                             shift, and go to state 42
21419    "for (T_FOR)"                                 shift, and go to state 43
21420    "foreach (T_FOREACH)"                         shift, and go to state 44
21421    "declare (T_DECLARE)"                         shift, and go to state 45
21422    "switch (T_SWITCH)"                           shift, and go to state 46
21423    "break (T_BREAK)"                             shift, and go to state 47
21424    "continue (T_CONTINUE)"                       shift, and go to state 48
21425    "goto (T_GOTO)"                               shift, and go to state 49
21426    "function (T_FUNCTION)"                       shift, and go to state 50
21427    "return (T_RETURN)"                           shift, and go to state 52
21428    "try (T_TRY)"                                 shift, and go to state 53
21429    "throw (T_THROW)"                             shift, and go to state 54
21430    "global (T_GLOBAL)"                           shift, and go to state 56
21431    "unset (T_UNSET)"                             shift, and go to state 57
21432    "isset (T_ISSET)"                             shift, and go to state 58
21433    "empty (T_EMPTY)"                             shift, and go to state 59
21434    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
21435    "class (T_CLASS)"                             shift, and go to state 61
21436    "trait (T_TRAIT)"                             shift, and go to state 62
21437    "interface (T_INTERFACE)"                     shift, and go to state 63
21438    "list (T_LIST)"                               shift, and go to state 64
21439    "array (T_ARRAY)"                             shift, and go to state 65
21440    "__LINE__ (T_LINE)"                           shift, and go to state 66
21441    "__FILE__ (T_FILE)"                           shift, and go to state 67
21442    "__DIR__ (T_DIR)"                             shift, and go to state 68
21443    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
21444    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
21445    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
21446    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
21447    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
21448    "namespace (T_NAMESPACE)"                     shift, and go to state 115
21449    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
21450    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
21451    '('                                           shift, and go to state 77
21452    ';'                                           shift, and go to state 78
21453    '{'                                           shift, and go to state 79
21454    '`'                                           shift, and go to state 80
21455    '"'                                           shift, and go to state 81
21456    '$'                                           shift, and go to state 82
21457
21458    $default  reduce using rule 213 (alt_if_stmt_without_else)
21459
21460    namespace_name                   go to state 83
21461    name                             go to state 84
21462    inner_statement                  go to state 377
21463    statement                        go to state 378
21464    function_declaration_statement   go to state 379
21465    class_declaration_statement      go to state 380
21466    class_modifiers                  go to state 89
21467    class_modifier                   go to state 90
21468    trait_declaration_statement      go to state 381
21469    interface_declaration_statement  go to state 382
21470    if_stmt_without_else             go to state 93
21471    if_stmt                          go to state 94
21472    alt_if_stmt_without_else         go to state 95
21473    alt_if_stmt                      go to state 96
21474    new_expr                         go to state 97
21475    expr                             go to state 98
21476    function                         go to state 99
21477    function_call                    go to state 100
21478    class_name                       go to state 101
21479    dereferencable_scalar            go to state 102
21480    scalar                           go to state 103
21481    constant                         go to state 104
21482    variable_class_name              go to state 105
21483    dereferencable                   go to state 106
21484    callable_expr                    go to state 107
21485    callable_variable                go to state 108
21486    variable                         go to state 109
21487    simple_variable                  go to state 110
21488    static_member                    go to state 111
21489    internal_functions_in_yacc       go to state 112
21490
21491
21492State 700
21493
21494  135 statement: "do (T_DO)" statement "while (T_WHILE)" '(' expr ')' . ';'
21495
21496    ';'  shift, and go to state 748
21497
21498
21499State 701
21500
21501  123 inner_statement_list: inner_statement_list . inner_statement
21502  208 while_statement: ':' inner_statement_list . "endwhile (T_ENDWHILE)" ';'
21503
21504    "include (T_INCLUDE)"                         shift, and go to state 4
21505    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
21506    "eval (T_EVAL)"                               shift, and go to state 6
21507    "require (T_REQUIRE)"                         shift, and go to state 7
21508    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
21509    "print (T_PRINT)"                             shift, and go to state 9
21510    "yield (T_YIELD)"                             shift, and go to state 10
21511    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
21512    '+'                                           shift, and go to state 12
21513    '-'                                           shift, and go to state 13
21514    '!'                                           shift, and go to state 14
21515    '~'                                           shift, and go to state 15
21516    "++ (T_INC)"                                  shift, and go to state 16
21517    "-- (T_DEC)"                                  shift, and go to state 17
21518    "(int) (T_INT_CAST)"                          shift, and go to state 18
21519    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
21520    "(string) (T_STRING_CAST)"                    shift, and go to state 20
21521    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
21522    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
21523    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
21524    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
21525    '@'                                           shift, and go to state 25
21526    '['                                           shift, and go to state 26
21527    "new (T_NEW)"                                 shift, and go to state 27
21528    "clone (T_CLONE)"                             shift, and go to state 28
21529    "static (T_STATIC)"                           shift, and go to state 29
21530    "abstract (T_ABSTRACT)"                       shift, and go to state 30
21531    "final (T_FINAL)"                             shift, and go to state 31
21532    "integer number (T_LNUMBER)"                  shift, and go to state 32
21533    "floating-point number (T_DNUMBER)"           shift, and go to state 33
21534    "identifier (T_STRING)"                       shift, and go to state 34
21535    "variable (T_VARIABLE)"                       shift, and go to state 35
21536    T_INLINE_HTML                                 shift, and go to state 36
21537    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
21538    "exit (T_EXIT)"                               shift, and go to state 38
21539    "if (T_IF)"                                   shift, and go to state 39
21540    "echo (T_ECHO)"                               shift, and go to state 40
21541    "do (T_DO)"                                   shift, and go to state 41
21542    "while (T_WHILE)"                             shift, and go to state 42
21543    "endwhile (T_ENDWHILE)"                       shift, and go to state 749
21544    "for (T_FOR)"                                 shift, and go to state 43
21545    "foreach (T_FOREACH)"                         shift, and go to state 44
21546    "declare (T_DECLARE)"                         shift, and go to state 45
21547    "switch (T_SWITCH)"                           shift, and go to state 46
21548    "break (T_BREAK)"                             shift, and go to state 47
21549    "continue (T_CONTINUE)"                       shift, and go to state 48
21550    "goto (T_GOTO)"                               shift, and go to state 49
21551    "function (T_FUNCTION)"                       shift, and go to state 50
21552    "return (T_RETURN)"                           shift, and go to state 52
21553    "try (T_TRY)"                                 shift, and go to state 53
21554    "throw (T_THROW)"                             shift, and go to state 54
21555    "global (T_GLOBAL)"                           shift, and go to state 56
21556    "unset (T_UNSET)"                             shift, and go to state 57
21557    "isset (T_ISSET)"                             shift, and go to state 58
21558    "empty (T_EMPTY)"                             shift, and go to state 59
21559    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
21560    "class (T_CLASS)"                             shift, and go to state 61
21561    "trait (T_TRAIT)"                             shift, and go to state 62
21562    "interface (T_INTERFACE)"                     shift, and go to state 63
21563    "list (T_LIST)"                               shift, and go to state 64
21564    "array (T_ARRAY)"                             shift, and go to state 65
21565    "__LINE__ (T_LINE)"                           shift, and go to state 66
21566    "__FILE__ (T_FILE)"                           shift, and go to state 67
21567    "__DIR__ (T_DIR)"                             shift, and go to state 68
21568    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
21569    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
21570    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
21571    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
21572    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
21573    "namespace (T_NAMESPACE)"                     shift, and go to state 115
21574    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
21575    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
21576    '('                                           shift, and go to state 77
21577    ';'                                           shift, and go to state 78
21578    '{'                                           shift, and go to state 79
21579    '`'                                           shift, and go to state 80
21580    '"'                                           shift, and go to state 81
21581    '$'                                           shift, and go to state 82
21582
21583    namespace_name                   go to state 83
21584    name                             go to state 84
21585    inner_statement                  go to state 377
21586    statement                        go to state 378
21587    function_declaration_statement   go to state 379
21588    class_declaration_statement      go to state 380
21589    class_modifiers                  go to state 89
21590    class_modifier                   go to state 90
21591    trait_declaration_statement      go to state 381
21592    interface_declaration_statement  go to state 382
21593    if_stmt_without_else             go to state 93
21594    if_stmt                          go to state 94
21595    alt_if_stmt_without_else         go to state 95
21596    alt_if_stmt                      go to state 96
21597    new_expr                         go to state 97
21598    expr                             go to state 98
21599    function                         go to state 99
21600    function_call                    go to state 100
21601    class_name                       go to state 101
21602    dereferencable_scalar            go to state 102
21603    scalar                           go to state 103
21604    constant                         go to state 104
21605    variable_class_name              go to state 105
21606    dereferencable                   go to state 106
21607    callable_expr                    go to state 107
21608    callable_variable                go to state 108
21609    variable                         go to state 109
21610    simple_variable                  go to state 110
21611    static_member                    go to state 111
21612    internal_functions_in_yacc       go to state 112
21613
21614
21615State 702
21616
21617  136 statement: "for (T_FOR)" '(' for_exprs ';' for_exprs ';' . for_exprs ')' for_statement
21618
21619    "include (T_INCLUDE)"                         shift, and go to state 4
21620    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
21621    "eval (T_EVAL)"                               shift, and go to state 6
21622    "require (T_REQUIRE)"                         shift, and go to state 7
21623    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
21624    "print (T_PRINT)"                             shift, and go to state 9
21625    "yield (T_YIELD)"                             shift, and go to state 10
21626    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
21627    '+'                                           shift, and go to state 12
21628    '-'                                           shift, and go to state 13
21629    '!'                                           shift, and go to state 14
21630    '~'                                           shift, and go to state 15
21631    "++ (T_INC)"                                  shift, and go to state 16
21632    "-- (T_DEC)"                                  shift, and go to state 17
21633    "(int) (T_INT_CAST)"                          shift, and go to state 18
21634    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
21635    "(string) (T_STRING_CAST)"                    shift, and go to state 20
21636    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
21637    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
21638    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
21639    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
21640    '@'                                           shift, and go to state 25
21641    '['                                           shift, and go to state 26
21642    "new (T_NEW)"                                 shift, and go to state 27
21643    "clone (T_CLONE)"                             shift, and go to state 28
21644    "static (T_STATIC)"                           shift, and go to state 113
21645    "integer number (T_LNUMBER)"                  shift, and go to state 32
21646    "floating-point number (T_DNUMBER)"           shift, and go to state 33
21647    "identifier (T_STRING)"                       shift, and go to state 114
21648    "variable (T_VARIABLE)"                       shift, and go to state 35
21649    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
21650    "exit (T_EXIT)"                               shift, and go to state 38
21651    "function (T_FUNCTION)"                       shift, and go to state 50
21652    "isset (T_ISSET)"                             shift, and go to state 58
21653    "empty (T_EMPTY)"                             shift, and go to state 59
21654    "list (T_LIST)"                               shift, and go to state 64
21655    "array (T_ARRAY)"                             shift, and go to state 65
21656    "__LINE__ (T_LINE)"                           shift, and go to state 66
21657    "__FILE__ (T_FILE)"                           shift, and go to state 67
21658    "__DIR__ (T_DIR)"                             shift, and go to state 68
21659    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
21660    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
21661    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
21662    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
21663    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
21664    "namespace (T_NAMESPACE)"                     shift, and go to state 115
21665    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
21666    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
21667    '('                                           shift, and go to state 77
21668    '`'                                           shift, and go to state 80
21669    '"'                                           shift, and go to state 81
21670    '$'                                           shift, and go to state 82
21671
21672    $default  reduce using rule 293 (for_exprs)
21673
21674    namespace_name              go to state 83
21675    name                        go to state 84
21676    for_exprs                   go to state 750
21677    non_empty_for_exprs         go to state 320
21678    new_expr                    go to state 97
21679    expr                        go to state 321
21680    function                    go to state 117
21681    function_call               go to state 100
21682    class_name                  go to state 101
21683    dereferencable_scalar       go to state 102
21684    scalar                      go to state 103
21685    constant                    go to state 104
21686    variable_class_name         go to state 105
21687    dereferencable              go to state 106
21688    callable_expr               go to state 107
21689    callable_variable           go to state 108
21690    variable                    go to state 109
21691    simple_variable             go to state 110
21692    static_member               go to state 111
21693    internal_functions_in_yacc  go to state 112
21694
21695
21696State 703
21697
21698  189 foreach_variable: '&' variable .
21699  429 dereferencable: variable .
21700
21701    "=> (T_DOUBLE_ARROW)"  reduce using rule 189 (foreach_variable)
21702    ')'                    reduce using rule 189 (foreach_variable)
21703    $default               reduce using rule 429 (dereferencable)
21704
21705
21706State 704
21707
21708  191 foreach_variable: '[' array_pair_list . ']'
21709  405 dereferencable_scalar: '[' array_pair_list . ']'
21710
21711    ']'  shift, and go to state 751
21712
21713
21714State 705
21715
21716  190 foreach_variable: "list (T_LIST)" '(' . array_pair_list ')'
21717
21718    "include (T_INCLUDE)"                         shift, and go to state 4
21719    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
21720    "eval (T_EVAL)"                               shift, and go to state 6
21721    "require (T_REQUIRE)"                         shift, and go to state 7
21722    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
21723    "print (T_PRINT)"                             shift, and go to state 9
21724    "yield (T_YIELD)"                             shift, and go to state 10
21725    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
21726    '&'                                           shift, and go to state 144
21727    '+'                                           shift, and go to state 12
21728    '-'                                           shift, and go to state 13
21729    '!'                                           shift, and go to state 14
21730    '~'                                           shift, and go to state 15
21731    "++ (T_INC)"                                  shift, and go to state 16
21732    "-- (T_DEC)"                                  shift, and go to state 17
21733    "(int) (T_INT_CAST)"                          shift, and go to state 18
21734    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
21735    "(string) (T_STRING_CAST)"                    shift, and go to state 20
21736    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
21737    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
21738    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
21739    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
21740    '@'                                           shift, and go to state 25
21741    '['                                           shift, and go to state 26
21742    "new (T_NEW)"                                 shift, and go to state 27
21743    "clone (T_CLONE)"                             shift, and go to state 28
21744    "static (T_STATIC)"                           shift, and go to state 113
21745    "integer number (T_LNUMBER)"                  shift, and go to state 32
21746    "floating-point number (T_DNUMBER)"           shift, and go to state 33
21747    "identifier (T_STRING)"                       shift, and go to state 114
21748    "variable (T_VARIABLE)"                       shift, and go to state 35
21749    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
21750    "exit (T_EXIT)"                               shift, and go to state 38
21751    "function (T_FUNCTION)"                       shift, and go to state 50
21752    "isset (T_ISSET)"                             shift, and go to state 58
21753    "empty (T_EMPTY)"                             shift, and go to state 59
21754    "list (T_LIST)"                               shift, and go to state 145
21755    "array (T_ARRAY)"                             shift, and go to state 65
21756    "__LINE__ (T_LINE)"                           shift, and go to state 66
21757    "__FILE__ (T_FILE)"                           shift, and go to state 67
21758    "__DIR__ (T_DIR)"                             shift, and go to state 68
21759    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
21760    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
21761    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
21762    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
21763    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
21764    "namespace (T_NAMESPACE)"                     shift, and go to state 115
21765    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
21766    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
21767    '('                                           shift, and go to state 77
21768    '`'                                           shift, and go to state 80
21769    '"'                                           shift, and go to state 81
21770    '$'                                           shift, and go to state 82
21771
21772    $default  reduce using rule 462 (possible_array_pair)
21773
21774    namespace_name              go to state 83
21775    name                        go to state 84
21776    new_expr                    go to state 97
21777    expr                        go to state 146
21778    function                    go to state 117
21779    function_call               go to state 100
21780    class_name                  go to state 101
21781    dereferencable_scalar       go to state 102
21782    scalar                      go to state 103
21783    constant                    go to state 104
21784    variable_class_name         go to state 105
21785    dereferencable              go to state 106
21786    callable_expr               go to state 107
21787    callable_variable           go to state 108
21788    variable                    go to state 109
21789    simple_variable             go to state 110
21790    static_member               go to state 111
21791    array_pair_list             go to state 752
21792    possible_array_pair         go to state 148
21793    non_empty_array_pair_list   go to state 149
21794    array_pair                  go to state 150
21795    internal_functions_in_yacc  go to state 112
21796
21797
21798State 706
21799
21800  148 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" . foreach_variable ')' foreach_statement
21801
21802    '&'                                           shift, and go to state 640
21803    '['                                           shift, and go to state 641
21804    "static (T_STATIC)"                           shift, and go to state 130
21805    "identifier (T_STRING)"                       shift, and go to state 114
21806    "variable (T_VARIABLE)"                       shift, and go to state 35
21807    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
21808    "list (T_LIST)"                               shift, and go to state 642
21809    "array (T_ARRAY)"                             shift, and go to state 65
21810    "namespace (T_NAMESPACE)"                     shift, and go to state 115
21811    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
21812    '('                                           shift, and go to state 131
21813    '$'                                           shift, and go to state 82
21814
21815    namespace_name         go to state 83
21816    name                   go to state 84
21817    foreach_variable       go to state 753
21818    function_call          go to state 100
21819    class_name             go to state 101
21820    dereferencable_scalar  go to state 132
21821    constant               go to state 133
21822    variable_class_name    go to state 105
21823    dereferencable         go to state 106
21824    callable_expr          go to state 107
21825    callable_variable      go to state 108
21826    variable               go to state 644
21827    simple_variable        go to state 110
21828    static_member          go to state 111
21829
21830
21831State 707
21832
21833  147 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable ')' . foreach_statement
21834
21835    "include (T_INCLUDE)"                         shift, and go to state 4
21836    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
21837    "eval (T_EVAL)"                               shift, and go to state 6
21838    "require (T_REQUIRE)"                         shift, and go to state 7
21839    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
21840    "print (T_PRINT)"                             shift, and go to state 9
21841    "yield (T_YIELD)"                             shift, and go to state 10
21842    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
21843    ':'                                           shift, and go to state 754
21844    '+'                                           shift, and go to state 12
21845    '-'                                           shift, and go to state 13
21846    '!'                                           shift, and go to state 14
21847    '~'                                           shift, and go to state 15
21848    "++ (T_INC)"                                  shift, and go to state 16
21849    "-- (T_DEC)"                                  shift, and go to state 17
21850    "(int) (T_INT_CAST)"                          shift, and go to state 18
21851    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
21852    "(string) (T_STRING_CAST)"                    shift, and go to state 20
21853    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
21854    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
21855    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
21856    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
21857    '@'                                           shift, and go to state 25
21858    '['                                           shift, and go to state 26
21859    "new (T_NEW)"                                 shift, and go to state 27
21860    "clone (T_CLONE)"                             shift, and go to state 28
21861    "static (T_STATIC)"                           shift, and go to state 29
21862    "integer number (T_LNUMBER)"                  shift, and go to state 32
21863    "floating-point number (T_DNUMBER)"           shift, and go to state 33
21864    "identifier (T_STRING)"                       shift, and go to state 34
21865    "variable (T_VARIABLE)"                       shift, and go to state 35
21866    T_INLINE_HTML                                 shift, and go to state 36
21867    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
21868    "exit (T_EXIT)"                               shift, and go to state 38
21869    "if (T_IF)"                                   shift, and go to state 39
21870    "echo (T_ECHO)"                               shift, and go to state 40
21871    "do (T_DO)"                                   shift, and go to state 41
21872    "while (T_WHILE)"                             shift, and go to state 42
21873    "for (T_FOR)"                                 shift, and go to state 43
21874    "foreach (T_FOREACH)"                         shift, and go to state 44
21875    "declare (T_DECLARE)"                         shift, and go to state 45
21876    "switch (T_SWITCH)"                           shift, and go to state 46
21877    "break (T_BREAK)"                             shift, and go to state 47
21878    "continue (T_CONTINUE)"                       shift, and go to state 48
21879    "goto (T_GOTO)"                               shift, and go to state 49
21880    "function (T_FUNCTION)"                       shift, and go to state 50
21881    "return (T_RETURN)"                           shift, and go to state 52
21882    "try (T_TRY)"                                 shift, and go to state 53
21883    "throw (T_THROW)"                             shift, and go to state 54
21884    "global (T_GLOBAL)"                           shift, and go to state 56
21885    "unset (T_UNSET)"                             shift, and go to state 57
21886    "isset (T_ISSET)"                             shift, and go to state 58
21887    "empty (T_EMPTY)"                             shift, and go to state 59
21888    "list (T_LIST)"                               shift, and go to state 64
21889    "array (T_ARRAY)"                             shift, and go to state 65
21890    "__LINE__ (T_LINE)"                           shift, and go to state 66
21891    "__FILE__ (T_FILE)"                           shift, and go to state 67
21892    "__DIR__ (T_DIR)"                             shift, and go to state 68
21893    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
21894    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
21895    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
21896    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
21897    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
21898    "namespace (T_NAMESPACE)"                     shift, and go to state 115
21899    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
21900    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
21901    '('                                           shift, and go to state 77
21902    ';'                                           shift, and go to state 78
21903    '{'                                           shift, and go to state 79
21904    '`'                                           shift, and go to state 80
21905    '"'                                           shift, and go to state 81
21906    '$'                                           shift, and go to state 82
21907
21908    namespace_name              go to state 83
21909    name                        go to state 84
21910    statement                   go to state 755
21911    foreach_statement           go to state 756
21912    if_stmt_without_else        go to state 93
21913    if_stmt                     go to state 94
21914    alt_if_stmt_without_else    go to state 95
21915    alt_if_stmt                 go to state 96
21916    new_expr                    go to state 97
21917    expr                        go to state 98
21918    function                    go to state 117
21919    function_call               go to state 100
21920    class_name                  go to state 101
21921    dereferencable_scalar       go to state 102
21922    scalar                      go to state 103
21923    constant                    go to state 104
21924    variable_class_name         go to state 105
21925    dereferencable              go to state 106
21926    callable_expr               go to state 107
21927    callable_variable           go to state 108
21928    variable                    go to state 109
21929    simple_variable             go to state 110
21930    static_member               go to state 111
21931    internal_functions_in_yacc  go to state 112
21932
21933
21934State 708
21935
21936  197 declare_statement: ':' . inner_statement_list "enddeclare (T_ENDDECLARE)" ';'
21937
21938    $default  reduce using rule 124 (inner_statement_list)
21939
21940    inner_statement_list  go to state 757
21941
21942
21943State 709
21944
21945  196 declare_statement: statement .
21946
21947    $default  reduce using rule 196 (declare_statement)
21948
21949
21950State 710
21951
21952  150 statement: "declare (T_DECLARE)" '(' const_list ')' $@3 declare_statement .
21953
21954    $default  reduce using rule 150 (statement)
21955
21956
21957State 711
21958
21959  201 switch_case_list: ':' ';' . case_list "endswitch (T_ENDSWITCH)" ';'
21960
21961    $default  reduce using rule 202 (case_list)
21962
21963    case_list  go to state 758
21964
21965
21966State 712
21967
21968  200 switch_case_list: ':' case_list . "endswitch (T_ENDSWITCH)" ';'
21969  203 case_list: case_list . "case (T_CASE)" expr case_separator inner_statement_list
21970  204          | case_list . "default (T_DEFAULT)" case_separator inner_statement_list
21971
21972    "endswitch (T_ENDSWITCH)"  shift, and go to state 759
21973    "case (T_CASE)"            shift, and go to state 760
21974    "default (T_DEFAULT)"      shift, and go to state 761
21975
21976
21977State 713
21978
21979  199 switch_case_list: '{' ';' . case_list '}'
21980
21981    $default  reduce using rule 202 (case_list)
21982
21983    case_list  go to state 762
21984
21985
21986State 714
21987
21988  198 switch_case_list: '{' case_list . '}'
21989  203 case_list: case_list . "case (T_CASE)" expr case_separator inner_statement_list
21990  204          | case_list . "default (T_DEFAULT)" case_separator inner_statement_list
21991
21992    "case (T_CASE)"        shift, and go to state 760
21993    "default (T_DEFAULT)"  shift, and go to state 761
21994    '}'                    shift, and go to state 763
21995
21996
21997State 715
21998
21999  157 catch_list: catch_list "catch (T_CATCH)" . '(' catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list '}'
22000
22001    '('  shift, and go to state 764
22002
22003
22004State 716
22005
22006  161 finally_statement: "finally (T_FINALLY)" . '{' inner_statement_list '}'
22007
22008    '{'  shift, and go to state 765
22009
22010
22011State 717
22012
22013  152 statement: "try (T_TRY)" '{' inner_statement_list '}' catch_list finally_statement .
22014
22015    $default  reduce using rule 152 (statement)
22016
22017
22018State 718
22019
22020  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations . possible_comma '}'
22021  109 inline_use_declarations: inline_use_declarations . ',' inline_use_declaration
22022
22023    ','  shift, and go to state 720
22024
22025    $default  reduce using rule 107 (possible_comma)
22026
22027    possible_comma  go to state 766
22028
22029
22030State 719
22031
22032  116 inline_use_declaration: use_type unprefixed_use_declaration .
22033
22034    $default  reduce using rule 116 (inline_use_declaration)
22035
22036
22037State 720
22038
22039  108 possible_comma: ',' .
22040  109 inline_use_declarations: inline_use_declarations ',' . inline_use_declaration
22041
22042    "identifier (T_STRING)"  shift, and go to state 114
22043    "function (T_FUNCTION)"  shift, and go to state 186
22044    "const (T_CONST)"        shift, and go to state 187
22045
22046    $default  reduce using rule 108 (possible_comma)
22047
22048    namespace_name              go to state 574
22049    use_type                    go to state 652
22050    inline_use_declaration      go to state 767
22051    unprefixed_use_declaration  go to state 655
22052
22053
22054State 721
22055
22056  105 mixed_group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma . '}'
22057
22058    '}'  shift, and go to state 768
22059
22060
22061State 722
22062
22063  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' . unprefixed_use_declarations possible_comma '}'
22064
22065    "identifier (T_STRING)"  shift, and go to state 114
22066
22067    namespace_name               go to state 574
22068    unprefixed_use_declarations  go to state 769
22069    unprefixed_use_declaration   go to state 724
22070
22071
22072State 723
22073
22074  103 group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations . possible_comma '}'
22075  111 unprefixed_use_declarations: unprefixed_use_declarations . ',' unprefixed_use_declaration
22076
22077    ','  shift, and go to state 770
22078
22079    $default  reduce using rule 107 (possible_comma)
22080
22081    possible_comma  go to state 771
22082
22083
22084State 724
22085
22086  112 unprefixed_use_declarations: unprefixed_use_declaration .
22087
22088    $default  reduce using rule 112 (unprefixed_use_declarations)
22089
22090
22091State 725
22092
22093  146 statement: "unset (T_UNSET)" '(' unset_variables possible_comma ')' ';' .
22094
22095    $default  reduce using rule 146 (statement)
22096
22097
22098State 726
22099
22100  187 implements_list: "implements (T_IMPLEMENTS)" name_list .
22101  252 name_list: name_list . ',' name
22102
22103    ','  shift, and go to state 729
22104
22105    $default  reduce using rule 187 (implements_list)
22106
22107
22108State 727
22109
22110  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" extends_from implements_list backup_doc_comment . '{' class_statement_list '}'
22111
22112    '{'  shift, and go to state 772
22113
22114
22115State 728
22116
22117  179 trait_declaration_statement: "trait (T_TRAIT)" @6 "identifier (T_STRING)" backup_doc_comment '{' class_statement_list . '}'
22118  245 class_statement_list: class_statement_list . class_statement
22119
22120    "static (T_STATIC)"        shift, and go to state 773
22121    "abstract (T_ABSTRACT)"    shift, and go to state 774
22122    "final (T_FINAL)"          shift, and go to state 775
22123    "private (T_PRIVATE)"      shift, and go to state 776
22124    "protected (T_PROTECTED)"  shift, and go to state 777
22125    "public (T_PUBLIC)"        shift, and go to state 778
22126    "use (T_USE)"              shift, and go to state 779
22127    "var (T_VAR)"              shift, and go to state 780
22128    '}'                        shift, and go to state 781
22129
22130    $default  reduce using rule 272 (method_modifiers)
22131
22132    class_statement             go to state 782
22133    variable_modifiers          go to state 783
22134    method_modifiers            go to state 784
22135    non_empty_member_modifiers  go to state 785
22136    member_modifier             go to state 786
22137
22138
22139State 729
22140
22141  252 name_list: name_list ',' . name
22142
22143    "identifier (T_STRING)"    shift, and go to state 114
22144    "namespace (T_NAMESPACE)"  shift, and go to state 115
22145    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
22146
22147    namespace_name  go to state 83
22148    name            go to state 787
22149
22150
22151State 730
22152
22153  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 "identifier (T_STRING)" interface_extends_list backup_doc_comment '{' . class_statement_list '}'
22154
22155    $default  reduce using rule 246 (class_statement_list)
22156
22157    class_statement_list  go to state 788
22158
22159
22160State 731
22161
22162  302 expr: "list (T_LIST)" '(' array_pair_list ')' '=' expr .
22163  323     | expr . "|| (T_BOOLEAN_OR)" expr
22164  324     | expr . "&& (T_BOOLEAN_AND)" expr
22165  325     | expr . "or (T_LOGICAL_OR)" expr
22166  326     | expr . "and (T_LOGICAL_AND)" expr
22167  327     | expr . "xor (T_LOGICAL_XOR)" expr
22168  328     | expr . '|' expr
22169  329     | expr . '&' expr
22170  330     | expr . '^' expr
22171  331     | expr . '.' expr
22172  332     | expr . '+' expr
22173  333     | expr . '-' expr
22174  334     | expr . '*' expr
22175  335     | expr . "** (T_POW)" expr
22176  336     | expr . '/' expr
22177  337     | expr . '%' expr
22178  338     | expr . "<< (T_SL)" expr
22179  339     | expr . ">> (T_SR)" expr
22180  344     | expr . "=== (T_IS_IDENTICAL)" expr
22181  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
22182  346     | expr . "== (T_IS_EQUAL)" expr
22183  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
22184  348     | expr . '<' expr
22185  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
22186  350     | expr . '>' expr
22187  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
22188  352     | expr . "<=> (T_SPACESHIP)" expr
22189  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
22190  356     | expr . '?' expr ':' expr
22191  357     | expr . '?' ':' expr
22192  358     | expr . "?? (T_COALESCE)" expr
22193
22194    '?'                           shift, and go to state 240
22195    "?? (T_COALESCE)"             shift, and go to state 241
22196    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
22197    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
22198    '|'                           shift, and go to state 244
22199    '^'                           shift, and go to state 245
22200    '&'                           shift, and go to state 246
22201    "== (T_IS_EQUAL)"             shift, and go to state 247
22202    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
22203    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
22204    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
22205    "<=> (T_SPACESHIP)"           shift, and go to state 251
22206    '<'                           shift, and go to state 252
22207    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
22208    '>'                           shift, and go to state 254
22209    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
22210    "<< (T_SL)"                   shift, and go to state 256
22211    ">> (T_SR)"                   shift, and go to state 257
22212    '+'                           shift, and go to state 258
22213    '-'                           shift, and go to state 259
22214    '.'                           shift, and go to state 260
22215    '*'                           shift, and go to state 261
22216    '/'                           shift, and go to state 262
22217    '%'                           shift, and go to state 263
22218    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
22219    "** (T_POW)"                  shift, and go to state 265
22220
22221    $default  reduce using rule 302 (expr)
22222
22223
22224State 732
22225
22226  481 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' expr ']' . '}'
22227
22228    '}'  shift, and go to state 789
22229
22230
22231State 733
22232
22233   93 top_statement: "namespace (T_NAMESPACE)" namespace_name $@1 '{' top_statement_list '}' .
22234
22235    $default  reduce using rule 93 (top_statement)
22236
22237
22238State 734
22239
22240  130 inner_statement: "__halt_compiler (T_HALT_COMPILER)" '(' ')' ';' .
22241
22242    $default  reduce using rule 130 (inner_statement)
22243
22244
22245State 735
22246
22247  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from implements_list . backup_doc_comment '{' class_statement_list '}'
22248
22249    $default  reduce using rule 379 (backup_doc_comment)
22250
22251    backup_doc_comment  go to state 790
22252
22253
22254State 736
22255
22256  210 if_stmt_without_else: if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' statement .
22257
22258    $default  reduce using rule 210 (if_stmt_without_else)
22259
22260
22261State 737
22262
22263  214 alt_if_stmt_without_else: alt_if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' ':' . inner_statement_list
22264
22265    $default  reduce using rule 124 (inner_statement_list)
22266
22267    inner_statement_list  go to state 791
22268
22269
22270State 738
22271
22272  216 alt_if_stmt: alt_if_stmt_without_else "else (T_ELSE)" ':' inner_statement_list "endif (T_ENDIF)" ';' .
22273
22274    $default  reduce using rule 216 (alt_if_stmt)
22275
22276
22277State 739
22278
22279  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list . ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
22280
22281    ')'  shift, and go to state 792
22282
22283
22284State 740
22285
22286  226 type_expr: '?' type .
22287
22288    $default  reduce using rule 226 (type_expr)
22289
22290
22291State 741
22292
22293  376 expr: function returns_ref backup_doc_comment '(' parameter_list ')' . lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
22294
22295    "use (T_USE)"  shift, and go to state 793
22296
22297    $default  reduce using rule 383 (lexical_vars)
22298
22299    lexical_vars  go to state 794
22300
22301
22302State 742
22303
22304  220 non_empty_parameter_list: non_empty_parameter_list ',' . parameter
22305
22306    '?'                        shift, and go to state 684
22307    "identifier (T_STRING)"    shift, and go to state 114
22308    "array (T_ARRAY)"          shift, and go to state 685
22309    "callable (T_CALLABLE)"    shift, and go to state 686
22310    "namespace (T_NAMESPACE)"  shift, and go to state 115
22311    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
22312
22313    $default  reduce using rule 223 (optional_type)
22314
22315    namespace_name  go to state 83
22316    name            go to state 687
22317    parameter       go to state 795
22318    optional_type   go to state 691
22319    type_expr       go to state 692
22320    type            go to state 693
22321
22322
22323State 743
22324
22325  167 is_reference: '&' .
22326
22327    $default  reduce using rule 167 (is_reference)
22328
22329
22330State 744
22331
22332  221 parameter: optional_type is_reference . is_variadic "variable (T_VARIABLE)"
22333  222          | optional_type is_reference . is_variadic "variable (T_VARIABLE)" '=' expr
22334
22335    "... (T_ELLIPSIS)"  shift, and go to state 796
22336
22337    $default  reduce using rule 168 (is_variadic)
22338
22339    is_variadic  go to state 797
22340
22341
22342State 745
22343
22344  302 expr: "list (T_LIST)" '(' array_pair_list ')' . '=' expr
22345  470 array_pair: expr "=> (T_DOUBLE_ARROW)" "list (T_LIST)" '(' array_pair_list ')' .
22346
22347    '='  shift, and go to state 669
22348
22349    $default  reduce using rule 470 (array_pair)
22350
22351
22352State 746
22353
22354  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments extends_from implements_list backup_doc_comment . '{' class_statement_list '}'
22355
22356    '{'  shift, and go to state 798
22357
22358
22359State 747
22360
22361  377 expr: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' . lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
22362
22363    "use (T_USE)"  shift, and go to state 793
22364
22365    $default  reduce using rule 383 (lexical_vars)
22366
22367    lexical_vars  go to state 799
22368
22369
22370State 748
22371
22372  135 statement: "do (T_DO)" statement "while (T_WHILE)" '(' expr ')' ';' .
22373
22374    $default  reduce using rule 135 (statement)
22375
22376
22377State 749
22378
22379  208 while_statement: ':' inner_statement_list "endwhile (T_ENDWHILE)" . ';'
22380
22381    ';'  shift, and go to state 800
22382
22383
22384State 750
22385
22386  136 statement: "for (T_FOR)" '(' for_exprs ';' for_exprs ';' for_exprs . ')' for_statement
22387
22388    ')'  shift, and go to state 801
22389
22390
22391State 751
22392
22393  191 foreach_variable: '[' array_pair_list ']' .
22394  405 dereferencable_scalar: '[' array_pair_list ']' .
22395
22396    "=> (T_DOUBLE_ARROW)"  reduce using rule 191 (foreach_variable)
22397    ')'                    reduce using rule 191 (foreach_variable)
22398    $default               reduce using rule 405 (dereferencable_scalar)
22399
22400
22401State 752
22402
22403  190 foreach_variable: "list (T_LIST)" '(' array_pair_list . ')'
22404
22405    ')'  shift, and go to state 802
22406
22407
22408State 753
22409
22410  148 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable . ')' foreach_statement
22411
22412    ')'  shift, and go to state 803
22413
22414
22415State 754
22416
22417  195 foreach_statement: ':' . inner_statement_list "endforeach (T_ENDFOREACH)" ';'
22418
22419    $default  reduce using rule 124 (inner_statement_list)
22420
22421    inner_statement_list  go to state 804
22422
22423
22424State 755
22425
22426  194 foreach_statement: statement .
22427
22428    $default  reduce using rule 194 (foreach_statement)
22429
22430
22431State 756
22432
22433  147 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable ')' foreach_statement .
22434
22435    $default  reduce using rule 147 (statement)
22436
22437
22438State 757
22439
22440  123 inner_statement_list: inner_statement_list . inner_statement
22441  197 declare_statement: ':' inner_statement_list . "enddeclare (T_ENDDECLARE)" ';'
22442
22443    "include (T_INCLUDE)"                         shift, and go to state 4
22444    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
22445    "eval (T_EVAL)"                               shift, and go to state 6
22446    "require (T_REQUIRE)"                         shift, and go to state 7
22447    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
22448    "print (T_PRINT)"                             shift, and go to state 9
22449    "yield (T_YIELD)"                             shift, and go to state 10
22450    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
22451    '+'                                           shift, and go to state 12
22452    '-'                                           shift, and go to state 13
22453    '!'                                           shift, and go to state 14
22454    '~'                                           shift, and go to state 15
22455    "++ (T_INC)"                                  shift, and go to state 16
22456    "-- (T_DEC)"                                  shift, and go to state 17
22457    "(int) (T_INT_CAST)"                          shift, and go to state 18
22458    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
22459    "(string) (T_STRING_CAST)"                    shift, and go to state 20
22460    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
22461    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
22462    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
22463    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
22464    '@'                                           shift, and go to state 25
22465    '['                                           shift, and go to state 26
22466    "new (T_NEW)"                                 shift, and go to state 27
22467    "clone (T_CLONE)"                             shift, and go to state 28
22468    "static (T_STATIC)"                           shift, and go to state 29
22469    "abstract (T_ABSTRACT)"                       shift, and go to state 30
22470    "final (T_FINAL)"                             shift, and go to state 31
22471    "integer number (T_LNUMBER)"                  shift, and go to state 32
22472    "floating-point number (T_DNUMBER)"           shift, and go to state 33
22473    "identifier (T_STRING)"                       shift, and go to state 34
22474    "variable (T_VARIABLE)"                       shift, and go to state 35
22475    T_INLINE_HTML                                 shift, and go to state 36
22476    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
22477    "exit (T_EXIT)"                               shift, and go to state 38
22478    "if (T_IF)"                                   shift, and go to state 39
22479    "echo (T_ECHO)"                               shift, and go to state 40
22480    "do (T_DO)"                                   shift, and go to state 41
22481    "while (T_WHILE)"                             shift, and go to state 42
22482    "for (T_FOR)"                                 shift, and go to state 43
22483    "foreach (T_FOREACH)"                         shift, and go to state 44
22484    "declare (T_DECLARE)"                         shift, and go to state 45
22485    "enddeclare (T_ENDDECLARE)"                   shift, and go to state 805
22486    "switch (T_SWITCH)"                           shift, and go to state 46
22487    "break (T_BREAK)"                             shift, and go to state 47
22488    "continue (T_CONTINUE)"                       shift, and go to state 48
22489    "goto (T_GOTO)"                               shift, and go to state 49
22490    "function (T_FUNCTION)"                       shift, and go to state 50
22491    "return (T_RETURN)"                           shift, and go to state 52
22492    "try (T_TRY)"                                 shift, and go to state 53
22493    "throw (T_THROW)"                             shift, and go to state 54
22494    "global (T_GLOBAL)"                           shift, and go to state 56
22495    "unset (T_UNSET)"                             shift, and go to state 57
22496    "isset (T_ISSET)"                             shift, and go to state 58
22497    "empty (T_EMPTY)"                             shift, and go to state 59
22498    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
22499    "class (T_CLASS)"                             shift, and go to state 61
22500    "trait (T_TRAIT)"                             shift, and go to state 62
22501    "interface (T_INTERFACE)"                     shift, and go to state 63
22502    "list (T_LIST)"                               shift, and go to state 64
22503    "array (T_ARRAY)"                             shift, and go to state 65
22504    "__LINE__ (T_LINE)"                           shift, and go to state 66
22505    "__FILE__ (T_FILE)"                           shift, and go to state 67
22506    "__DIR__ (T_DIR)"                             shift, and go to state 68
22507    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
22508    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
22509    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
22510    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
22511    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
22512    "namespace (T_NAMESPACE)"                     shift, and go to state 115
22513    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
22514    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
22515    '('                                           shift, and go to state 77
22516    ';'                                           shift, and go to state 78
22517    '{'                                           shift, and go to state 79
22518    '`'                                           shift, and go to state 80
22519    '"'                                           shift, and go to state 81
22520    '$'                                           shift, and go to state 82
22521
22522    namespace_name                   go to state 83
22523    name                             go to state 84
22524    inner_statement                  go to state 377
22525    statement                        go to state 378
22526    function_declaration_statement   go to state 379
22527    class_declaration_statement      go to state 380
22528    class_modifiers                  go to state 89
22529    class_modifier                   go to state 90
22530    trait_declaration_statement      go to state 381
22531    interface_declaration_statement  go to state 382
22532    if_stmt_without_else             go to state 93
22533    if_stmt                          go to state 94
22534    alt_if_stmt_without_else         go to state 95
22535    alt_if_stmt                      go to state 96
22536    new_expr                         go to state 97
22537    expr                             go to state 98
22538    function                         go to state 99
22539    function_call                    go to state 100
22540    class_name                       go to state 101
22541    dereferencable_scalar            go to state 102
22542    scalar                           go to state 103
22543    constant                         go to state 104
22544    variable_class_name              go to state 105
22545    dereferencable                   go to state 106
22546    callable_expr                    go to state 107
22547    callable_variable                go to state 108
22548    variable                         go to state 109
22549    simple_variable                  go to state 110
22550    static_member                    go to state 111
22551    internal_functions_in_yacc       go to state 112
22552
22553
22554State 758
22555
22556  201 switch_case_list: ':' ';' case_list . "endswitch (T_ENDSWITCH)" ';'
22557  203 case_list: case_list . "case (T_CASE)" expr case_separator inner_statement_list
22558  204          | case_list . "default (T_DEFAULT)" case_separator inner_statement_list
22559
22560    "endswitch (T_ENDSWITCH)"  shift, and go to state 806
22561    "case (T_CASE)"            shift, and go to state 760
22562    "default (T_DEFAULT)"      shift, and go to state 761
22563
22564
22565State 759
22566
22567  200 switch_case_list: ':' case_list "endswitch (T_ENDSWITCH)" . ';'
22568
22569    ';'  shift, and go to state 807
22570
22571
22572State 760
22573
22574  203 case_list: case_list "case (T_CASE)" . expr case_separator inner_statement_list
22575
22576    "include (T_INCLUDE)"                         shift, and go to state 4
22577    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
22578    "eval (T_EVAL)"                               shift, and go to state 6
22579    "require (T_REQUIRE)"                         shift, and go to state 7
22580    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
22581    "print (T_PRINT)"                             shift, and go to state 9
22582    "yield (T_YIELD)"                             shift, and go to state 10
22583    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
22584    '+'                                           shift, and go to state 12
22585    '-'                                           shift, and go to state 13
22586    '!'                                           shift, and go to state 14
22587    '~'                                           shift, and go to state 15
22588    "++ (T_INC)"                                  shift, and go to state 16
22589    "-- (T_DEC)"                                  shift, and go to state 17
22590    "(int) (T_INT_CAST)"                          shift, and go to state 18
22591    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
22592    "(string) (T_STRING_CAST)"                    shift, and go to state 20
22593    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
22594    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
22595    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
22596    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
22597    '@'                                           shift, and go to state 25
22598    '['                                           shift, and go to state 26
22599    "new (T_NEW)"                                 shift, and go to state 27
22600    "clone (T_CLONE)"                             shift, and go to state 28
22601    "static (T_STATIC)"                           shift, and go to state 113
22602    "integer number (T_LNUMBER)"                  shift, and go to state 32
22603    "floating-point number (T_DNUMBER)"           shift, and go to state 33
22604    "identifier (T_STRING)"                       shift, and go to state 114
22605    "variable (T_VARIABLE)"                       shift, and go to state 35
22606    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
22607    "exit (T_EXIT)"                               shift, and go to state 38
22608    "function (T_FUNCTION)"                       shift, and go to state 50
22609    "isset (T_ISSET)"                             shift, and go to state 58
22610    "empty (T_EMPTY)"                             shift, and go to state 59
22611    "list (T_LIST)"                               shift, and go to state 64
22612    "array (T_ARRAY)"                             shift, and go to state 65
22613    "__LINE__ (T_LINE)"                           shift, and go to state 66
22614    "__FILE__ (T_FILE)"                           shift, and go to state 67
22615    "__DIR__ (T_DIR)"                             shift, and go to state 68
22616    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
22617    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
22618    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
22619    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
22620    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
22621    "namespace (T_NAMESPACE)"                     shift, and go to state 115
22622    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
22623    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
22624    '('                                           shift, and go to state 77
22625    '`'                                           shift, and go to state 80
22626    '"'                                           shift, and go to state 81
22627    '$'                                           shift, and go to state 82
22628
22629    namespace_name              go to state 83
22630    name                        go to state 84
22631    new_expr                    go to state 97
22632    expr                        go to state 808
22633    function                    go to state 117
22634    function_call               go to state 100
22635    class_name                  go to state 101
22636    dereferencable_scalar       go to state 102
22637    scalar                      go to state 103
22638    constant                    go to state 104
22639    variable_class_name         go to state 105
22640    dereferencable              go to state 106
22641    callable_expr               go to state 107
22642    callable_variable           go to state 108
22643    variable                    go to state 109
22644    simple_variable             go to state 110
22645    static_member               go to state 111
22646    internal_functions_in_yacc  go to state 112
22647
22648
22649State 761
22650
22651  204 case_list: case_list "default (T_DEFAULT)" . case_separator inner_statement_list
22652
22653    ':'  shift, and go to state 809
22654    ';'  shift, and go to state 810
22655
22656    case_separator  go to state 811
22657
22658
22659State 762
22660
22661  199 switch_case_list: '{' ';' case_list . '}'
22662  203 case_list: case_list . "case (T_CASE)" expr case_separator inner_statement_list
22663  204          | case_list . "default (T_DEFAULT)" case_separator inner_statement_list
22664
22665    "case (T_CASE)"        shift, and go to state 760
22666    "default (T_DEFAULT)"  shift, and go to state 761
22667    '}'                    shift, and go to state 812
22668
22669
22670State 763
22671
22672  198 switch_case_list: '{' case_list '}' .
22673
22674    $default  reduce using rule 198 (switch_case_list)
22675
22676
22677State 764
22678
22679  157 catch_list: catch_list "catch (T_CATCH)" '(' . catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list '}'
22680
22681    "identifier (T_STRING)"    shift, and go to state 114
22682    "namespace (T_NAMESPACE)"  shift, and go to state 115
22683    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
22684
22685    namespace_name   go to state 83
22686    name             go to state 813
22687    catch_name_list  go to state 814
22688
22689
22690State 765
22691
22692  161 finally_statement: "finally (T_FINALLY)" '{' . inner_statement_list '}'
22693
22694    $default  reduce using rule 124 (inner_statement_list)
22695
22696    inner_statement_list  go to state 815
22697
22698
22699State 766
22700
22701  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma . '}'
22702
22703    '}'  shift, and go to state 816
22704
22705
22706State 767
22707
22708  109 inline_use_declarations: inline_use_declarations ',' inline_use_declaration .
22709
22710    $default  reduce using rule 109 (inline_use_declarations)
22711
22712
22713State 768
22714
22715  105 mixed_group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}' .
22716
22717    $default  reduce using rule 105 (mixed_group_use_declaration)
22718
22719
22720State 769
22721
22722  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations . possible_comma '}'
22723  111 unprefixed_use_declarations: unprefixed_use_declarations . ',' unprefixed_use_declaration
22724
22725    ','  shift, and go to state 770
22726
22727    $default  reduce using rule 107 (possible_comma)
22728
22729    possible_comma  go to state 817
22730
22731
22732State 770
22733
22734  108 possible_comma: ',' .
22735  111 unprefixed_use_declarations: unprefixed_use_declarations ',' . unprefixed_use_declaration
22736
22737    "identifier (T_STRING)"  shift, and go to state 114
22738
22739    $default  reduce using rule 108 (possible_comma)
22740
22741    namespace_name              go to state 574
22742    unprefixed_use_declaration  go to state 818
22743
22744
22745State 771
22746
22747  103 group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma . '}'
22748
22749    '}'  shift, and go to state 819
22750
22751
22752State 772
22753
22754  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' . class_statement_list '}'
22755
22756    $default  reduce using rule 246 (class_statement_list)
22757
22758    class_statement_list  go to state 820
22759
22760
22761State 773
22762
22763  279 member_modifier: "static (T_STATIC)" .
22764
22765    $default  reduce using rule 279 (member_modifier)
22766
22767
22768State 774
22769
22770  280 member_modifier: "abstract (T_ABSTRACT)" .
22771
22772    $default  reduce using rule 280 (member_modifier)
22773
22774
22775State 775
22776
22777  281 member_modifier: "final (T_FINAL)" .
22778
22779    $default  reduce using rule 281 (member_modifier)
22780
22781
22782State 776
22783
22784  278 member_modifier: "private (T_PRIVATE)" .
22785
22786    $default  reduce using rule 278 (member_modifier)
22787
22788
22789State 777
22790
22791  277 member_modifier: "protected (T_PROTECTED)" .
22792
22793    $default  reduce using rule 277 (member_modifier)
22794
22795
22796State 778
22797
22798  276 member_modifier: "public (T_PUBLIC)" .
22799
22800    $default  reduce using rule 276 (member_modifier)
22801
22802
22803State 779
22804
22805  249 class_statement: "use (T_USE)" . name_list trait_adaptations
22806
22807    "identifier (T_STRING)"    shift, and go to state 114
22808    "namespace (T_NAMESPACE)"  shift, and go to state 115
22809    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
22810
22811    namespace_name  go to state 83
22812    name            go to state 666
22813    name_list       go to state 821
22814
22815
22816State 780
22817
22818  271 variable_modifiers: "var (T_VAR)" .
22819
22820    $default  reduce using rule 271 (variable_modifiers)
22821
22822
22823State 781
22824
22825  179 trait_declaration_statement: "trait (T_TRAIT)" @6 "identifier (T_STRING)" backup_doc_comment '{' class_statement_list '}' .
22826
22827    $default  reduce using rule 179 (trait_declaration_statement)
22828
22829
22830State 782
22831
22832  245 class_statement_list: class_statement_list class_statement .
22833
22834    $default  reduce using rule 245 (class_statement_list)
22835
22836
22837State 783
22838
22839  247 class_statement: variable_modifiers . property_list ';'
22840
22841    "variable (T_VARIABLE)"  shift, and go to state 822
22842
22843    property_list  go to state 823
22844    property       go to state 824
22845
22846
22847State 784
22848
22849  248 class_statement: method_modifiers . "const (T_CONST)" class_const_list ';'
22850  250                | method_modifiers . function returns_ref identifier backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags
22851
22852    "function (T_FUNCTION)"  shift, and go to state 50
22853    "const (T_CONST)"        shift, and go to state 825
22854
22855    function  go to state 826
22856
22857
22858State 785
22859
22860  270 variable_modifiers: non_empty_member_modifiers .
22861  273 method_modifiers: non_empty_member_modifiers .
22862  275 non_empty_member_modifiers: non_empty_member_modifiers . member_modifier
22863
22864    "static (T_STATIC)"        shift, and go to state 773
22865    "abstract (T_ABSTRACT)"    shift, and go to state 774
22866    "final (T_FINAL)"          shift, and go to state 775
22867    "private (T_PRIVATE)"      shift, and go to state 776
22868    "protected (T_PROTECTED)"  shift, and go to state 777
22869    "public (T_PUBLIC)"        shift, and go to state 778
22870
22871    "variable (T_VARIABLE)"  reduce using rule 270 (variable_modifiers)
22872    $default                 reduce using rule 273 (method_modifiers)
22873
22874    member_modifier  go to state 827
22875
22876
22877State 786
22878
22879  274 non_empty_member_modifiers: member_modifier .
22880
22881    $default  reduce using rule 274 (non_empty_member_modifiers)
22882
22883
22884State 787
22885
22886  252 name_list: name_list ',' name .
22887
22888    $default  reduce using rule 252 (name_list)
22889
22890
22891State 788
22892
22893  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 "identifier (T_STRING)" interface_extends_list backup_doc_comment '{' class_statement_list . '}'
22894  245 class_statement_list: class_statement_list . class_statement
22895
22896    "static (T_STATIC)"        shift, and go to state 773
22897    "abstract (T_ABSTRACT)"    shift, and go to state 774
22898    "final (T_FINAL)"          shift, and go to state 775
22899    "private (T_PRIVATE)"      shift, and go to state 776
22900    "protected (T_PROTECTED)"  shift, and go to state 777
22901    "public (T_PUBLIC)"        shift, and go to state 778
22902    "use (T_USE)"              shift, and go to state 779
22903    "var (T_VAR)"              shift, and go to state 780
22904    '}'                        shift, and go to state 828
22905
22906    $default  reduce using rule 272 (method_modifiers)
22907
22908    class_statement             go to state 782
22909    variable_modifiers          go to state 783
22910    method_modifiers            go to state 784
22911    non_empty_member_modifiers  go to state 785
22912    member_modifier             go to state 786
22913
22914
22915State 789
22916
22917  481 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' expr ']' '}' .
22918
22919    $default  reduce using rule 481 (encaps_var)
22920
22921
22922State 790
22923
22924  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from implements_list backup_doc_comment . '{' class_statement_list '}'
22925
22926    '{'  shift, and go to state 829
22927
22928
22929State 791
22930
22931  123 inner_statement_list: inner_statement_list . inner_statement
22932  214 alt_if_stmt_without_else: alt_if_stmt_without_else "elseif (T_ELSEIF)" '(' expr ')' ':' inner_statement_list .
22933
22934    "include (T_INCLUDE)"                         shift, and go to state 4
22935    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
22936    "eval (T_EVAL)"                               shift, and go to state 6
22937    "require (T_REQUIRE)"                         shift, and go to state 7
22938    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
22939    "print (T_PRINT)"                             shift, and go to state 9
22940    "yield (T_YIELD)"                             shift, and go to state 10
22941    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
22942    '+'                                           shift, and go to state 12
22943    '-'                                           shift, and go to state 13
22944    '!'                                           shift, and go to state 14
22945    '~'                                           shift, and go to state 15
22946    "++ (T_INC)"                                  shift, and go to state 16
22947    "-- (T_DEC)"                                  shift, and go to state 17
22948    "(int) (T_INT_CAST)"                          shift, and go to state 18
22949    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
22950    "(string) (T_STRING_CAST)"                    shift, and go to state 20
22951    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
22952    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
22953    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
22954    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
22955    '@'                                           shift, and go to state 25
22956    '['                                           shift, and go to state 26
22957    "new (T_NEW)"                                 shift, and go to state 27
22958    "clone (T_CLONE)"                             shift, and go to state 28
22959    "static (T_STATIC)"                           shift, and go to state 29
22960    "abstract (T_ABSTRACT)"                       shift, and go to state 30
22961    "final (T_FINAL)"                             shift, and go to state 31
22962    "integer number (T_LNUMBER)"                  shift, and go to state 32
22963    "floating-point number (T_DNUMBER)"           shift, and go to state 33
22964    "identifier (T_STRING)"                       shift, and go to state 34
22965    "variable (T_VARIABLE)"                       shift, and go to state 35
22966    T_INLINE_HTML                                 shift, and go to state 36
22967    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
22968    "exit (T_EXIT)"                               shift, and go to state 38
22969    "if (T_IF)"                                   shift, and go to state 39
22970    "echo (T_ECHO)"                               shift, and go to state 40
22971    "do (T_DO)"                                   shift, and go to state 41
22972    "while (T_WHILE)"                             shift, and go to state 42
22973    "for (T_FOR)"                                 shift, and go to state 43
22974    "foreach (T_FOREACH)"                         shift, and go to state 44
22975    "declare (T_DECLARE)"                         shift, and go to state 45
22976    "switch (T_SWITCH)"                           shift, and go to state 46
22977    "break (T_BREAK)"                             shift, and go to state 47
22978    "continue (T_CONTINUE)"                       shift, and go to state 48
22979    "goto (T_GOTO)"                               shift, and go to state 49
22980    "function (T_FUNCTION)"                       shift, and go to state 50
22981    "return (T_RETURN)"                           shift, and go to state 52
22982    "try (T_TRY)"                                 shift, and go to state 53
22983    "throw (T_THROW)"                             shift, and go to state 54
22984    "global (T_GLOBAL)"                           shift, and go to state 56
22985    "unset (T_UNSET)"                             shift, and go to state 57
22986    "isset (T_ISSET)"                             shift, and go to state 58
22987    "empty (T_EMPTY)"                             shift, and go to state 59
22988    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
22989    "class (T_CLASS)"                             shift, and go to state 61
22990    "trait (T_TRAIT)"                             shift, and go to state 62
22991    "interface (T_INTERFACE)"                     shift, and go to state 63
22992    "list (T_LIST)"                               shift, and go to state 64
22993    "array (T_ARRAY)"                             shift, and go to state 65
22994    "__LINE__ (T_LINE)"                           shift, and go to state 66
22995    "__FILE__ (T_FILE)"                           shift, and go to state 67
22996    "__DIR__ (T_DIR)"                             shift, and go to state 68
22997    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
22998    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
22999    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
23000    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
23001    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
23002    "namespace (T_NAMESPACE)"                     shift, and go to state 115
23003    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
23004    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
23005    '('                                           shift, and go to state 77
23006    ';'                                           shift, and go to state 78
23007    '{'                                           shift, and go to state 79
23008    '`'                                           shift, and go to state 80
23009    '"'                                           shift, and go to state 81
23010    '$'                                           shift, and go to state 82
23011
23012    $default  reduce using rule 214 (alt_if_stmt_without_else)
23013
23014    namespace_name                   go to state 83
23015    name                             go to state 84
23016    inner_statement                  go to state 377
23017    statement                        go to state 378
23018    function_declaration_statement   go to state 379
23019    class_declaration_statement      go to state 380
23020    class_modifiers                  go to state 89
23021    class_modifier                   go to state 90
23022    trait_declaration_statement      go to state 381
23023    interface_declaration_statement  go to state 382
23024    if_stmt_without_else             go to state 93
23025    if_stmt                          go to state 94
23026    alt_if_stmt_without_else         go to state 95
23027    alt_if_stmt                      go to state 96
23028    new_expr                         go to state 97
23029    expr                             go to state 98
23030    function                         go to state 99
23031    function_call                    go to state 100
23032    class_name                       go to state 101
23033    dereferencable_scalar            go to state 102
23034    scalar                           go to state 103
23035    constant                         go to state 104
23036    variable_class_name              go to state 105
23037    dereferencable                   go to state 106
23038    callable_expr                    go to state 107
23039    callable_variable                go to state 108
23040    variable                         go to state 109
23041    simple_variable                  go to state 110
23042    static_member                    go to state 111
23043    internal_functions_in_yacc       go to state 112
23044
23045
23046State 792
23047
23048  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' . return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
23049
23050    ':'  shift, and go to state 830
23051
23052    $default  reduce using rule 230 (return_type)
23053
23054    return_type  go to state 831
23055
23056
23057State 793
23058
23059  384 lexical_vars: "use (T_USE)" . '(' lexical_var_list ')'
23060
23061    '('  shift, and go to state 832
23062
23063
23064State 794
23065
23066  376 expr: function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars . return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
23067
23068    ':'  shift, and go to state 830
23069
23070    $default  reduce using rule 230 (return_type)
23071
23072    return_type  go to state 833
23073
23074
23075State 795
23076
23077  220 non_empty_parameter_list: non_empty_parameter_list ',' parameter .
23078
23079    $default  reduce using rule 220 (non_empty_parameter_list)
23080
23081
23082State 796
23083
23084  169 is_variadic: "... (T_ELLIPSIS)" .
23085
23086    $default  reduce using rule 169 (is_variadic)
23087
23088
23089State 797
23090
23091  221 parameter: optional_type is_reference is_variadic . "variable (T_VARIABLE)"
23092  222          | optional_type is_reference is_variadic . "variable (T_VARIABLE)" '=' expr
23093
23094    "variable (T_VARIABLE)"  shift, and go to state 834
23095
23096
23097State 798
23098
23099  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments extends_from implements_list backup_doc_comment '{' . class_statement_list '}'
23100
23101    $default  reduce using rule 246 (class_statement_list)
23102
23103    class_statement_list  go to state 835
23104
23105
23106State 799
23107
23108  377 expr: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars . return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
23109
23110    ':'  shift, and go to state 830
23111
23112    $default  reduce using rule 230 (return_type)
23113
23114    return_type  go to state 836
23115
23116
23117State 800
23118
23119  208 while_statement: ':' inner_statement_list "endwhile (T_ENDWHILE)" ';' .
23120
23121    $default  reduce using rule 208 (while_statement)
23122
23123
23124State 801
23125
23126  136 statement: "for (T_FOR)" '(' for_exprs ';' for_exprs ';' for_exprs ')' . for_statement
23127
23128    "include (T_INCLUDE)"                         shift, and go to state 4
23129    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
23130    "eval (T_EVAL)"                               shift, and go to state 6
23131    "require (T_REQUIRE)"                         shift, and go to state 7
23132    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
23133    "print (T_PRINT)"                             shift, and go to state 9
23134    "yield (T_YIELD)"                             shift, and go to state 10
23135    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
23136    ':'                                           shift, and go to state 837
23137    '+'                                           shift, and go to state 12
23138    '-'                                           shift, and go to state 13
23139    '!'                                           shift, and go to state 14
23140    '~'                                           shift, and go to state 15
23141    "++ (T_INC)"                                  shift, and go to state 16
23142    "-- (T_DEC)"                                  shift, and go to state 17
23143    "(int) (T_INT_CAST)"                          shift, and go to state 18
23144    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
23145    "(string) (T_STRING_CAST)"                    shift, and go to state 20
23146    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
23147    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
23148    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
23149    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
23150    '@'                                           shift, and go to state 25
23151    '['                                           shift, and go to state 26
23152    "new (T_NEW)"                                 shift, and go to state 27
23153    "clone (T_CLONE)"                             shift, and go to state 28
23154    "static (T_STATIC)"                           shift, and go to state 29
23155    "integer number (T_LNUMBER)"                  shift, and go to state 32
23156    "floating-point number (T_DNUMBER)"           shift, and go to state 33
23157    "identifier (T_STRING)"                       shift, and go to state 34
23158    "variable (T_VARIABLE)"                       shift, and go to state 35
23159    T_INLINE_HTML                                 shift, and go to state 36
23160    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
23161    "exit (T_EXIT)"                               shift, and go to state 38
23162    "if (T_IF)"                                   shift, and go to state 39
23163    "echo (T_ECHO)"                               shift, and go to state 40
23164    "do (T_DO)"                                   shift, and go to state 41
23165    "while (T_WHILE)"                             shift, and go to state 42
23166    "for (T_FOR)"                                 shift, and go to state 43
23167    "foreach (T_FOREACH)"                         shift, and go to state 44
23168    "declare (T_DECLARE)"                         shift, and go to state 45
23169    "switch (T_SWITCH)"                           shift, and go to state 46
23170    "break (T_BREAK)"                             shift, and go to state 47
23171    "continue (T_CONTINUE)"                       shift, and go to state 48
23172    "goto (T_GOTO)"                               shift, and go to state 49
23173    "function (T_FUNCTION)"                       shift, and go to state 50
23174    "return (T_RETURN)"                           shift, and go to state 52
23175    "try (T_TRY)"                                 shift, and go to state 53
23176    "throw (T_THROW)"                             shift, and go to state 54
23177    "global (T_GLOBAL)"                           shift, and go to state 56
23178    "unset (T_UNSET)"                             shift, and go to state 57
23179    "isset (T_ISSET)"                             shift, and go to state 58
23180    "empty (T_EMPTY)"                             shift, and go to state 59
23181    "list (T_LIST)"                               shift, and go to state 64
23182    "array (T_ARRAY)"                             shift, and go to state 65
23183    "__LINE__ (T_LINE)"                           shift, and go to state 66
23184    "__FILE__ (T_FILE)"                           shift, and go to state 67
23185    "__DIR__ (T_DIR)"                             shift, and go to state 68
23186    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
23187    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
23188    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
23189    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
23190    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
23191    "namespace (T_NAMESPACE)"                     shift, and go to state 115
23192    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
23193    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
23194    '('                                           shift, and go to state 77
23195    ';'                                           shift, and go to state 78
23196    '{'                                           shift, and go to state 79
23197    '`'                                           shift, and go to state 80
23198    '"'                                           shift, and go to state 81
23199    '$'                                           shift, and go to state 82
23200
23201    namespace_name              go to state 83
23202    name                        go to state 84
23203    statement                   go to state 838
23204    for_statement               go to state 839
23205    if_stmt_without_else        go to state 93
23206    if_stmt                     go to state 94
23207    alt_if_stmt_without_else    go to state 95
23208    alt_if_stmt                 go to state 96
23209    new_expr                    go to state 97
23210    expr                        go to state 98
23211    function                    go to state 117
23212    function_call               go to state 100
23213    class_name                  go to state 101
23214    dereferencable_scalar       go to state 102
23215    scalar                      go to state 103
23216    constant                    go to state 104
23217    variable_class_name         go to state 105
23218    dereferencable              go to state 106
23219    callable_expr               go to state 107
23220    callable_variable           go to state 108
23221    variable                    go to state 109
23222    simple_variable             go to state 110
23223    static_member               go to state 111
23224    internal_functions_in_yacc  go to state 112
23225
23226
23227State 802
23228
23229  190 foreach_variable: "list (T_LIST)" '(' array_pair_list ')' .
23230
23231    $default  reduce using rule 190 (foreach_variable)
23232
23233
23234State 803
23235
23236  148 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable ')' . foreach_statement
23237
23238    "include (T_INCLUDE)"                         shift, and go to state 4
23239    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
23240    "eval (T_EVAL)"                               shift, and go to state 6
23241    "require (T_REQUIRE)"                         shift, and go to state 7
23242    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
23243    "print (T_PRINT)"                             shift, and go to state 9
23244    "yield (T_YIELD)"                             shift, and go to state 10
23245    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
23246    ':'                                           shift, and go to state 754
23247    '+'                                           shift, and go to state 12
23248    '-'                                           shift, and go to state 13
23249    '!'                                           shift, and go to state 14
23250    '~'                                           shift, and go to state 15
23251    "++ (T_INC)"                                  shift, and go to state 16
23252    "-- (T_DEC)"                                  shift, and go to state 17
23253    "(int) (T_INT_CAST)"                          shift, and go to state 18
23254    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
23255    "(string) (T_STRING_CAST)"                    shift, and go to state 20
23256    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
23257    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
23258    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
23259    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
23260    '@'                                           shift, and go to state 25
23261    '['                                           shift, and go to state 26
23262    "new (T_NEW)"                                 shift, and go to state 27
23263    "clone (T_CLONE)"                             shift, and go to state 28
23264    "static (T_STATIC)"                           shift, and go to state 29
23265    "integer number (T_LNUMBER)"                  shift, and go to state 32
23266    "floating-point number (T_DNUMBER)"           shift, and go to state 33
23267    "identifier (T_STRING)"                       shift, and go to state 34
23268    "variable (T_VARIABLE)"                       shift, and go to state 35
23269    T_INLINE_HTML                                 shift, and go to state 36
23270    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
23271    "exit (T_EXIT)"                               shift, and go to state 38
23272    "if (T_IF)"                                   shift, and go to state 39
23273    "echo (T_ECHO)"                               shift, and go to state 40
23274    "do (T_DO)"                                   shift, and go to state 41
23275    "while (T_WHILE)"                             shift, and go to state 42
23276    "for (T_FOR)"                                 shift, and go to state 43
23277    "foreach (T_FOREACH)"                         shift, and go to state 44
23278    "declare (T_DECLARE)"                         shift, and go to state 45
23279    "switch (T_SWITCH)"                           shift, and go to state 46
23280    "break (T_BREAK)"                             shift, and go to state 47
23281    "continue (T_CONTINUE)"                       shift, and go to state 48
23282    "goto (T_GOTO)"                               shift, and go to state 49
23283    "function (T_FUNCTION)"                       shift, and go to state 50
23284    "return (T_RETURN)"                           shift, and go to state 52
23285    "try (T_TRY)"                                 shift, and go to state 53
23286    "throw (T_THROW)"                             shift, and go to state 54
23287    "global (T_GLOBAL)"                           shift, and go to state 56
23288    "unset (T_UNSET)"                             shift, and go to state 57
23289    "isset (T_ISSET)"                             shift, and go to state 58
23290    "empty (T_EMPTY)"                             shift, and go to state 59
23291    "list (T_LIST)"                               shift, and go to state 64
23292    "array (T_ARRAY)"                             shift, and go to state 65
23293    "__LINE__ (T_LINE)"                           shift, and go to state 66
23294    "__FILE__ (T_FILE)"                           shift, and go to state 67
23295    "__DIR__ (T_DIR)"                             shift, and go to state 68
23296    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
23297    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
23298    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
23299    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
23300    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
23301    "namespace (T_NAMESPACE)"                     shift, and go to state 115
23302    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
23303    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
23304    '('                                           shift, and go to state 77
23305    ';'                                           shift, and go to state 78
23306    '{'                                           shift, and go to state 79
23307    '`'                                           shift, and go to state 80
23308    '"'                                           shift, and go to state 81
23309    '$'                                           shift, and go to state 82
23310
23311    namespace_name              go to state 83
23312    name                        go to state 84
23313    statement                   go to state 755
23314    foreach_statement           go to state 840
23315    if_stmt_without_else        go to state 93
23316    if_stmt                     go to state 94
23317    alt_if_stmt_without_else    go to state 95
23318    alt_if_stmt                 go to state 96
23319    new_expr                    go to state 97
23320    expr                        go to state 98
23321    function                    go to state 117
23322    function_call               go to state 100
23323    class_name                  go to state 101
23324    dereferencable_scalar       go to state 102
23325    scalar                      go to state 103
23326    constant                    go to state 104
23327    variable_class_name         go to state 105
23328    dereferencable              go to state 106
23329    callable_expr               go to state 107
23330    callable_variable           go to state 108
23331    variable                    go to state 109
23332    simple_variable             go to state 110
23333    static_member               go to state 111
23334    internal_functions_in_yacc  go to state 112
23335
23336
23337State 804
23338
23339  123 inner_statement_list: inner_statement_list . inner_statement
23340  195 foreach_statement: ':' inner_statement_list . "endforeach (T_ENDFOREACH)" ';'
23341
23342    "include (T_INCLUDE)"                         shift, and go to state 4
23343    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
23344    "eval (T_EVAL)"                               shift, and go to state 6
23345    "require (T_REQUIRE)"                         shift, and go to state 7
23346    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
23347    "print (T_PRINT)"                             shift, and go to state 9
23348    "yield (T_YIELD)"                             shift, and go to state 10
23349    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
23350    '+'                                           shift, and go to state 12
23351    '-'                                           shift, and go to state 13
23352    '!'                                           shift, and go to state 14
23353    '~'                                           shift, and go to state 15
23354    "++ (T_INC)"                                  shift, and go to state 16
23355    "-- (T_DEC)"                                  shift, and go to state 17
23356    "(int) (T_INT_CAST)"                          shift, and go to state 18
23357    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
23358    "(string) (T_STRING_CAST)"                    shift, and go to state 20
23359    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
23360    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
23361    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
23362    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
23363    '@'                                           shift, and go to state 25
23364    '['                                           shift, and go to state 26
23365    "new (T_NEW)"                                 shift, and go to state 27
23366    "clone (T_CLONE)"                             shift, and go to state 28
23367    "static (T_STATIC)"                           shift, and go to state 29
23368    "abstract (T_ABSTRACT)"                       shift, and go to state 30
23369    "final (T_FINAL)"                             shift, and go to state 31
23370    "integer number (T_LNUMBER)"                  shift, and go to state 32
23371    "floating-point number (T_DNUMBER)"           shift, and go to state 33
23372    "identifier (T_STRING)"                       shift, and go to state 34
23373    "variable (T_VARIABLE)"                       shift, and go to state 35
23374    T_INLINE_HTML                                 shift, and go to state 36
23375    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
23376    "exit (T_EXIT)"                               shift, and go to state 38
23377    "if (T_IF)"                                   shift, and go to state 39
23378    "echo (T_ECHO)"                               shift, and go to state 40
23379    "do (T_DO)"                                   shift, and go to state 41
23380    "while (T_WHILE)"                             shift, and go to state 42
23381    "for (T_FOR)"                                 shift, and go to state 43
23382    "foreach (T_FOREACH)"                         shift, and go to state 44
23383    "endforeach (T_ENDFOREACH)"                   shift, and go to state 841
23384    "declare (T_DECLARE)"                         shift, and go to state 45
23385    "switch (T_SWITCH)"                           shift, and go to state 46
23386    "break (T_BREAK)"                             shift, and go to state 47
23387    "continue (T_CONTINUE)"                       shift, and go to state 48
23388    "goto (T_GOTO)"                               shift, and go to state 49
23389    "function (T_FUNCTION)"                       shift, and go to state 50
23390    "return (T_RETURN)"                           shift, and go to state 52
23391    "try (T_TRY)"                                 shift, and go to state 53
23392    "throw (T_THROW)"                             shift, and go to state 54
23393    "global (T_GLOBAL)"                           shift, and go to state 56
23394    "unset (T_UNSET)"                             shift, and go to state 57
23395    "isset (T_ISSET)"                             shift, and go to state 58
23396    "empty (T_EMPTY)"                             shift, and go to state 59
23397    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
23398    "class (T_CLASS)"                             shift, and go to state 61
23399    "trait (T_TRAIT)"                             shift, and go to state 62
23400    "interface (T_INTERFACE)"                     shift, and go to state 63
23401    "list (T_LIST)"                               shift, and go to state 64
23402    "array (T_ARRAY)"                             shift, and go to state 65
23403    "__LINE__ (T_LINE)"                           shift, and go to state 66
23404    "__FILE__ (T_FILE)"                           shift, and go to state 67
23405    "__DIR__ (T_DIR)"                             shift, and go to state 68
23406    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
23407    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
23408    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
23409    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
23410    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
23411    "namespace (T_NAMESPACE)"                     shift, and go to state 115
23412    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
23413    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
23414    '('                                           shift, and go to state 77
23415    ';'                                           shift, and go to state 78
23416    '{'                                           shift, and go to state 79
23417    '`'                                           shift, and go to state 80
23418    '"'                                           shift, and go to state 81
23419    '$'                                           shift, and go to state 82
23420
23421    namespace_name                   go to state 83
23422    name                             go to state 84
23423    inner_statement                  go to state 377
23424    statement                        go to state 378
23425    function_declaration_statement   go to state 379
23426    class_declaration_statement      go to state 380
23427    class_modifiers                  go to state 89
23428    class_modifier                   go to state 90
23429    trait_declaration_statement      go to state 381
23430    interface_declaration_statement  go to state 382
23431    if_stmt_without_else             go to state 93
23432    if_stmt                          go to state 94
23433    alt_if_stmt_without_else         go to state 95
23434    alt_if_stmt                      go to state 96
23435    new_expr                         go to state 97
23436    expr                             go to state 98
23437    function                         go to state 99
23438    function_call                    go to state 100
23439    class_name                       go to state 101
23440    dereferencable_scalar            go to state 102
23441    scalar                           go to state 103
23442    constant                         go to state 104
23443    variable_class_name              go to state 105
23444    dereferencable                   go to state 106
23445    callable_expr                    go to state 107
23446    callable_variable                go to state 108
23447    variable                         go to state 109
23448    simple_variable                  go to state 110
23449    static_member                    go to state 111
23450    internal_functions_in_yacc       go to state 112
23451
23452
23453State 805
23454
23455  197 declare_statement: ':' inner_statement_list "enddeclare (T_ENDDECLARE)" . ';'
23456
23457    ';'  shift, and go to state 842
23458
23459
23460State 806
23461
23462  201 switch_case_list: ':' ';' case_list "endswitch (T_ENDSWITCH)" . ';'
23463
23464    ';'  shift, and go to state 843
23465
23466
23467State 807
23468
23469  200 switch_case_list: ':' case_list "endswitch (T_ENDSWITCH)" ';' .
23470
23471    $default  reduce using rule 200 (switch_case_list)
23472
23473
23474State 808
23475
23476  203 case_list: case_list "case (T_CASE)" expr . case_separator inner_statement_list
23477  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
23478  324     | expr . "&& (T_BOOLEAN_AND)" expr
23479  325     | expr . "or (T_LOGICAL_OR)" expr
23480  326     | expr . "and (T_LOGICAL_AND)" expr
23481  327     | expr . "xor (T_LOGICAL_XOR)" expr
23482  328     | expr . '|' expr
23483  329     | expr . '&' expr
23484  330     | expr . '^' expr
23485  331     | expr . '.' expr
23486  332     | expr . '+' expr
23487  333     | expr . '-' expr
23488  334     | expr . '*' expr
23489  335     | expr . "** (T_POW)" expr
23490  336     | expr . '/' expr
23491  337     | expr . '%' expr
23492  338     | expr . "<< (T_SL)" expr
23493  339     | expr . ">> (T_SR)" expr
23494  344     | expr . "=== (T_IS_IDENTICAL)" expr
23495  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
23496  346     | expr . "== (T_IS_EQUAL)" expr
23497  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
23498  348     | expr . '<' expr
23499  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
23500  350     | expr . '>' expr
23501  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
23502  352     | expr . "<=> (T_SPACESHIP)" expr
23503  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
23504  356     | expr . '?' expr ':' expr
23505  357     | expr . '?' ':' expr
23506  358     | expr . "?? (T_COALESCE)" expr
23507
23508    "or (T_LOGICAL_OR)"           shift, and go to state 237
23509    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
23510    "and (T_LOGICAL_AND)"         shift, and go to state 239
23511    '?'                           shift, and go to state 240
23512    ':'                           shift, and go to state 809
23513    "?? (T_COALESCE)"             shift, and go to state 241
23514    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
23515    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
23516    '|'                           shift, and go to state 244
23517    '^'                           shift, and go to state 245
23518    '&'                           shift, and go to state 246
23519    "== (T_IS_EQUAL)"             shift, and go to state 247
23520    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
23521    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
23522    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
23523    "<=> (T_SPACESHIP)"           shift, and go to state 251
23524    '<'                           shift, and go to state 252
23525    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
23526    '>'                           shift, and go to state 254
23527    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
23528    "<< (T_SL)"                   shift, and go to state 256
23529    ">> (T_SR)"                   shift, and go to state 257
23530    '+'                           shift, and go to state 258
23531    '-'                           shift, and go to state 259
23532    '.'                           shift, and go to state 260
23533    '*'                           shift, and go to state 261
23534    '/'                           shift, and go to state 262
23535    '%'                           shift, and go to state 263
23536    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
23537    "** (T_POW)"                  shift, and go to state 265
23538    ';'                           shift, and go to state 810
23539
23540    case_separator  go to state 844
23541
23542
23543State 809
23544
23545  205 case_separator: ':' .
23546
23547    $default  reduce using rule 205 (case_separator)
23548
23549
23550State 810
23551
23552  206 case_separator: ';' .
23553
23554    $default  reduce using rule 206 (case_separator)
23555
23556
23557State 811
23558
23559  204 case_list: case_list "default (T_DEFAULT)" case_separator . inner_statement_list
23560
23561    $default  reduce using rule 124 (inner_statement_list)
23562
23563    inner_statement_list  go to state 845
23564
23565
23566State 812
23567
23568  199 switch_case_list: '{' ';' case_list '}' .
23569
23570    $default  reduce using rule 199 (switch_case_list)
23571
23572
23573State 813
23574
23575  158 catch_name_list: name .
23576
23577    $default  reduce using rule 158 (catch_name_list)
23578
23579
23580State 814
23581
23582  157 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list . "variable (T_VARIABLE)" ')' '{' inner_statement_list '}'
23583  159 catch_name_list: catch_name_list . '|' name
23584
23585    '|'                      shift, and go to state 846
23586    "variable (T_VARIABLE)"  shift, and go to state 847
23587
23588
23589State 815
23590
23591  123 inner_statement_list: inner_statement_list . inner_statement
23592  161 finally_statement: "finally (T_FINALLY)" '{' inner_statement_list . '}'
23593
23594    "include (T_INCLUDE)"                         shift, and go to state 4
23595    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
23596    "eval (T_EVAL)"                               shift, and go to state 6
23597    "require (T_REQUIRE)"                         shift, and go to state 7
23598    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
23599    "print (T_PRINT)"                             shift, and go to state 9
23600    "yield (T_YIELD)"                             shift, and go to state 10
23601    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
23602    '+'                                           shift, and go to state 12
23603    '-'                                           shift, and go to state 13
23604    '!'                                           shift, and go to state 14
23605    '~'                                           shift, and go to state 15
23606    "++ (T_INC)"                                  shift, and go to state 16
23607    "-- (T_DEC)"                                  shift, and go to state 17
23608    "(int) (T_INT_CAST)"                          shift, and go to state 18
23609    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
23610    "(string) (T_STRING_CAST)"                    shift, and go to state 20
23611    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
23612    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
23613    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
23614    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
23615    '@'                                           shift, and go to state 25
23616    '['                                           shift, and go to state 26
23617    "new (T_NEW)"                                 shift, and go to state 27
23618    "clone (T_CLONE)"                             shift, and go to state 28
23619    "static (T_STATIC)"                           shift, and go to state 29
23620    "abstract (T_ABSTRACT)"                       shift, and go to state 30
23621    "final (T_FINAL)"                             shift, and go to state 31
23622    "integer number (T_LNUMBER)"                  shift, and go to state 32
23623    "floating-point number (T_DNUMBER)"           shift, and go to state 33
23624    "identifier (T_STRING)"                       shift, and go to state 34
23625    "variable (T_VARIABLE)"                       shift, and go to state 35
23626    T_INLINE_HTML                                 shift, and go to state 36
23627    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
23628    "exit (T_EXIT)"                               shift, and go to state 38
23629    "if (T_IF)"                                   shift, and go to state 39
23630    "echo (T_ECHO)"                               shift, and go to state 40
23631    "do (T_DO)"                                   shift, and go to state 41
23632    "while (T_WHILE)"                             shift, and go to state 42
23633    "for (T_FOR)"                                 shift, and go to state 43
23634    "foreach (T_FOREACH)"                         shift, and go to state 44
23635    "declare (T_DECLARE)"                         shift, and go to state 45
23636    "switch (T_SWITCH)"                           shift, and go to state 46
23637    "break (T_BREAK)"                             shift, and go to state 47
23638    "continue (T_CONTINUE)"                       shift, and go to state 48
23639    "goto (T_GOTO)"                               shift, and go to state 49
23640    "function (T_FUNCTION)"                       shift, and go to state 50
23641    "return (T_RETURN)"                           shift, and go to state 52
23642    "try (T_TRY)"                                 shift, and go to state 53
23643    "throw (T_THROW)"                             shift, and go to state 54
23644    "global (T_GLOBAL)"                           shift, and go to state 56
23645    "unset (T_UNSET)"                             shift, and go to state 57
23646    "isset (T_ISSET)"                             shift, and go to state 58
23647    "empty (T_EMPTY)"                             shift, and go to state 59
23648    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
23649    "class (T_CLASS)"                             shift, and go to state 61
23650    "trait (T_TRAIT)"                             shift, and go to state 62
23651    "interface (T_INTERFACE)"                     shift, and go to state 63
23652    "list (T_LIST)"                               shift, and go to state 64
23653    "array (T_ARRAY)"                             shift, and go to state 65
23654    "__LINE__ (T_LINE)"                           shift, and go to state 66
23655    "__FILE__ (T_FILE)"                           shift, and go to state 67
23656    "__DIR__ (T_DIR)"                             shift, and go to state 68
23657    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
23658    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
23659    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
23660    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
23661    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
23662    "namespace (T_NAMESPACE)"                     shift, and go to state 115
23663    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
23664    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
23665    '('                                           shift, and go to state 77
23666    ';'                                           shift, and go to state 78
23667    '{'                                           shift, and go to state 79
23668    '}'                                           shift, and go to state 848
23669    '`'                                           shift, and go to state 80
23670    '"'                                           shift, and go to state 81
23671    '$'                                           shift, and go to state 82
23672
23673    namespace_name                   go to state 83
23674    name                             go to state 84
23675    inner_statement                  go to state 377
23676    statement                        go to state 378
23677    function_declaration_statement   go to state 379
23678    class_declaration_statement      go to state 380
23679    class_modifiers                  go to state 89
23680    class_modifier                   go to state 90
23681    trait_declaration_statement      go to state 381
23682    interface_declaration_statement  go to state 382
23683    if_stmt_without_else             go to state 93
23684    if_stmt                          go to state 94
23685    alt_if_stmt_without_else         go to state 95
23686    alt_if_stmt                      go to state 96
23687    new_expr                         go to state 97
23688    expr                             go to state 98
23689    function                         go to state 99
23690    function_call                    go to state 100
23691    class_name                       go to state 101
23692    dereferencable_scalar            go to state 102
23693    scalar                           go to state 103
23694    constant                         go to state 104
23695    variable_class_name              go to state 105
23696    dereferencable                   go to state 106
23697    callable_expr                    go to state 107
23698    callable_variable                go to state 108
23699    variable                         go to state 109
23700    simple_variable                  go to state 110
23701    static_member                    go to state 111
23702    internal_functions_in_yacc       go to state 112
23703
23704
23705State 816
23706
23707  106 mixed_group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' inline_use_declarations possible_comma '}' .
23708
23709    $default  reduce using rule 106 (mixed_group_use_declaration)
23710
23711
23712State 817
23713
23714  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma . '}'
23715
23716    '}'  shift, and go to state 849
23717
23718
23719State 818
23720
23721  111 unprefixed_use_declarations: unprefixed_use_declarations ',' unprefixed_use_declaration .
23722
23723    $default  reduce using rule 111 (unprefixed_use_declarations)
23724
23725
23726State 819
23727
23728  103 group_use_declaration: namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}' .
23729
23730    $default  reduce using rule 103 (group_use_declaration)
23731
23732
23733State 820
23734
23735  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list . '}'
23736  245 class_statement_list: class_statement_list . class_statement
23737
23738    "static (T_STATIC)"        shift, and go to state 773
23739    "abstract (T_ABSTRACT)"    shift, and go to state 774
23740    "final (T_FINAL)"          shift, and go to state 775
23741    "private (T_PRIVATE)"      shift, and go to state 776
23742    "protected (T_PROTECTED)"  shift, and go to state 777
23743    "public (T_PUBLIC)"        shift, and go to state 778
23744    "use (T_USE)"              shift, and go to state 779
23745    "var (T_VAR)"              shift, and go to state 780
23746    '}'                        shift, and go to state 850
23747
23748    $default  reduce using rule 272 (method_modifiers)
23749
23750    class_statement             go to state 782
23751    variable_modifiers          go to state 783
23752    method_modifiers            go to state 784
23753    non_empty_member_modifiers  go to state 785
23754    member_modifier             go to state 786
23755
23756
23757State 821
23758
23759  249 class_statement: "use (T_USE)" name_list . trait_adaptations
23760  252 name_list: name_list . ',' name
23761
23762    ','  shift, and go to state 729
23763    ';'  shift, and go to state 851
23764    '{'  shift, and go to state 852
23765
23766    trait_adaptations  go to state 853
23767
23768
23769State 822
23770
23771  284 property: "variable (T_VARIABLE)" . backup_doc_comment
23772  285         | "variable (T_VARIABLE)" . '=' expr backup_doc_comment
23773
23774    '='  shift, and go to state 854
23775
23776    $default  reduce using rule 379 (backup_doc_comment)
23777
23778    backup_doc_comment  go to state 855
23779
23780
23781State 823
23782
23783  247 class_statement: variable_modifiers property_list . ';'
23784  282 property_list: property_list . ',' property
23785
23786    ','  shift, and go to state 856
23787    ';'  shift, and go to state 857
23788
23789
23790State 824
23791
23792  283 property_list: property .
23793
23794    $default  reduce using rule 283 (property_list)
23795
23796
23797State 825
23798
23799  248 class_statement: method_modifiers "const (T_CONST)" . class_const_list ';'
23800
23801    "include (T_INCLUDE)"            shift, and go to state 430
23802    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 431
23803    "eval (T_EVAL)"                  shift, and go to state 432
23804    "require (T_REQUIRE)"            shift, and go to state 433
23805    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 434
23806    "or (T_LOGICAL_OR)"              shift, and go to state 435
23807    "xor (T_LOGICAL_XOR)"            shift, and go to state 436
23808    "and (T_LOGICAL_AND)"            shift, and go to state 437
23809    "print (T_PRINT)"                shift, and go to state 438
23810    "yield (T_YIELD)"                shift, and go to state 439
23811    "instanceof (T_INSTANCEOF)"      shift, and go to state 440
23812    "new (T_NEW)"                    shift, and go to state 441
23813    "clone (T_CLONE)"                shift, and go to state 442
23814    "elseif (T_ELSEIF)"              shift, and go to state 443
23815    "else (T_ELSE)"                  shift, and go to state 444
23816    "endif (T_ENDIF)"                shift, and go to state 445
23817    "static (T_STATIC)"              shift, and go to state 446
23818    "abstract (T_ABSTRACT)"          shift, and go to state 447
23819    "final (T_FINAL)"                shift, and go to state 448
23820    "private (T_PRIVATE)"            shift, and go to state 449
23821    "protected (T_PROTECTED)"        shift, and go to state 450
23822    "public (T_PUBLIC)"              shift, and go to state 451
23823    "identifier (T_STRING)"          shift, and go to state 452
23824    "exit (T_EXIT)"                  shift, and go to state 453
23825    "if (T_IF)"                      shift, and go to state 454
23826    "echo (T_ECHO)"                  shift, and go to state 455
23827    "do (T_DO)"                      shift, and go to state 456
23828    "while (T_WHILE)"                shift, and go to state 457
23829    "endwhile (T_ENDWHILE)"          shift, and go to state 458
23830    "for (T_FOR)"                    shift, and go to state 459
23831    "endfor (T_ENDFOR)"              shift, and go to state 460
23832    "foreach (T_FOREACH)"            shift, and go to state 461
23833    "endforeach (T_ENDFOREACH)"      shift, and go to state 462
23834    "declare (T_DECLARE)"            shift, and go to state 463
23835    "enddeclare (T_ENDDECLARE)"      shift, and go to state 464
23836    "as (T_AS)"                      shift, and go to state 465
23837    "switch (T_SWITCH)"              shift, and go to state 466
23838    "endswitch (T_ENDSWITCH)"        shift, and go to state 467
23839    "case (T_CASE)"                  shift, and go to state 468
23840    "default (T_DEFAULT)"            shift, and go to state 469
23841    "break (T_BREAK)"                shift, and go to state 470
23842    "continue (T_CONTINUE)"          shift, and go to state 471
23843    "goto (T_GOTO)"                  shift, and go to state 472
23844    "function (T_FUNCTION)"          shift, and go to state 473
23845    "const (T_CONST)"                shift, and go to state 474
23846    "return (T_RETURN)"              shift, and go to state 475
23847    "try (T_TRY)"                    shift, and go to state 476
23848    "catch (T_CATCH)"                shift, and go to state 477
23849    "finally (T_FINALLY)"            shift, and go to state 478
23850    "throw (T_THROW)"                shift, and go to state 479
23851    "use (T_USE)"                    shift, and go to state 480
23852    "insteadof (T_INSTEADOF)"        shift, and go to state 481
23853    "global (T_GLOBAL)"              shift, and go to state 482
23854    "var (T_VAR)"                    shift, and go to state 483
23855    "unset (T_UNSET)"                shift, and go to state 484
23856    "isset (T_ISSET)"                shift, and go to state 485
23857    "empty (T_EMPTY)"                shift, and go to state 486
23858    "class (T_CLASS)"                shift, and go to state 487
23859    "trait (T_TRAIT)"                shift, and go to state 488
23860    "interface (T_INTERFACE)"        shift, and go to state 489
23861    "extends (T_EXTENDS)"            shift, and go to state 490
23862    "implements (T_IMPLEMENTS)"      shift, and go to state 491
23863    "list (T_LIST)"                  shift, and go to state 492
23864    "array (T_ARRAY)"                shift, and go to state 493
23865    "callable (T_CALLABLE)"          shift, and go to state 494
23866    "__LINE__ (T_LINE)"              shift, and go to state 495
23867    "__FILE__ (T_FILE)"              shift, and go to state 496
23868    "__DIR__ (T_DIR)"                shift, and go to state 497
23869    "__CLASS__ (T_CLASS_C)"          shift, and go to state 498
23870    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 499
23871    "__METHOD__ (T_METHOD_C)"        shift, and go to state 500
23872    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 501
23873    "namespace (T_NAMESPACE)"        shift, and go to state 502
23874    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 503
23875
23876    reserved_non_modifiers  go to state 505
23877    semi_reserved           go to state 506
23878    identifier              go to state 858
23879    class_const_list        go to state 859
23880    class_const_decl        go to state 860
23881
23882
23883State 826
23884
23885  250 class_statement: method_modifiers function . returns_ref identifier backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags
23886
23887    '&'  shift, and go to state 267
23888
23889    $default  reduce using rule 381 (returns_ref)
23890
23891    returns_ref  go to state 861
23892
23893
23894State 827
23895
23896  275 non_empty_member_modifiers: non_empty_member_modifiers member_modifier .
23897
23898    $default  reduce using rule 275 (non_empty_member_modifiers)
23899
23900
23901State 828
23902
23903  181 interface_declaration_statement: "interface (T_INTERFACE)" @7 "identifier (T_STRING)" interface_extends_list backup_doc_comment '{' class_statement_list '}' .
23904
23905    $default  reduce using rule 181 (interface_declaration_statement)
23906
23907
23908State 829
23909
23910  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' . class_statement_list '}'
23911
23912    $default  reduce using rule 246 (class_statement_list)
23913
23914    class_statement_list  go to state 862
23915
23916
23917State 830
23918
23919  231 return_type: ':' . type_expr
23920
23921    '?'                        shift, and go to state 684
23922    "identifier (T_STRING)"    shift, and go to state 114
23923    "array (T_ARRAY)"          shift, and go to state 685
23924    "callable (T_CALLABLE)"    shift, and go to state 686
23925    "namespace (T_NAMESPACE)"  shift, and go to state 115
23926    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
23927
23928    namespace_name  go to state 83
23929    name            go to state 687
23930    type_expr       go to state 863
23931    type            go to state 693
23932
23933
23934State 831
23935
23936  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type . backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
23937
23938    $default  reduce using rule 380 (backup_fn_flags)
23939
23940    backup_fn_flags  go to state 864
23941
23942
23943State 832
23944
23945  384 lexical_vars: "use (T_USE)" '(' . lexical_var_list ')'
23946
23947    '&'                      shift, and go to state 865
23948    "variable (T_VARIABLE)"  shift, and go to state 866
23949
23950    lexical_var_list  go to state 867
23951    lexical_var       go to state 868
23952
23953
23954State 833
23955
23956  376 expr: function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type . backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
23957
23958    $default  reduce using rule 380 (backup_fn_flags)
23959
23960    backup_fn_flags  go to state 869
23961
23962
23963State 834
23964
23965  221 parameter: optional_type is_reference is_variadic "variable (T_VARIABLE)" .
23966  222          | optional_type is_reference is_variadic "variable (T_VARIABLE)" . '=' expr
23967
23968    '='  shift, and go to state 870
23969
23970    $default  reduce using rule 221 (parameter)
23971
23972
23973State 835
23974
23975  245 class_statement_list: class_statement_list . class_statement
23976  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments extends_from implements_list backup_doc_comment '{' class_statement_list . '}'
23977
23978    "static (T_STATIC)"        shift, and go to state 773
23979    "abstract (T_ABSTRACT)"    shift, and go to state 774
23980    "final (T_FINAL)"          shift, and go to state 775
23981    "private (T_PRIVATE)"      shift, and go to state 776
23982    "protected (T_PROTECTED)"  shift, and go to state 777
23983    "public (T_PUBLIC)"        shift, and go to state 778
23984    "use (T_USE)"              shift, and go to state 779
23985    "var (T_VAR)"              shift, and go to state 780
23986    '}'                        shift, and go to state 871
23987
23988    $default  reduce using rule 272 (method_modifiers)
23989
23990    class_statement             go to state 782
23991    variable_modifiers          go to state 783
23992    method_modifiers            go to state 784
23993    non_empty_member_modifiers  go to state 785
23994    member_modifier             go to state 786
23995
23996
23997State 836
23998
23999  377 expr: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type . backup_fn_flags '{' inner_statement_list '}' backup_fn_flags
24000
24001    $default  reduce using rule 380 (backup_fn_flags)
24002
24003    backup_fn_flags  go to state 872
24004
24005
24006State 837
24007
24008  193 for_statement: ':' . inner_statement_list "endfor (T_ENDFOR)" ';'
24009
24010    $default  reduce using rule 124 (inner_statement_list)
24011
24012    inner_statement_list  go to state 873
24013
24014
24015State 838
24016
24017  192 for_statement: statement .
24018
24019    $default  reduce using rule 192 (for_statement)
24020
24021
24022State 839
24023
24024  136 statement: "for (T_FOR)" '(' for_exprs ';' for_exprs ';' for_exprs ')' for_statement .
24025
24026    $default  reduce using rule 136 (statement)
24027
24028
24029State 840
24030
24031  148 statement: "foreach (T_FOREACH)" '(' expr "as (T_AS)" foreach_variable "=> (T_DOUBLE_ARROW)" foreach_variable ')' foreach_statement .
24032
24033    $default  reduce using rule 148 (statement)
24034
24035
24036State 841
24037
24038  195 foreach_statement: ':' inner_statement_list "endforeach (T_ENDFOREACH)" . ';'
24039
24040    ';'  shift, and go to state 874
24041
24042
24043State 842
24044
24045  197 declare_statement: ':' inner_statement_list "enddeclare (T_ENDDECLARE)" ';' .
24046
24047    $default  reduce using rule 197 (declare_statement)
24048
24049
24050State 843
24051
24052  201 switch_case_list: ':' ';' case_list "endswitch (T_ENDSWITCH)" ';' .
24053
24054    $default  reduce using rule 201 (switch_case_list)
24055
24056
24057State 844
24058
24059  203 case_list: case_list "case (T_CASE)" expr case_separator . inner_statement_list
24060
24061    $default  reduce using rule 124 (inner_statement_list)
24062
24063    inner_statement_list  go to state 875
24064
24065
24066State 845
24067
24068  123 inner_statement_list: inner_statement_list . inner_statement
24069  204 case_list: case_list "default (T_DEFAULT)" case_separator inner_statement_list .
24070
24071    "include (T_INCLUDE)"                         shift, and go to state 4
24072    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
24073    "eval (T_EVAL)"                               shift, and go to state 6
24074    "require (T_REQUIRE)"                         shift, and go to state 7
24075    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
24076    "print (T_PRINT)"                             shift, and go to state 9
24077    "yield (T_YIELD)"                             shift, and go to state 10
24078    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
24079    '+'                                           shift, and go to state 12
24080    '-'                                           shift, and go to state 13
24081    '!'                                           shift, and go to state 14
24082    '~'                                           shift, and go to state 15
24083    "++ (T_INC)"                                  shift, and go to state 16
24084    "-- (T_DEC)"                                  shift, and go to state 17
24085    "(int) (T_INT_CAST)"                          shift, and go to state 18
24086    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
24087    "(string) (T_STRING_CAST)"                    shift, and go to state 20
24088    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
24089    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
24090    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
24091    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
24092    '@'                                           shift, and go to state 25
24093    '['                                           shift, and go to state 26
24094    "new (T_NEW)"                                 shift, and go to state 27
24095    "clone (T_CLONE)"                             shift, and go to state 28
24096    "static (T_STATIC)"                           shift, and go to state 29
24097    "abstract (T_ABSTRACT)"                       shift, and go to state 30
24098    "final (T_FINAL)"                             shift, and go to state 31
24099    "integer number (T_LNUMBER)"                  shift, and go to state 32
24100    "floating-point number (T_DNUMBER)"           shift, and go to state 33
24101    "identifier (T_STRING)"                       shift, and go to state 34
24102    "variable (T_VARIABLE)"                       shift, and go to state 35
24103    T_INLINE_HTML                                 shift, and go to state 36
24104    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
24105    "exit (T_EXIT)"                               shift, and go to state 38
24106    "if (T_IF)"                                   shift, and go to state 39
24107    "echo (T_ECHO)"                               shift, and go to state 40
24108    "do (T_DO)"                                   shift, and go to state 41
24109    "while (T_WHILE)"                             shift, and go to state 42
24110    "for (T_FOR)"                                 shift, and go to state 43
24111    "foreach (T_FOREACH)"                         shift, and go to state 44
24112    "declare (T_DECLARE)"                         shift, and go to state 45
24113    "switch (T_SWITCH)"                           shift, and go to state 46
24114    "break (T_BREAK)"                             shift, and go to state 47
24115    "continue (T_CONTINUE)"                       shift, and go to state 48
24116    "goto (T_GOTO)"                               shift, and go to state 49
24117    "function (T_FUNCTION)"                       shift, and go to state 50
24118    "return (T_RETURN)"                           shift, and go to state 52
24119    "try (T_TRY)"                                 shift, and go to state 53
24120    "throw (T_THROW)"                             shift, and go to state 54
24121    "global (T_GLOBAL)"                           shift, and go to state 56
24122    "unset (T_UNSET)"                             shift, and go to state 57
24123    "isset (T_ISSET)"                             shift, and go to state 58
24124    "empty (T_EMPTY)"                             shift, and go to state 59
24125    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
24126    "class (T_CLASS)"                             shift, and go to state 61
24127    "trait (T_TRAIT)"                             shift, and go to state 62
24128    "interface (T_INTERFACE)"                     shift, and go to state 63
24129    "list (T_LIST)"                               shift, and go to state 64
24130    "array (T_ARRAY)"                             shift, and go to state 65
24131    "__LINE__ (T_LINE)"                           shift, and go to state 66
24132    "__FILE__ (T_FILE)"                           shift, and go to state 67
24133    "__DIR__ (T_DIR)"                             shift, and go to state 68
24134    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
24135    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
24136    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
24137    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
24138    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
24139    "namespace (T_NAMESPACE)"                     shift, and go to state 115
24140    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
24141    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
24142    '('                                           shift, and go to state 77
24143    ';'                                           shift, and go to state 78
24144    '{'                                           shift, and go to state 79
24145    '`'                                           shift, and go to state 80
24146    '"'                                           shift, and go to state 81
24147    '$'                                           shift, and go to state 82
24148
24149    $default  reduce using rule 204 (case_list)
24150
24151    namespace_name                   go to state 83
24152    name                             go to state 84
24153    inner_statement                  go to state 377
24154    statement                        go to state 378
24155    function_declaration_statement   go to state 379
24156    class_declaration_statement      go to state 380
24157    class_modifiers                  go to state 89
24158    class_modifier                   go to state 90
24159    trait_declaration_statement      go to state 381
24160    interface_declaration_statement  go to state 382
24161    if_stmt_without_else             go to state 93
24162    if_stmt                          go to state 94
24163    alt_if_stmt_without_else         go to state 95
24164    alt_if_stmt                      go to state 96
24165    new_expr                         go to state 97
24166    expr                             go to state 98
24167    function                         go to state 99
24168    function_call                    go to state 100
24169    class_name                       go to state 101
24170    dereferencable_scalar            go to state 102
24171    scalar                           go to state 103
24172    constant                         go to state 104
24173    variable_class_name              go to state 105
24174    dereferencable                   go to state 106
24175    callable_expr                    go to state 107
24176    callable_variable                go to state 108
24177    variable                         go to state 109
24178    simple_variable                  go to state 110
24179    static_member                    go to state 111
24180    internal_functions_in_yacc       go to state 112
24181
24182
24183State 846
24184
24185  159 catch_name_list: catch_name_list '|' . name
24186
24187    "identifier (T_STRING)"    shift, and go to state 114
24188    "namespace (T_NAMESPACE)"  shift, and go to state 115
24189    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
24190
24191    namespace_name  go to state 83
24192    name            go to state 876
24193
24194
24195State 847
24196
24197  157 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" . ')' '{' inner_statement_list '}'
24198
24199    ')'  shift, and go to state 877
24200
24201
24202State 848
24203
24204  161 finally_statement: "finally (T_FINALLY)" '{' inner_statement_list '}' .
24205
24206    $default  reduce using rule 161 (finally_statement)
24207
24208
24209State 849
24210
24211  104 group_use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" '{' unprefixed_use_declarations possible_comma '}' .
24212
24213    $default  reduce using rule 104 (group_use_declaration)
24214
24215
24216State 850
24217
24218  173 class_declaration_statement: "class (T_CLASS)" @5 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}' .
24219
24220    $default  reduce using rule 173 (class_declaration_statement)
24221
24222
24223State 851
24224
24225  253 trait_adaptations: ';' .
24226
24227    $default  reduce using rule 253 (trait_adaptations)
24228
24229
24230State 852
24231
24232  254 trait_adaptations: '{' . '}'
24233  255                  | '{' . trait_adaptation_list '}'
24234
24235    "include (T_INCLUDE)"            shift, and go to state 430
24236    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 431
24237    "eval (T_EVAL)"                  shift, and go to state 432
24238    "require (T_REQUIRE)"            shift, and go to state 433
24239    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 434
24240    "or (T_LOGICAL_OR)"              shift, and go to state 435
24241    "xor (T_LOGICAL_XOR)"            shift, and go to state 436
24242    "and (T_LOGICAL_AND)"            shift, and go to state 437
24243    "print (T_PRINT)"                shift, and go to state 438
24244    "yield (T_YIELD)"                shift, and go to state 439
24245    "instanceof (T_INSTANCEOF)"      shift, and go to state 440
24246    "new (T_NEW)"                    shift, and go to state 441
24247    "clone (T_CLONE)"                shift, and go to state 442
24248    "elseif (T_ELSEIF)"              shift, and go to state 443
24249    "else (T_ELSE)"                  shift, and go to state 444
24250    "endif (T_ENDIF)"                shift, and go to state 445
24251    "static (T_STATIC)"              shift, and go to state 446
24252    "abstract (T_ABSTRACT)"          shift, and go to state 447
24253    "final (T_FINAL)"                shift, and go to state 448
24254    "private (T_PRIVATE)"            shift, and go to state 449
24255    "protected (T_PROTECTED)"        shift, and go to state 450
24256    "public (T_PUBLIC)"              shift, and go to state 451
24257    "identifier (T_STRING)"          shift, and go to state 878
24258    "exit (T_EXIT)"                  shift, and go to state 453
24259    "if (T_IF)"                      shift, and go to state 454
24260    "echo (T_ECHO)"                  shift, and go to state 455
24261    "do (T_DO)"                      shift, and go to state 456
24262    "while (T_WHILE)"                shift, and go to state 457
24263    "endwhile (T_ENDWHILE)"          shift, and go to state 458
24264    "for (T_FOR)"                    shift, and go to state 459
24265    "endfor (T_ENDFOR)"              shift, and go to state 460
24266    "foreach (T_FOREACH)"            shift, and go to state 461
24267    "endforeach (T_ENDFOREACH)"      shift, and go to state 462
24268    "declare (T_DECLARE)"            shift, and go to state 463
24269    "enddeclare (T_ENDDECLARE)"      shift, and go to state 464
24270    "as (T_AS)"                      shift, and go to state 465
24271    "switch (T_SWITCH)"              shift, and go to state 466
24272    "endswitch (T_ENDSWITCH)"        shift, and go to state 467
24273    "case (T_CASE)"                  shift, and go to state 468
24274    "default (T_DEFAULT)"            shift, and go to state 469
24275    "break (T_BREAK)"                shift, and go to state 470
24276    "continue (T_CONTINUE)"          shift, and go to state 471
24277    "goto (T_GOTO)"                  shift, and go to state 472
24278    "function (T_FUNCTION)"          shift, and go to state 473
24279    "const (T_CONST)"                shift, and go to state 474
24280    "return (T_RETURN)"              shift, and go to state 475
24281    "try (T_TRY)"                    shift, and go to state 476
24282    "catch (T_CATCH)"                shift, and go to state 477
24283    "finally (T_FINALLY)"            shift, and go to state 478
24284    "throw (T_THROW)"                shift, and go to state 479
24285    "use (T_USE)"                    shift, and go to state 480
24286    "insteadof (T_INSTEADOF)"        shift, and go to state 481
24287    "global (T_GLOBAL)"              shift, and go to state 482
24288    "var (T_VAR)"                    shift, and go to state 483
24289    "unset (T_UNSET)"                shift, and go to state 484
24290    "isset (T_ISSET)"                shift, and go to state 485
24291    "empty (T_EMPTY)"                shift, and go to state 486
24292    "class (T_CLASS)"                shift, and go to state 487
24293    "trait (T_TRAIT)"                shift, and go to state 488
24294    "interface (T_INTERFACE)"        shift, and go to state 489
24295    "extends (T_EXTENDS)"            shift, and go to state 490
24296    "implements (T_IMPLEMENTS)"      shift, and go to state 491
24297    "list (T_LIST)"                  shift, and go to state 492
24298    "array (T_ARRAY)"                shift, and go to state 493
24299    "callable (T_CALLABLE)"          shift, and go to state 494
24300    "__LINE__ (T_LINE)"              shift, and go to state 495
24301    "__FILE__ (T_FILE)"              shift, and go to state 496
24302    "__DIR__ (T_DIR)"                shift, and go to state 497
24303    "__CLASS__ (T_CLASS_C)"          shift, and go to state 498
24304    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 499
24305    "__METHOD__ (T_METHOD_C)"        shift, and go to state 500
24306    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 501
24307    "namespace (T_NAMESPACE)"        shift, and go to state 879
24308    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 503
24309    "\\ (T_NS_SEPARATOR)"            shift, and go to state 76
24310    '}'                              shift, and go to state 880
24311
24312    reserved_non_modifiers           go to state 505
24313    semi_reserved                    go to state 506
24314    identifier                       go to state 881
24315    namespace_name                   go to state 83
24316    name                             go to state 882
24317    trait_adaptation_list            go to state 883
24318    trait_adaptation                 go to state 884
24319    trait_precedence                 go to state 885
24320    trait_alias                      go to state 886
24321    trait_method_reference           go to state 887
24322    absolute_trait_method_reference  go to state 888
24323
24324
24325State 853
24326
24327  249 class_statement: "use (T_USE)" name_list trait_adaptations .
24328
24329    $default  reduce using rule 249 (class_statement)
24330
24331
24332State 854
24333
24334  285 property: "variable (T_VARIABLE)" '=' . expr backup_doc_comment
24335
24336    "include (T_INCLUDE)"                         shift, and go to state 4
24337    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
24338    "eval (T_EVAL)"                               shift, and go to state 6
24339    "require (T_REQUIRE)"                         shift, and go to state 7
24340    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
24341    "print (T_PRINT)"                             shift, and go to state 9
24342    "yield (T_YIELD)"                             shift, and go to state 10
24343    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
24344    '+'                                           shift, and go to state 12
24345    '-'                                           shift, and go to state 13
24346    '!'                                           shift, and go to state 14
24347    '~'                                           shift, and go to state 15
24348    "++ (T_INC)"                                  shift, and go to state 16
24349    "-- (T_DEC)"                                  shift, and go to state 17
24350    "(int) (T_INT_CAST)"                          shift, and go to state 18
24351    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
24352    "(string) (T_STRING_CAST)"                    shift, and go to state 20
24353    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
24354    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
24355    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
24356    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
24357    '@'                                           shift, and go to state 25
24358    '['                                           shift, and go to state 26
24359    "new (T_NEW)"                                 shift, and go to state 27
24360    "clone (T_CLONE)"                             shift, and go to state 28
24361    "static (T_STATIC)"                           shift, and go to state 113
24362    "integer number (T_LNUMBER)"                  shift, and go to state 32
24363    "floating-point number (T_DNUMBER)"           shift, and go to state 33
24364    "identifier (T_STRING)"                       shift, and go to state 114
24365    "variable (T_VARIABLE)"                       shift, and go to state 35
24366    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
24367    "exit (T_EXIT)"                               shift, and go to state 38
24368    "function (T_FUNCTION)"                       shift, and go to state 50
24369    "isset (T_ISSET)"                             shift, and go to state 58
24370    "empty (T_EMPTY)"                             shift, and go to state 59
24371    "list (T_LIST)"                               shift, and go to state 64
24372    "array (T_ARRAY)"                             shift, and go to state 65
24373    "__LINE__ (T_LINE)"                           shift, and go to state 66
24374    "__FILE__ (T_FILE)"                           shift, and go to state 67
24375    "__DIR__ (T_DIR)"                             shift, and go to state 68
24376    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
24377    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
24378    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
24379    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
24380    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
24381    "namespace (T_NAMESPACE)"                     shift, and go to state 115
24382    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
24383    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
24384    '('                                           shift, and go to state 77
24385    '`'                                           shift, and go to state 80
24386    '"'                                           shift, and go to state 81
24387    '$'                                           shift, and go to state 82
24388
24389    namespace_name              go to state 83
24390    name                        go to state 84
24391    new_expr                    go to state 97
24392    expr                        go to state 889
24393    function                    go to state 117
24394    function_call               go to state 100
24395    class_name                  go to state 101
24396    dereferencable_scalar       go to state 102
24397    scalar                      go to state 103
24398    constant                    go to state 104
24399    variable_class_name         go to state 105
24400    dereferencable              go to state 106
24401    callable_expr               go to state 107
24402    callable_variable           go to state 108
24403    variable                    go to state 109
24404    simple_variable             go to state 110
24405    static_member               go to state 111
24406    internal_functions_in_yacc  go to state 112
24407
24408
24409State 855
24410
24411  284 property: "variable (T_VARIABLE)" backup_doc_comment .
24412
24413    $default  reduce using rule 284 (property)
24414
24415
24416State 856
24417
24418  282 property_list: property_list ',' . property
24419
24420    "variable (T_VARIABLE)"  shift, and go to state 822
24421
24422    property  go to state 890
24423
24424
24425State 857
24426
24427  247 class_statement: variable_modifiers property_list ';' .
24428
24429    $default  reduce using rule 247 (class_statement)
24430
24431
24432State 858
24433
24434  288 class_const_decl: identifier . '=' expr backup_doc_comment
24435
24436    '='  shift, and go to state 891
24437
24438
24439State 859
24440
24441  248 class_statement: method_modifiers "const (T_CONST)" class_const_list . ';'
24442  286 class_const_list: class_const_list . ',' class_const_decl
24443
24444    ','  shift, and go to state 892
24445    ';'  shift, and go to state 893
24446
24447
24448State 860
24449
24450  287 class_const_list: class_const_decl .
24451
24452    $default  reduce using rule 287 (class_const_list)
24453
24454
24455State 861
24456
24457  250 class_statement: method_modifiers function returns_ref . identifier backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags
24458
24459    "include (T_INCLUDE)"            shift, and go to state 430
24460    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 431
24461    "eval (T_EVAL)"                  shift, and go to state 432
24462    "require (T_REQUIRE)"            shift, and go to state 433
24463    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 434
24464    "or (T_LOGICAL_OR)"              shift, and go to state 435
24465    "xor (T_LOGICAL_XOR)"            shift, and go to state 436
24466    "and (T_LOGICAL_AND)"            shift, and go to state 437
24467    "print (T_PRINT)"                shift, and go to state 438
24468    "yield (T_YIELD)"                shift, and go to state 439
24469    "instanceof (T_INSTANCEOF)"      shift, and go to state 440
24470    "new (T_NEW)"                    shift, and go to state 441
24471    "clone (T_CLONE)"                shift, and go to state 442
24472    "elseif (T_ELSEIF)"              shift, and go to state 443
24473    "else (T_ELSE)"                  shift, and go to state 444
24474    "endif (T_ENDIF)"                shift, and go to state 445
24475    "static (T_STATIC)"              shift, and go to state 446
24476    "abstract (T_ABSTRACT)"          shift, and go to state 447
24477    "final (T_FINAL)"                shift, and go to state 448
24478    "private (T_PRIVATE)"            shift, and go to state 449
24479    "protected (T_PROTECTED)"        shift, and go to state 450
24480    "public (T_PUBLIC)"              shift, and go to state 451
24481    "identifier (T_STRING)"          shift, and go to state 452
24482    "exit (T_EXIT)"                  shift, and go to state 453
24483    "if (T_IF)"                      shift, and go to state 454
24484    "echo (T_ECHO)"                  shift, and go to state 455
24485    "do (T_DO)"                      shift, and go to state 456
24486    "while (T_WHILE)"                shift, and go to state 457
24487    "endwhile (T_ENDWHILE)"          shift, and go to state 458
24488    "for (T_FOR)"                    shift, and go to state 459
24489    "endfor (T_ENDFOR)"              shift, and go to state 460
24490    "foreach (T_FOREACH)"            shift, and go to state 461
24491    "endforeach (T_ENDFOREACH)"      shift, and go to state 462
24492    "declare (T_DECLARE)"            shift, and go to state 463
24493    "enddeclare (T_ENDDECLARE)"      shift, and go to state 464
24494    "as (T_AS)"                      shift, and go to state 465
24495    "switch (T_SWITCH)"              shift, and go to state 466
24496    "endswitch (T_ENDSWITCH)"        shift, and go to state 467
24497    "case (T_CASE)"                  shift, and go to state 468
24498    "default (T_DEFAULT)"            shift, and go to state 469
24499    "break (T_BREAK)"                shift, and go to state 470
24500    "continue (T_CONTINUE)"          shift, and go to state 471
24501    "goto (T_GOTO)"                  shift, and go to state 472
24502    "function (T_FUNCTION)"          shift, and go to state 473
24503    "const (T_CONST)"                shift, and go to state 474
24504    "return (T_RETURN)"              shift, and go to state 475
24505    "try (T_TRY)"                    shift, and go to state 476
24506    "catch (T_CATCH)"                shift, and go to state 477
24507    "finally (T_FINALLY)"            shift, and go to state 478
24508    "throw (T_THROW)"                shift, and go to state 479
24509    "use (T_USE)"                    shift, and go to state 480
24510    "insteadof (T_INSTEADOF)"        shift, and go to state 481
24511    "global (T_GLOBAL)"              shift, and go to state 482
24512    "var (T_VAR)"                    shift, and go to state 483
24513    "unset (T_UNSET)"                shift, and go to state 484
24514    "isset (T_ISSET)"                shift, and go to state 485
24515    "empty (T_EMPTY)"                shift, and go to state 486
24516    "class (T_CLASS)"                shift, and go to state 487
24517    "trait (T_TRAIT)"                shift, and go to state 488
24518    "interface (T_INTERFACE)"        shift, and go to state 489
24519    "extends (T_EXTENDS)"            shift, and go to state 490
24520    "implements (T_IMPLEMENTS)"      shift, and go to state 491
24521    "list (T_LIST)"                  shift, and go to state 492
24522    "array (T_ARRAY)"                shift, and go to state 493
24523    "callable (T_CALLABLE)"          shift, and go to state 494
24524    "__LINE__ (T_LINE)"              shift, and go to state 495
24525    "__FILE__ (T_FILE)"              shift, and go to state 496
24526    "__DIR__ (T_DIR)"                shift, and go to state 497
24527    "__CLASS__ (T_CLASS_C)"          shift, and go to state 498
24528    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 499
24529    "__METHOD__ (T_METHOD_C)"        shift, and go to state 500
24530    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 501
24531    "namespace (T_NAMESPACE)"        shift, and go to state 502
24532    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 503
24533
24534    reserved_non_modifiers  go to state 505
24535    semi_reserved           go to state 506
24536    identifier              go to state 894
24537
24538
24539State 862
24540
24541  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list . '}'
24542  245 class_statement_list: class_statement_list . class_statement
24543
24544    "static (T_STATIC)"        shift, and go to state 773
24545    "abstract (T_ABSTRACT)"    shift, and go to state 774
24546    "final (T_FINAL)"          shift, and go to state 775
24547    "private (T_PRIVATE)"      shift, and go to state 776
24548    "protected (T_PROTECTED)"  shift, and go to state 777
24549    "public (T_PUBLIC)"        shift, and go to state 778
24550    "use (T_USE)"              shift, and go to state 779
24551    "var (T_VAR)"              shift, and go to state 780
24552    '}'                        shift, and go to state 895
24553
24554    $default  reduce using rule 272 (method_modifiers)
24555
24556    class_statement             go to state 782
24557    variable_modifiers          go to state 783
24558    method_modifiers            go to state 784
24559    non_empty_member_modifiers  go to state 785
24560    member_modifier             go to state 786
24561
24562
24563State 863
24564
24565  231 return_type: ':' type_expr .
24566
24567    $default  reduce using rule 231 (return_type)
24568
24569
24570State 864
24571
24572  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags . '{' inner_statement_list '}' backup_fn_flags
24573
24574    '{'  shift, and go to state 896
24575
24576
24577State 865
24578
24579  388 lexical_var: '&' . "variable (T_VARIABLE)"
24580
24581    "variable (T_VARIABLE)"  shift, and go to state 897
24582
24583
24584State 866
24585
24586  387 lexical_var: "variable (T_VARIABLE)" .
24587
24588    $default  reduce using rule 387 (lexical_var)
24589
24590
24591State 867
24592
24593  384 lexical_vars: "use (T_USE)" '(' lexical_var_list . ')'
24594  385 lexical_var_list: lexical_var_list . ',' lexical_var
24595
24596    ','  shift, and go to state 898
24597    ')'  shift, and go to state 899
24598
24599
24600State 868
24601
24602  386 lexical_var_list: lexical_var .
24603
24604    $default  reduce using rule 386 (lexical_var_list)
24605
24606
24607State 869
24608
24609  376 expr: function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags . '{' inner_statement_list '}' backup_fn_flags
24610
24611    '{'  shift, and go to state 900
24612
24613
24614State 870
24615
24616  222 parameter: optional_type is_reference is_variadic "variable (T_VARIABLE)" '=' . expr
24617
24618    "include (T_INCLUDE)"                         shift, and go to state 4
24619    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
24620    "eval (T_EVAL)"                               shift, and go to state 6
24621    "require (T_REQUIRE)"                         shift, and go to state 7
24622    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
24623    "print (T_PRINT)"                             shift, and go to state 9
24624    "yield (T_YIELD)"                             shift, and go to state 10
24625    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
24626    '+'                                           shift, and go to state 12
24627    '-'                                           shift, and go to state 13
24628    '!'                                           shift, and go to state 14
24629    '~'                                           shift, and go to state 15
24630    "++ (T_INC)"                                  shift, and go to state 16
24631    "-- (T_DEC)"                                  shift, and go to state 17
24632    "(int) (T_INT_CAST)"                          shift, and go to state 18
24633    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
24634    "(string) (T_STRING_CAST)"                    shift, and go to state 20
24635    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
24636    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
24637    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
24638    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
24639    '@'                                           shift, and go to state 25
24640    '['                                           shift, and go to state 26
24641    "new (T_NEW)"                                 shift, and go to state 27
24642    "clone (T_CLONE)"                             shift, and go to state 28
24643    "static (T_STATIC)"                           shift, and go to state 113
24644    "integer number (T_LNUMBER)"                  shift, and go to state 32
24645    "floating-point number (T_DNUMBER)"           shift, and go to state 33
24646    "identifier (T_STRING)"                       shift, and go to state 114
24647    "variable (T_VARIABLE)"                       shift, and go to state 35
24648    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
24649    "exit (T_EXIT)"                               shift, and go to state 38
24650    "function (T_FUNCTION)"                       shift, and go to state 50
24651    "isset (T_ISSET)"                             shift, and go to state 58
24652    "empty (T_EMPTY)"                             shift, and go to state 59
24653    "list (T_LIST)"                               shift, and go to state 64
24654    "array (T_ARRAY)"                             shift, and go to state 65
24655    "__LINE__ (T_LINE)"                           shift, and go to state 66
24656    "__FILE__ (T_FILE)"                           shift, and go to state 67
24657    "__DIR__ (T_DIR)"                             shift, and go to state 68
24658    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
24659    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
24660    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
24661    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
24662    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
24663    "namespace (T_NAMESPACE)"                     shift, and go to state 115
24664    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
24665    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
24666    '('                                           shift, and go to state 77
24667    '`'                                           shift, and go to state 80
24668    '"'                                           shift, and go to state 81
24669    '$'                                           shift, and go to state 82
24670
24671    namespace_name              go to state 83
24672    name                        go to state 84
24673    new_expr                    go to state 97
24674    expr                        go to state 901
24675    function                    go to state 117
24676    function_call               go to state 100
24677    class_name                  go to state 101
24678    dereferencable_scalar       go to state 102
24679    scalar                      go to state 103
24680    constant                    go to state 104
24681    variable_class_name         go to state 105
24682    dereferencable              go to state 106
24683    callable_expr               go to state 107
24684    callable_variable           go to state 108
24685    variable                    go to state 109
24686    simple_variable             go to state 110
24687    static_member               go to state 111
24688    internal_functions_in_yacc  go to state 112
24689
24690
24691State 871
24692
24693  298 anonymous_class: "class (T_CLASS)" @8 ctor_arguments extends_from implements_list backup_doc_comment '{' class_statement_list '}' .
24694
24695    $default  reduce using rule 298 (anonymous_class)
24696
24697
24698State 872
24699
24700  377 expr: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags . '{' inner_statement_list '}' backup_fn_flags
24701
24702    '{'  shift, and go to state 902
24703
24704
24705State 873
24706
24707  123 inner_statement_list: inner_statement_list . inner_statement
24708  193 for_statement: ':' inner_statement_list . "endfor (T_ENDFOR)" ';'
24709
24710    "include (T_INCLUDE)"                         shift, and go to state 4
24711    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
24712    "eval (T_EVAL)"                               shift, and go to state 6
24713    "require (T_REQUIRE)"                         shift, and go to state 7
24714    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
24715    "print (T_PRINT)"                             shift, and go to state 9
24716    "yield (T_YIELD)"                             shift, and go to state 10
24717    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
24718    '+'                                           shift, and go to state 12
24719    '-'                                           shift, and go to state 13
24720    '!'                                           shift, and go to state 14
24721    '~'                                           shift, and go to state 15
24722    "++ (T_INC)"                                  shift, and go to state 16
24723    "-- (T_DEC)"                                  shift, and go to state 17
24724    "(int) (T_INT_CAST)"                          shift, and go to state 18
24725    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
24726    "(string) (T_STRING_CAST)"                    shift, and go to state 20
24727    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
24728    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
24729    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
24730    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
24731    '@'                                           shift, and go to state 25
24732    '['                                           shift, and go to state 26
24733    "new (T_NEW)"                                 shift, and go to state 27
24734    "clone (T_CLONE)"                             shift, and go to state 28
24735    "static (T_STATIC)"                           shift, and go to state 29
24736    "abstract (T_ABSTRACT)"                       shift, and go to state 30
24737    "final (T_FINAL)"                             shift, and go to state 31
24738    "integer number (T_LNUMBER)"                  shift, and go to state 32
24739    "floating-point number (T_DNUMBER)"           shift, and go to state 33
24740    "identifier (T_STRING)"                       shift, and go to state 34
24741    "variable (T_VARIABLE)"                       shift, and go to state 35
24742    T_INLINE_HTML                                 shift, and go to state 36
24743    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
24744    "exit (T_EXIT)"                               shift, and go to state 38
24745    "if (T_IF)"                                   shift, and go to state 39
24746    "echo (T_ECHO)"                               shift, and go to state 40
24747    "do (T_DO)"                                   shift, and go to state 41
24748    "while (T_WHILE)"                             shift, and go to state 42
24749    "for (T_FOR)"                                 shift, and go to state 43
24750    "endfor (T_ENDFOR)"                           shift, and go to state 903
24751    "foreach (T_FOREACH)"                         shift, and go to state 44
24752    "declare (T_DECLARE)"                         shift, and go to state 45
24753    "switch (T_SWITCH)"                           shift, and go to state 46
24754    "break (T_BREAK)"                             shift, and go to state 47
24755    "continue (T_CONTINUE)"                       shift, and go to state 48
24756    "goto (T_GOTO)"                               shift, and go to state 49
24757    "function (T_FUNCTION)"                       shift, and go to state 50
24758    "return (T_RETURN)"                           shift, and go to state 52
24759    "try (T_TRY)"                                 shift, and go to state 53
24760    "throw (T_THROW)"                             shift, and go to state 54
24761    "global (T_GLOBAL)"                           shift, and go to state 56
24762    "unset (T_UNSET)"                             shift, and go to state 57
24763    "isset (T_ISSET)"                             shift, and go to state 58
24764    "empty (T_EMPTY)"                             shift, and go to state 59
24765    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
24766    "class (T_CLASS)"                             shift, and go to state 61
24767    "trait (T_TRAIT)"                             shift, and go to state 62
24768    "interface (T_INTERFACE)"                     shift, and go to state 63
24769    "list (T_LIST)"                               shift, and go to state 64
24770    "array (T_ARRAY)"                             shift, and go to state 65
24771    "__LINE__ (T_LINE)"                           shift, and go to state 66
24772    "__FILE__ (T_FILE)"                           shift, and go to state 67
24773    "__DIR__ (T_DIR)"                             shift, and go to state 68
24774    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
24775    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
24776    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
24777    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
24778    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
24779    "namespace (T_NAMESPACE)"                     shift, and go to state 115
24780    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
24781    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
24782    '('                                           shift, and go to state 77
24783    ';'                                           shift, and go to state 78
24784    '{'                                           shift, and go to state 79
24785    '`'                                           shift, and go to state 80
24786    '"'                                           shift, and go to state 81
24787    '$'                                           shift, and go to state 82
24788
24789    namespace_name                   go to state 83
24790    name                             go to state 84
24791    inner_statement                  go to state 377
24792    statement                        go to state 378
24793    function_declaration_statement   go to state 379
24794    class_declaration_statement      go to state 380
24795    class_modifiers                  go to state 89
24796    class_modifier                   go to state 90
24797    trait_declaration_statement      go to state 381
24798    interface_declaration_statement  go to state 382
24799    if_stmt_without_else             go to state 93
24800    if_stmt                          go to state 94
24801    alt_if_stmt_without_else         go to state 95
24802    alt_if_stmt                      go to state 96
24803    new_expr                         go to state 97
24804    expr                             go to state 98
24805    function                         go to state 99
24806    function_call                    go to state 100
24807    class_name                       go to state 101
24808    dereferencable_scalar            go to state 102
24809    scalar                           go to state 103
24810    constant                         go to state 104
24811    variable_class_name              go to state 105
24812    dereferencable                   go to state 106
24813    callable_expr                    go to state 107
24814    callable_variable                go to state 108
24815    variable                         go to state 109
24816    simple_variable                  go to state 110
24817    static_member                    go to state 111
24818    internal_functions_in_yacc       go to state 112
24819
24820
24821State 874
24822
24823  195 foreach_statement: ':' inner_statement_list "endforeach (T_ENDFOREACH)" ';' .
24824
24825    $default  reduce using rule 195 (foreach_statement)
24826
24827
24828State 875
24829
24830  123 inner_statement_list: inner_statement_list . inner_statement
24831  203 case_list: case_list "case (T_CASE)" expr case_separator inner_statement_list .
24832
24833    "include (T_INCLUDE)"                         shift, and go to state 4
24834    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
24835    "eval (T_EVAL)"                               shift, and go to state 6
24836    "require (T_REQUIRE)"                         shift, and go to state 7
24837    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
24838    "print (T_PRINT)"                             shift, and go to state 9
24839    "yield (T_YIELD)"                             shift, and go to state 10
24840    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
24841    '+'                                           shift, and go to state 12
24842    '-'                                           shift, and go to state 13
24843    '!'                                           shift, and go to state 14
24844    '~'                                           shift, and go to state 15
24845    "++ (T_INC)"                                  shift, and go to state 16
24846    "-- (T_DEC)"                                  shift, and go to state 17
24847    "(int) (T_INT_CAST)"                          shift, and go to state 18
24848    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
24849    "(string) (T_STRING_CAST)"                    shift, and go to state 20
24850    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
24851    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
24852    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
24853    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
24854    '@'                                           shift, and go to state 25
24855    '['                                           shift, and go to state 26
24856    "new (T_NEW)"                                 shift, and go to state 27
24857    "clone (T_CLONE)"                             shift, and go to state 28
24858    "static (T_STATIC)"                           shift, and go to state 29
24859    "abstract (T_ABSTRACT)"                       shift, and go to state 30
24860    "final (T_FINAL)"                             shift, and go to state 31
24861    "integer number (T_LNUMBER)"                  shift, and go to state 32
24862    "floating-point number (T_DNUMBER)"           shift, and go to state 33
24863    "identifier (T_STRING)"                       shift, and go to state 34
24864    "variable (T_VARIABLE)"                       shift, and go to state 35
24865    T_INLINE_HTML                                 shift, and go to state 36
24866    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
24867    "exit (T_EXIT)"                               shift, and go to state 38
24868    "if (T_IF)"                                   shift, and go to state 39
24869    "echo (T_ECHO)"                               shift, and go to state 40
24870    "do (T_DO)"                                   shift, and go to state 41
24871    "while (T_WHILE)"                             shift, and go to state 42
24872    "for (T_FOR)"                                 shift, and go to state 43
24873    "foreach (T_FOREACH)"                         shift, and go to state 44
24874    "declare (T_DECLARE)"                         shift, and go to state 45
24875    "switch (T_SWITCH)"                           shift, and go to state 46
24876    "break (T_BREAK)"                             shift, and go to state 47
24877    "continue (T_CONTINUE)"                       shift, and go to state 48
24878    "goto (T_GOTO)"                               shift, and go to state 49
24879    "function (T_FUNCTION)"                       shift, and go to state 50
24880    "return (T_RETURN)"                           shift, and go to state 52
24881    "try (T_TRY)"                                 shift, and go to state 53
24882    "throw (T_THROW)"                             shift, and go to state 54
24883    "global (T_GLOBAL)"                           shift, and go to state 56
24884    "unset (T_UNSET)"                             shift, and go to state 57
24885    "isset (T_ISSET)"                             shift, and go to state 58
24886    "empty (T_EMPTY)"                             shift, and go to state 59
24887    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
24888    "class (T_CLASS)"                             shift, and go to state 61
24889    "trait (T_TRAIT)"                             shift, and go to state 62
24890    "interface (T_INTERFACE)"                     shift, and go to state 63
24891    "list (T_LIST)"                               shift, and go to state 64
24892    "array (T_ARRAY)"                             shift, and go to state 65
24893    "__LINE__ (T_LINE)"                           shift, and go to state 66
24894    "__FILE__ (T_FILE)"                           shift, and go to state 67
24895    "__DIR__ (T_DIR)"                             shift, and go to state 68
24896    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
24897    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
24898    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
24899    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
24900    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
24901    "namespace (T_NAMESPACE)"                     shift, and go to state 115
24902    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
24903    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
24904    '('                                           shift, and go to state 77
24905    ';'                                           shift, and go to state 78
24906    '{'                                           shift, and go to state 79
24907    '`'                                           shift, and go to state 80
24908    '"'                                           shift, and go to state 81
24909    '$'                                           shift, and go to state 82
24910
24911    $default  reduce using rule 203 (case_list)
24912
24913    namespace_name                   go to state 83
24914    name                             go to state 84
24915    inner_statement                  go to state 377
24916    statement                        go to state 378
24917    function_declaration_statement   go to state 379
24918    class_declaration_statement      go to state 380
24919    class_modifiers                  go to state 89
24920    class_modifier                   go to state 90
24921    trait_declaration_statement      go to state 381
24922    interface_declaration_statement  go to state 382
24923    if_stmt_without_else             go to state 93
24924    if_stmt                          go to state 94
24925    alt_if_stmt_without_else         go to state 95
24926    alt_if_stmt                      go to state 96
24927    new_expr                         go to state 97
24928    expr                             go to state 98
24929    function                         go to state 99
24930    function_call                    go to state 100
24931    class_name                       go to state 101
24932    dereferencable_scalar            go to state 102
24933    scalar                           go to state 103
24934    constant                         go to state 104
24935    variable_class_name              go to state 105
24936    dereferencable                   go to state 106
24937    callable_expr                    go to state 107
24938    callable_variable                go to state 108
24939    variable                         go to state 109
24940    simple_variable                  go to state 110
24941    static_member                    go to state 111
24942    internal_functions_in_yacc       go to state 112
24943
24944
24945State 876
24946
24947  159 catch_name_list: catch_name_list '|' name .
24948
24949    $default  reduce using rule 159 (catch_name_list)
24950
24951
24952State 877
24953
24954  157 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' . '{' inner_statement_list '}'
24955
24956    '{'  shift, and go to state 904
24957
24958
24959State 878
24960
24961   76 identifier: "identifier (T_STRING)" .
24962   80 namespace_name: "identifier (T_STRING)" .
24963
24964    "as (T_AS)"  reduce using rule 76 (identifier)
24965    $default     reduce using rule 80 (namespace_name)
24966
24967
24968State 879
24969
24970   57 reserved_non_modifiers: "namespace (T_NAMESPACE)" .
24971   83 name: "namespace (T_NAMESPACE)" . "\\ (T_NS_SEPARATOR)" namespace_name
24972
24973    "\\ (T_NS_SEPARATOR)"  shift, and go to state 214
24974
24975    $default  reduce using rule 57 (reserved_non_modifiers)
24976
24977
24978State 880
24979
24980  254 trait_adaptations: '{' '}' .
24981
24982    $default  reduce using rule 254 (trait_adaptations)
24983
24984
24985State 881
24986
24987  265 trait_method_reference: identifier .
24988
24989    $default  reduce using rule 265 (trait_method_reference)
24990
24991
24992State 882
24993
24994  267 absolute_trait_method_reference: name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier
24995
24996    ":: (T_PAAMAYIM_NEKUDOTAYIM)"  shift, and go to state 905
24997
24998
24999State 883
25000
25001  255 trait_adaptations: '{' trait_adaptation_list . '}'
25002  257 trait_adaptation_list: trait_adaptation_list . trait_adaptation
25003
25004    "include (T_INCLUDE)"            shift, and go to state 430
25005    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 431
25006    "eval (T_EVAL)"                  shift, and go to state 432
25007    "require (T_REQUIRE)"            shift, and go to state 433
25008    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 434
25009    "or (T_LOGICAL_OR)"              shift, and go to state 435
25010    "xor (T_LOGICAL_XOR)"            shift, and go to state 436
25011    "and (T_LOGICAL_AND)"            shift, and go to state 437
25012    "print (T_PRINT)"                shift, and go to state 438
25013    "yield (T_YIELD)"                shift, and go to state 439
25014    "instanceof (T_INSTANCEOF)"      shift, and go to state 440
25015    "new (T_NEW)"                    shift, and go to state 441
25016    "clone (T_CLONE)"                shift, and go to state 442
25017    "elseif (T_ELSEIF)"              shift, and go to state 443
25018    "else (T_ELSE)"                  shift, and go to state 444
25019    "endif (T_ENDIF)"                shift, and go to state 445
25020    "static (T_STATIC)"              shift, and go to state 446
25021    "abstract (T_ABSTRACT)"          shift, and go to state 447
25022    "final (T_FINAL)"                shift, and go to state 448
25023    "private (T_PRIVATE)"            shift, and go to state 449
25024    "protected (T_PROTECTED)"        shift, and go to state 450
25025    "public (T_PUBLIC)"              shift, and go to state 451
25026    "identifier (T_STRING)"          shift, and go to state 878
25027    "exit (T_EXIT)"                  shift, and go to state 453
25028    "if (T_IF)"                      shift, and go to state 454
25029    "echo (T_ECHO)"                  shift, and go to state 455
25030    "do (T_DO)"                      shift, and go to state 456
25031    "while (T_WHILE)"                shift, and go to state 457
25032    "endwhile (T_ENDWHILE)"          shift, and go to state 458
25033    "for (T_FOR)"                    shift, and go to state 459
25034    "endfor (T_ENDFOR)"              shift, and go to state 460
25035    "foreach (T_FOREACH)"            shift, and go to state 461
25036    "endforeach (T_ENDFOREACH)"      shift, and go to state 462
25037    "declare (T_DECLARE)"            shift, and go to state 463
25038    "enddeclare (T_ENDDECLARE)"      shift, and go to state 464
25039    "as (T_AS)"                      shift, and go to state 465
25040    "switch (T_SWITCH)"              shift, and go to state 466
25041    "endswitch (T_ENDSWITCH)"        shift, and go to state 467
25042    "case (T_CASE)"                  shift, and go to state 468
25043    "default (T_DEFAULT)"            shift, and go to state 469
25044    "break (T_BREAK)"                shift, and go to state 470
25045    "continue (T_CONTINUE)"          shift, and go to state 471
25046    "goto (T_GOTO)"                  shift, and go to state 472
25047    "function (T_FUNCTION)"          shift, and go to state 473
25048    "const (T_CONST)"                shift, and go to state 474
25049    "return (T_RETURN)"              shift, and go to state 475
25050    "try (T_TRY)"                    shift, and go to state 476
25051    "catch (T_CATCH)"                shift, and go to state 477
25052    "finally (T_FINALLY)"            shift, and go to state 478
25053    "throw (T_THROW)"                shift, and go to state 479
25054    "use (T_USE)"                    shift, and go to state 480
25055    "insteadof (T_INSTEADOF)"        shift, and go to state 481
25056    "global (T_GLOBAL)"              shift, and go to state 482
25057    "var (T_VAR)"                    shift, and go to state 483
25058    "unset (T_UNSET)"                shift, and go to state 484
25059    "isset (T_ISSET)"                shift, and go to state 485
25060    "empty (T_EMPTY)"                shift, and go to state 486
25061    "class (T_CLASS)"                shift, and go to state 487
25062    "trait (T_TRAIT)"                shift, and go to state 488
25063    "interface (T_INTERFACE)"        shift, and go to state 489
25064    "extends (T_EXTENDS)"            shift, and go to state 490
25065    "implements (T_IMPLEMENTS)"      shift, and go to state 491
25066    "list (T_LIST)"                  shift, and go to state 492
25067    "array (T_ARRAY)"                shift, and go to state 493
25068    "callable (T_CALLABLE)"          shift, and go to state 494
25069    "__LINE__ (T_LINE)"              shift, and go to state 495
25070    "__FILE__ (T_FILE)"              shift, and go to state 496
25071    "__DIR__ (T_DIR)"                shift, and go to state 497
25072    "__CLASS__ (T_CLASS_C)"          shift, and go to state 498
25073    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 499
25074    "__METHOD__ (T_METHOD_C)"        shift, and go to state 500
25075    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 501
25076    "namespace (T_NAMESPACE)"        shift, and go to state 879
25077    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 503
25078    "\\ (T_NS_SEPARATOR)"            shift, and go to state 76
25079    '}'                              shift, and go to state 906
25080
25081    reserved_non_modifiers           go to state 505
25082    semi_reserved                    go to state 506
25083    identifier                       go to state 881
25084    namespace_name                   go to state 83
25085    name                             go to state 882
25086    trait_adaptation                 go to state 907
25087    trait_precedence                 go to state 885
25088    trait_alias                      go to state 886
25089    trait_method_reference           go to state 887
25090    absolute_trait_method_reference  go to state 888
25091
25092
25093State 884
25094
25095  256 trait_adaptation_list: trait_adaptation .
25096
25097    $default  reduce using rule 256 (trait_adaptation_list)
25098
25099
25100State 885
25101
25102  258 trait_adaptation: trait_precedence . ';'
25103
25104    ';'  shift, and go to state 908
25105
25106
25107State 886
25108
25109  259 trait_adaptation: trait_alias . ';'
25110
25111    ';'  shift, and go to state 909
25112
25113
25114State 887
25115
25116  261 trait_alias: trait_method_reference . "as (T_AS)" "identifier (T_STRING)"
25117  262            | trait_method_reference . "as (T_AS)" reserved_non_modifiers
25118  263            | trait_method_reference . "as (T_AS)" member_modifier identifier
25119  264            | trait_method_reference . "as (T_AS)" member_modifier
25120
25121    "as (T_AS)"  shift, and go to state 910
25122
25123
25124State 888
25125
25126  260 trait_precedence: absolute_trait_method_reference . "insteadof (T_INSTEADOF)" name_list
25127  266 trait_method_reference: absolute_trait_method_reference .
25128
25129    "insteadof (T_INSTEADOF)"  shift, and go to state 911
25130
25131    $default  reduce using rule 266 (trait_method_reference)
25132
25133
25134State 889
25135
25136  285 property: "variable (T_VARIABLE)" '=' expr . backup_doc_comment
25137  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
25138  324     | expr . "&& (T_BOOLEAN_AND)" expr
25139  325     | expr . "or (T_LOGICAL_OR)" expr
25140  326     | expr . "and (T_LOGICAL_AND)" expr
25141  327     | expr . "xor (T_LOGICAL_XOR)" expr
25142  328     | expr . '|' expr
25143  329     | expr . '&' expr
25144  330     | expr . '^' expr
25145  331     | expr . '.' expr
25146  332     | expr . '+' expr
25147  333     | expr . '-' expr
25148  334     | expr . '*' expr
25149  335     | expr . "** (T_POW)" expr
25150  336     | expr . '/' expr
25151  337     | expr . '%' expr
25152  338     | expr . "<< (T_SL)" expr
25153  339     | expr . ">> (T_SR)" expr
25154  344     | expr . "=== (T_IS_IDENTICAL)" expr
25155  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
25156  346     | expr . "== (T_IS_EQUAL)" expr
25157  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
25158  348     | expr . '<' expr
25159  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
25160  350     | expr . '>' expr
25161  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
25162  352     | expr . "<=> (T_SPACESHIP)" expr
25163  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
25164  356     | expr . '?' expr ':' expr
25165  357     | expr . '?' ':' expr
25166  358     | expr . "?? (T_COALESCE)" expr
25167
25168    "or (T_LOGICAL_OR)"           shift, and go to state 237
25169    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
25170    "and (T_LOGICAL_AND)"         shift, and go to state 239
25171    '?'                           shift, and go to state 240
25172    "?? (T_COALESCE)"             shift, and go to state 241
25173    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
25174    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
25175    '|'                           shift, and go to state 244
25176    '^'                           shift, and go to state 245
25177    '&'                           shift, and go to state 246
25178    "== (T_IS_EQUAL)"             shift, and go to state 247
25179    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
25180    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
25181    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
25182    "<=> (T_SPACESHIP)"           shift, and go to state 251
25183    '<'                           shift, and go to state 252
25184    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
25185    '>'                           shift, and go to state 254
25186    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
25187    "<< (T_SL)"                   shift, and go to state 256
25188    ">> (T_SR)"                   shift, and go to state 257
25189    '+'                           shift, and go to state 258
25190    '-'                           shift, and go to state 259
25191    '.'                           shift, and go to state 260
25192    '*'                           shift, and go to state 261
25193    '/'                           shift, and go to state 262
25194    '%'                           shift, and go to state 263
25195    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
25196    "** (T_POW)"                  shift, and go to state 265
25197
25198    $default  reduce using rule 379 (backup_doc_comment)
25199
25200    backup_doc_comment  go to state 912
25201
25202
25203State 890
25204
25205  282 property_list: property_list ',' property .
25206
25207    $default  reduce using rule 282 (property_list)
25208
25209
25210State 891
25211
25212  288 class_const_decl: identifier '=' . expr backup_doc_comment
25213
25214    "include (T_INCLUDE)"                         shift, and go to state 4
25215    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
25216    "eval (T_EVAL)"                               shift, and go to state 6
25217    "require (T_REQUIRE)"                         shift, and go to state 7
25218    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
25219    "print (T_PRINT)"                             shift, and go to state 9
25220    "yield (T_YIELD)"                             shift, and go to state 10
25221    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
25222    '+'                                           shift, and go to state 12
25223    '-'                                           shift, and go to state 13
25224    '!'                                           shift, and go to state 14
25225    '~'                                           shift, and go to state 15
25226    "++ (T_INC)"                                  shift, and go to state 16
25227    "-- (T_DEC)"                                  shift, and go to state 17
25228    "(int) (T_INT_CAST)"                          shift, and go to state 18
25229    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
25230    "(string) (T_STRING_CAST)"                    shift, and go to state 20
25231    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
25232    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
25233    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
25234    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
25235    '@'                                           shift, and go to state 25
25236    '['                                           shift, and go to state 26
25237    "new (T_NEW)"                                 shift, and go to state 27
25238    "clone (T_CLONE)"                             shift, and go to state 28
25239    "static (T_STATIC)"                           shift, and go to state 113
25240    "integer number (T_LNUMBER)"                  shift, and go to state 32
25241    "floating-point number (T_DNUMBER)"           shift, and go to state 33
25242    "identifier (T_STRING)"                       shift, and go to state 114
25243    "variable (T_VARIABLE)"                       shift, and go to state 35
25244    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
25245    "exit (T_EXIT)"                               shift, and go to state 38
25246    "function (T_FUNCTION)"                       shift, and go to state 50
25247    "isset (T_ISSET)"                             shift, and go to state 58
25248    "empty (T_EMPTY)"                             shift, and go to state 59
25249    "list (T_LIST)"                               shift, and go to state 64
25250    "array (T_ARRAY)"                             shift, and go to state 65
25251    "__LINE__ (T_LINE)"                           shift, and go to state 66
25252    "__FILE__ (T_FILE)"                           shift, and go to state 67
25253    "__DIR__ (T_DIR)"                             shift, and go to state 68
25254    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
25255    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
25256    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
25257    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
25258    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
25259    "namespace (T_NAMESPACE)"                     shift, and go to state 115
25260    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
25261    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
25262    '('                                           shift, and go to state 77
25263    '`'                                           shift, and go to state 80
25264    '"'                                           shift, and go to state 81
25265    '$'                                           shift, and go to state 82
25266
25267    namespace_name              go to state 83
25268    name                        go to state 84
25269    new_expr                    go to state 97
25270    expr                        go to state 913
25271    function                    go to state 117
25272    function_call               go to state 100
25273    class_name                  go to state 101
25274    dereferencable_scalar       go to state 102
25275    scalar                      go to state 103
25276    constant                    go to state 104
25277    variable_class_name         go to state 105
25278    dereferencable              go to state 106
25279    callable_expr               go to state 107
25280    callable_variable           go to state 108
25281    variable                    go to state 109
25282    simple_variable             go to state 110
25283    static_member               go to state 111
25284    internal_functions_in_yacc  go to state 112
25285
25286
25287State 892
25288
25289  286 class_const_list: class_const_list ',' . class_const_decl
25290
25291    "include (T_INCLUDE)"            shift, and go to state 430
25292    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 431
25293    "eval (T_EVAL)"                  shift, and go to state 432
25294    "require (T_REQUIRE)"            shift, and go to state 433
25295    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 434
25296    "or (T_LOGICAL_OR)"              shift, and go to state 435
25297    "xor (T_LOGICAL_XOR)"            shift, and go to state 436
25298    "and (T_LOGICAL_AND)"            shift, and go to state 437
25299    "print (T_PRINT)"                shift, and go to state 438
25300    "yield (T_YIELD)"                shift, and go to state 439
25301    "instanceof (T_INSTANCEOF)"      shift, and go to state 440
25302    "new (T_NEW)"                    shift, and go to state 441
25303    "clone (T_CLONE)"                shift, and go to state 442
25304    "elseif (T_ELSEIF)"              shift, and go to state 443
25305    "else (T_ELSE)"                  shift, and go to state 444
25306    "endif (T_ENDIF)"                shift, and go to state 445
25307    "static (T_STATIC)"              shift, and go to state 446
25308    "abstract (T_ABSTRACT)"          shift, and go to state 447
25309    "final (T_FINAL)"                shift, and go to state 448
25310    "private (T_PRIVATE)"            shift, and go to state 449
25311    "protected (T_PROTECTED)"        shift, and go to state 450
25312    "public (T_PUBLIC)"              shift, and go to state 451
25313    "identifier (T_STRING)"          shift, and go to state 452
25314    "exit (T_EXIT)"                  shift, and go to state 453
25315    "if (T_IF)"                      shift, and go to state 454
25316    "echo (T_ECHO)"                  shift, and go to state 455
25317    "do (T_DO)"                      shift, and go to state 456
25318    "while (T_WHILE)"                shift, and go to state 457
25319    "endwhile (T_ENDWHILE)"          shift, and go to state 458
25320    "for (T_FOR)"                    shift, and go to state 459
25321    "endfor (T_ENDFOR)"              shift, and go to state 460
25322    "foreach (T_FOREACH)"            shift, and go to state 461
25323    "endforeach (T_ENDFOREACH)"      shift, and go to state 462
25324    "declare (T_DECLARE)"            shift, and go to state 463
25325    "enddeclare (T_ENDDECLARE)"      shift, and go to state 464
25326    "as (T_AS)"                      shift, and go to state 465
25327    "switch (T_SWITCH)"              shift, and go to state 466
25328    "endswitch (T_ENDSWITCH)"        shift, and go to state 467
25329    "case (T_CASE)"                  shift, and go to state 468
25330    "default (T_DEFAULT)"            shift, and go to state 469
25331    "break (T_BREAK)"                shift, and go to state 470
25332    "continue (T_CONTINUE)"          shift, and go to state 471
25333    "goto (T_GOTO)"                  shift, and go to state 472
25334    "function (T_FUNCTION)"          shift, and go to state 473
25335    "const (T_CONST)"                shift, and go to state 474
25336    "return (T_RETURN)"              shift, and go to state 475
25337    "try (T_TRY)"                    shift, and go to state 476
25338    "catch (T_CATCH)"                shift, and go to state 477
25339    "finally (T_FINALLY)"            shift, and go to state 478
25340    "throw (T_THROW)"                shift, and go to state 479
25341    "use (T_USE)"                    shift, and go to state 480
25342    "insteadof (T_INSTEADOF)"        shift, and go to state 481
25343    "global (T_GLOBAL)"              shift, and go to state 482
25344    "var (T_VAR)"                    shift, and go to state 483
25345    "unset (T_UNSET)"                shift, and go to state 484
25346    "isset (T_ISSET)"                shift, and go to state 485
25347    "empty (T_EMPTY)"                shift, and go to state 486
25348    "class (T_CLASS)"                shift, and go to state 487
25349    "trait (T_TRAIT)"                shift, and go to state 488
25350    "interface (T_INTERFACE)"        shift, and go to state 489
25351    "extends (T_EXTENDS)"            shift, and go to state 490
25352    "implements (T_IMPLEMENTS)"      shift, and go to state 491
25353    "list (T_LIST)"                  shift, and go to state 492
25354    "array (T_ARRAY)"                shift, and go to state 493
25355    "callable (T_CALLABLE)"          shift, and go to state 494
25356    "__LINE__ (T_LINE)"              shift, and go to state 495
25357    "__FILE__ (T_FILE)"              shift, and go to state 496
25358    "__DIR__ (T_DIR)"                shift, and go to state 497
25359    "__CLASS__ (T_CLASS_C)"          shift, and go to state 498
25360    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 499
25361    "__METHOD__ (T_METHOD_C)"        shift, and go to state 500
25362    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 501
25363    "namespace (T_NAMESPACE)"        shift, and go to state 502
25364    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 503
25365
25366    reserved_non_modifiers  go to state 505
25367    semi_reserved           go to state 506
25368    identifier              go to state 858
25369    class_const_decl        go to state 914
25370
25371
25372State 893
25373
25374  248 class_statement: method_modifiers "const (T_CONST)" class_const_list ';' .
25375
25376    $default  reduce using rule 248 (class_statement)
25377
25378
25379State 894
25380
25381  250 class_statement: method_modifiers function returns_ref identifier . backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags
25382
25383    $default  reduce using rule 379 (backup_doc_comment)
25384
25385    backup_doc_comment  go to state 915
25386
25387
25388State 895
25389
25390  171 class_declaration_statement: class_modifiers "class (T_CLASS)" @4 "identifier (T_STRING)" extends_from implements_list backup_doc_comment '{' class_statement_list '}' .
25391
25392    $default  reduce using rule 171 (class_declaration_statement)
25393
25394
25395State 896
25396
25397  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' . inner_statement_list '}' backup_fn_flags
25398
25399    $default  reduce using rule 124 (inner_statement_list)
25400
25401    inner_statement_list  go to state 916
25402
25403
25404State 897
25405
25406  388 lexical_var: '&' "variable (T_VARIABLE)" .
25407
25408    $default  reduce using rule 388 (lexical_var)
25409
25410
25411State 898
25412
25413  385 lexical_var_list: lexical_var_list ',' . lexical_var
25414
25415    '&'                      shift, and go to state 865
25416    "variable (T_VARIABLE)"  shift, and go to state 866
25417
25418    lexical_var  go to state 917
25419
25420
25421State 899
25422
25423  384 lexical_vars: "use (T_USE)" '(' lexical_var_list ')' .
25424
25425    $default  reduce using rule 384 (lexical_vars)
25426
25427
25428State 900
25429
25430  376 expr: function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' . inner_statement_list '}' backup_fn_flags
25431
25432    $default  reduce using rule 124 (inner_statement_list)
25433
25434    inner_statement_list  go to state 918
25435
25436
25437State 901
25438
25439  222 parameter: optional_type is_reference is_variadic "variable (T_VARIABLE)" '=' expr .
25440  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
25441  324     | expr . "&& (T_BOOLEAN_AND)" expr
25442  325     | expr . "or (T_LOGICAL_OR)" expr
25443  326     | expr . "and (T_LOGICAL_AND)" expr
25444  327     | expr . "xor (T_LOGICAL_XOR)" expr
25445  328     | expr . '|' expr
25446  329     | expr . '&' expr
25447  330     | expr . '^' expr
25448  331     | expr . '.' expr
25449  332     | expr . '+' expr
25450  333     | expr . '-' expr
25451  334     | expr . '*' expr
25452  335     | expr . "** (T_POW)" expr
25453  336     | expr . '/' expr
25454  337     | expr . '%' expr
25455  338     | expr . "<< (T_SL)" expr
25456  339     | expr . ">> (T_SR)" expr
25457  344     | expr . "=== (T_IS_IDENTICAL)" expr
25458  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
25459  346     | expr . "== (T_IS_EQUAL)" expr
25460  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
25461  348     | expr . '<' expr
25462  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
25463  350     | expr . '>' expr
25464  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
25465  352     | expr . "<=> (T_SPACESHIP)" expr
25466  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
25467  356     | expr . '?' expr ':' expr
25468  357     | expr . '?' ':' expr
25469  358     | expr . "?? (T_COALESCE)" expr
25470
25471    "or (T_LOGICAL_OR)"           shift, and go to state 237
25472    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
25473    "and (T_LOGICAL_AND)"         shift, and go to state 239
25474    '?'                           shift, and go to state 240
25475    "?? (T_COALESCE)"             shift, and go to state 241
25476    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
25477    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
25478    '|'                           shift, and go to state 244
25479    '^'                           shift, and go to state 245
25480    '&'                           shift, and go to state 246
25481    "== (T_IS_EQUAL)"             shift, and go to state 247
25482    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
25483    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
25484    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
25485    "<=> (T_SPACESHIP)"           shift, and go to state 251
25486    '<'                           shift, and go to state 252
25487    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
25488    '>'                           shift, and go to state 254
25489    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
25490    "<< (T_SL)"                   shift, and go to state 256
25491    ">> (T_SR)"                   shift, and go to state 257
25492    '+'                           shift, and go to state 258
25493    '-'                           shift, and go to state 259
25494    '.'                           shift, and go to state 260
25495    '*'                           shift, and go to state 261
25496    '/'                           shift, and go to state 262
25497    '%'                           shift, and go to state 263
25498    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
25499    "** (T_POW)"                  shift, and go to state 265
25500
25501    $default  reduce using rule 222 (parameter)
25502
25503
25504State 902
25505
25506  377 expr: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' . inner_statement_list '}' backup_fn_flags
25507
25508    $default  reduce using rule 124 (inner_statement_list)
25509
25510    inner_statement_list  go to state 919
25511
25512
25513State 903
25514
25515  193 for_statement: ':' inner_statement_list "endfor (T_ENDFOR)" . ';'
25516
25517    ';'  shift, and go to state 920
25518
25519
25520State 904
25521
25522  157 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' '{' . inner_statement_list '}'
25523
25524    $default  reduce using rule 124 (inner_statement_list)
25525
25526    inner_statement_list  go to state 921
25527
25528
25529State 905
25530
25531  267 absolute_trait_method_reference: name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . identifier
25532
25533    "include (T_INCLUDE)"            shift, and go to state 430
25534    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 431
25535    "eval (T_EVAL)"                  shift, and go to state 432
25536    "require (T_REQUIRE)"            shift, and go to state 433
25537    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 434
25538    "or (T_LOGICAL_OR)"              shift, and go to state 435
25539    "xor (T_LOGICAL_XOR)"            shift, and go to state 436
25540    "and (T_LOGICAL_AND)"            shift, and go to state 437
25541    "print (T_PRINT)"                shift, and go to state 438
25542    "yield (T_YIELD)"                shift, and go to state 439
25543    "instanceof (T_INSTANCEOF)"      shift, and go to state 440
25544    "new (T_NEW)"                    shift, and go to state 441
25545    "clone (T_CLONE)"                shift, and go to state 442
25546    "elseif (T_ELSEIF)"              shift, and go to state 443
25547    "else (T_ELSE)"                  shift, and go to state 444
25548    "endif (T_ENDIF)"                shift, and go to state 445
25549    "static (T_STATIC)"              shift, and go to state 446
25550    "abstract (T_ABSTRACT)"          shift, and go to state 447
25551    "final (T_FINAL)"                shift, and go to state 448
25552    "private (T_PRIVATE)"            shift, and go to state 449
25553    "protected (T_PROTECTED)"        shift, and go to state 450
25554    "public (T_PUBLIC)"              shift, and go to state 451
25555    "identifier (T_STRING)"          shift, and go to state 452
25556    "exit (T_EXIT)"                  shift, and go to state 453
25557    "if (T_IF)"                      shift, and go to state 454
25558    "echo (T_ECHO)"                  shift, and go to state 455
25559    "do (T_DO)"                      shift, and go to state 456
25560    "while (T_WHILE)"                shift, and go to state 457
25561    "endwhile (T_ENDWHILE)"          shift, and go to state 458
25562    "for (T_FOR)"                    shift, and go to state 459
25563    "endfor (T_ENDFOR)"              shift, and go to state 460
25564    "foreach (T_FOREACH)"            shift, and go to state 461
25565    "endforeach (T_ENDFOREACH)"      shift, and go to state 462
25566    "declare (T_DECLARE)"            shift, and go to state 463
25567    "enddeclare (T_ENDDECLARE)"      shift, and go to state 464
25568    "as (T_AS)"                      shift, and go to state 465
25569    "switch (T_SWITCH)"              shift, and go to state 466
25570    "endswitch (T_ENDSWITCH)"        shift, and go to state 467
25571    "case (T_CASE)"                  shift, and go to state 468
25572    "default (T_DEFAULT)"            shift, and go to state 469
25573    "break (T_BREAK)"                shift, and go to state 470
25574    "continue (T_CONTINUE)"          shift, and go to state 471
25575    "goto (T_GOTO)"                  shift, and go to state 472
25576    "function (T_FUNCTION)"          shift, and go to state 473
25577    "const (T_CONST)"                shift, and go to state 474
25578    "return (T_RETURN)"              shift, and go to state 475
25579    "try (T_TRY)"                    shift, and go to state 476
25580    "catch (T_CATCH)"                shift, and go to state 477
25581    "finally (T_FINALLY)"            shift, and go to state 478
25582    "throw (T_THROW)"                shift, and go to state 479
25583    "use (T_USE)"                    shift, and go to state 480
25584    "insteadof (T_INSTEADOF)"        shift, and go to state 481
25585    "global (T_GLOBAL)"              shift, and go to state 482
25586    "var (T_VAR)"                    shift, and go to state 483
25587    "unset (T_UNSET)"                shift, and go to state 484
25588    "isset (T_ISSET)"                shift, and go to state 485
25589    "empty (T_EMPTY)"                shift, and go to state 486
25590    "class (T_CLASS)"                shift, and go to state 487
25591    "trait (T_TRAIT)"                shift, and go to state 488
25592    "interface (T_INTERFACE)"        shift, and go to state 489
25593    "extends (T_EXTENDS)"            shift, and go to state 490
25594    "implements (T_IMPLEMENTS)"      shift, and go to state 491
25595    "list (T_LIST)"                  shift, and go to state 492
25596    "array (T_ARRAY)"                shift, and go to state 493
25597    "callable (T_CALLABLE)"          shift, and go to state 494
25598    "__LINE__ (T_LINE)"              shift, and go to state 495
25599    "__FILE__ (T_FILE)"              shift, and go to state 496
25600    "__DIR__ (T_DIR)"                shift, and go to state 497
25601    "__CLASS__ (T_CLASS_C)"          shift, and go to state 498
25602    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 499
25603    "__METHOD__ (T_METHOD_C)"        shift, and go to state 500
25604    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 501
25605    "namespace (T_NAMESPACE)"        shift, and go to state 502
25606    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 503
25607
25608    reserved_non_modifiers  go to state 505
25609    semi_reserved           go to state 506
25610    identifier              go to state 922
25611
25612
25613State 906
25614
25615  255 trait_adaptations: '{' trait_adaptation_list '}' .
25616
25617    $default  reduce using rule 255 (trait_adaptations)
25618
25619
25620State 907
25621
25622  257 trait_adaptation_list: trait_adaptation_list trait_adaptation .
25623
25624    $default  reduce using rule 257 (trait_adaptation_list)
25625
25626
25627State 908
25628
25629  258 trait_adaptation: trait_precedence ';' .
25630
25631    $default  reduce using rule 258 (trait_adaptation)
25632
25633
25634State 909
25635
25636  259 trait_adaptation: trait_alias ';' .
25637
25638    $default  reduce using rule 259 (trait_adaptation)
25639
25640
25641State 910
25642
25643  261 trait_alias: trait_method_reference "as (T_AS)" . "identifier (T_STRING)"
25644  262            | trait_method_reference "as (T_AS)" . reserved_non_modifiers
25645  263            | trait_method_reference "as (T_AS)" . member_modifier identifier
25646  264            | trait_method_reference "as (T_AS)" . member_modifier
25647
25648    "include (T_INCLUDE)"            shift, and go to state 430
25649    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 431
25650    "eval (T_EVAL)"                  shift, and go to state 432
25651    "require (T_REQUIRE)"            shift, and go to state 433
25652    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 434
25653    "or (T_LOGICAL_OR)"              shift, and go to state 435
25654    "xor (T_LOGICAL_XOR)"            shift, and go to state 436
25655    "and (T_LOGICAL_AND)"            shift, and go to state 437
25656    "print (T_PRINT)"                shift, and go to state 438
25657    "yield (T_YIELD)"                shift, and go to state 439
25658    "instanceof (T_INSTANCEOF)"      shift, and go to state 440
25659    "new (T_NEW)"                    shift, and go to state 441
25660    "clone (T_CLONE)"                shift, and go to state 442
25661    "elseif (T_ELSEIF)"              shift, and go to state 443
25662    "else (T_ELSE)"                  shift, and go to state 444
25663    "endif (T_ENDIF)"                shift, and go to state 445
25664    "static (T_STATIC)"              shift, and go to state 773
25665    "abstract (T_ABSTRACT)"          shift, and go to state 774
25666    "final (T_FINAL)"                shift, and go to state 775
25667    "private (T_PRIVATE)"            shift, and go to state 776
25668    "protected (T_PROTECTED)"        shift, and go to state 777
25669    "public (T_PUBLIC)"              shift, and go to state 778
25670    "identifier (T_STRING)"          shift, and go to state 923
25671    "exit (T_EXIT)"                  shift, and go to state 453
25672    "if (T_IF)"                      shift, and go to state 454
25673    "echo (T_ECHO)"                  shift, and go to state 455
25674    "do (T_DO)"                      shift, and go to state 456
25675    "while (T_WHILE)"                shift, and go to state 457
25676    "endwhile (T_ENDWHILE)"          shift, and go to state 458
25677    "for (T_FOR)"                    shift, and go to state 459
25678    "endfor (T_ENDFOR)"              shift, and go to state 460
25679    "foreach (T_FOREACH)"            shift, and go to state 461
25680    "endforeach (T_ENDFOREACH)"      shift, and go to state 462
25681    "declare (T_DECLARE)"            shift, and go to state 463
25682    "enddeclare (T_ENDDECLARE)"      shift, and go to state 464
25683    "as (T_AS)"                      shift, and go to state 465
25684    "switch (T_SWITCH)"              shift, and go to state 466
25685    "endswitch (T_ENDSWITCH)"        shift, and go to state 467
25686    "case (T_CASE)"                  shift, and go to state 468
25687    "default (T_DEFAULT)"            shift, and go to state 469
25688    "break (T_BREAK)"                shift, and go to state 470
25689    "continue (T_CONTINUE)"          shift, and go to state 471
25690    "goto (T_GOTO)"                  shift, and go to state 472
25691    "function (T_FUNCTION)"          shift, and go to state 473
25692    "const (T_CONST)"                shift, and go to state 474
25693    "return (T_RETURN)"              shift, and go to state 475
25694    "try (T_TRY)"                    shift, and go to state 476
25695    "catch (T_CATCH)"                shift, and go to state 477
25696    "finally (T_FINALLY)"            shift, and go to state 478
25697    "throw (T_THROW)"                shift, and go to state 479
25698    "use (T_USE)"                    shift, and go to state 480
25699    "insteadof (T_INSTEADOF)"        shift, and go to state 481
25700    "global (T_GLOBAL)"              shift, and go to state 482
25701    "var (T_VAR)"                    shift, and go to state 483
25702    "unset (T_UNSET)"                shift, and go to state 484
25703    "isset (T_ISSET)"                shift, and go to state 485
25704    "empty (T_EMPTY)"                shift, and go to state 486
25705    "class (T_CLASS)"                shift, and go to state 487
25706    "trait (T_TRAIT)"                shift, and go to state 488
25707    "interface (T_INTERFACE)"        shift, and go to state 489
25708    "extends (T_EXTENDS)"            shift, and go to state 490
25709    "implements (T_IMPLEMENTS)"      shift, and go to state 491
25710    "list (T_LIST)"                  shift, and go to state 492
25711    "array (T_ARRAY)"                shift, and go to state 493
25712    "callable (T_CALLABLE)"          shift, and go to state 494
25713    "__LINE__ (T_LINE)"              shift, and go to state 495
25714    "__FILE__ (T_FILE)"              shift, and go to state 496
25715    "__DIR__ (T_DIR)"                shift, and go to state 497
25716    "__CLASS__ (T_CLASS_C)"          shift, and go to state 498
25717    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 499
25718    "__METHOD__ (T_METHOD_C)"        shift, and go to state 500
25719    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 501
25720    "namespace (T_NAMESPACE)"        shift, and go to state 502
25721    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 503
25722
25723    reserved_non_modifiers  go to state 924
25724    member_modifier         go to state 925
25725
25726
25727State 911
25728
25729  260 trait_precedence: absolute_trait_method_reference "insteadof (T_INSTEADOF)" . name_list
25730
25731    "identifier (T_STRING)"    shift, and go to state 114
25732    "namespace (T_NAMESPACE)"  shift, and go to state 115
25733    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
25734
25735    namespace_name  go to state 83
25736    name            go to state 666
25737    name_list       go to state 926
25738
25739
25740State 912
25741
25742  285 property: "variable (T_VARIABLE)" '=' expr backup_doc_comment .
25743
25744    $default  reduce using rule 285 (property)
25745
25746
25747State 913
25748
25749  288 class_const_decl: identifier '=' expr . backup_doc_comment
25750  323 expr: expr . "|| (T_BOOLEAN_OR)" expr
25751  324     | expr . "&& (T_BOOLEAN_AND)" expr
25752  325     | expr . "or (T_LOGICAL_OR)" expr
25753  326     | expr . "and (T_LOGICAL_AND)" expr
25754  327     | expr . "xor (T_LOGICAL_XOR)" expr
25755  328     | expr . '|' expr
25756  329     | expr . '&' expr
25757  330     | expr . '^' expr
25758  331     | expr . '.' expr
25759  332     | expr . '+' expr
25760  333     | expr . '-' expr
25761  334     | expr . '*' expr
25762  335     | expr . "** (T_POW)" expr
25763  336     | expr . '/' expr
25764  337     | expr . '%' expr
25765  338     | expr . "<< (T_SL)" expr
25766  339     | expr . ">> (T_SR)" expr
25767  344     | expr . "=== (T_IS_IDENTICAL)" expr
25768  345     | expr . "!== (T_IS_NOT_IDENTICAL)" expr
25769  346     | expr . "== (T_IS_EQUAL)" expr
25770  347     | expr . "!= (T_IS_NOT_EQUAL)" expr
25771  348     | expr . '<' expr
25772  349     | expr . "<= (T_IS_SMALLER_OR_EQUAL)" expr
25773  350     | expr . '>' expr
25774  351     | expr . ">= (T_IS_GREATER_OR_EQUAL)" expr
25775  352     | expr . "<=> (T_SPACESHIP)" expr
25776  353     | expr . "instanceof (T_INSTANCEOF)" class_name_reference
25777  356     | expr . '?' expr ':' expr
25778  357     | expr . '?' ':' expr
25779  358     | expr . "?? (T_COALESCE)" expr
25780
25781    "or (T_LOGICAL_OR)"           shift, and go to state 237
25782    "xor (T_LOGICAL_XOR)"         shift, and go to state 238
25783    "and (T_LOGICAL_AND)"         shift, and go to state 239
25784    '?'                           shift, and go to state 240
25785    "?? (T_COALESCE)"             shift, and go to state 241
25786    "|| (T_BOOLEAN_OR)"           shift, and go to state 242
25787    "&& (T_BOOLEAN_AND)"          shift, and go to state 243
25788    '|'                           shift, and go to state 244
25789    '^'                           shift, and go to state 245
25790    '&'                           shift, and go to state 246
25791    "== (T_IS_EQUAL)"             shift, and go to state 247
25792    "!= (T_IS_NOT_EQUAL)"         shift, and go to state 248
25793    "=== (T_IS_IDENTICAL)"        shift, and go to state 249
25794    "!== (T_IS_NOT_IDENTICAL)"    shift, and go to state 250
25795    "<=> (T_SPACESHIP)"           shift, and go to state 251
25796    '<'                           shift, and go to state 252
25797    "<= (T_IS_SMALLER_OR_EQUAL)"  shift, and go to state 253
25798    '>'                           shift, and go to state 254
25799    ">= (T_IS_GREATER_OR_EQUAL)"  shift, and go to state 255
25800    "<< (T_SL)"                   shift, and go to state 256
25801    ">> (T_SR)"                   shift, and go to state 257
25802    '+'                           shift, and go to state 258
25803    '-'                           shift, and go to state 259
25804    '.'                           shift, and go to state 260
25805    '*'                           shift, and go to state 261
25806    '/'                           shift, and go to state 262
25807    '%'                           shift, and go to state 263
25808    "instanceof (T_INSTANCEOF)"   shift, and go to state 264
25809    "** (T_POW)"                  shift, and go to state 265
25810
25811    $default  reduce using rule 379 (backup_doc_comment)
25812
25813    backup_doc_comment  go to state 927
25814
25815
25816State 914
25817
25818  286 class_const_list: class_const_list ',' class_const_decl .
25819
25820    $default  reduce using rule 286 (class_const_list)
25821
25822
25823State 915
25824
25825  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment . '(' parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags
25826
25827    '('  shift, and go to state 928
25828
25829
25830State 916
25831
25832  123 inner_statement_list: inner_statement_list . inner_statement
25833  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list . '}' backup_fn_flags
25834
25835    "include (T_INCLUDE)"                         shift, and go to state 4
25836    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
25837    "eval (T_EVAL)"                               shift, and go to state 6
25838    "require (T_REQUIRE)"                         shift, and go to state 7
25839    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
25840    "print (T_PRINT)"                             shift, and go to state 9
25841    "yield (T_YIELD)"                             shift, and go to state 10
25842    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
25843    '+'                                           shift, and go to state 12
25844    '-'                                           shift, and go to state 13
25845    '!'                                           shift, and go to state 14
25846    '~'                                           shift, and go to state 15
25847    "++ (T_INC)"                                  shift, and go to state 16
25848    "-- (T_DEC)"                                  shift, and go to state 17
25849    "(int) (T_INT_CAST)"                          shift, and go to state 18
25850    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
25851    "(string) (T_STRING_CAST)"                    shift, and go to state 20
25852    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
25853    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
25854    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
25855    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
25856    '@'                                           shift, and go to state 25
25857    '['                                           shift, and go to state 26
25858    "new (T_NEW)"                                 shift, and go to state 27
25859    "clone (T_CLONE)"                             shift, and go to state 28
25860    "static (T_STATIC)"                           shift, and go to state 29
25861    "abstract (T_ABSTRACT)"                       shift, and go to state 30
25862    "final (T_FINAL)"                             shift, and go to state 31
25863    "integer number (T_LNUMBER)"                  shift, and go to state 32
25864    "floating-point number (T_DNUMBER)"           shift, and go to state 33
25865    "identifier (T_STRING)"                       shift, and go to state 34
25866    "variable (T_VARIABLE)"                       shift, and go to state 35
25867    T_INLINE_HTML                                 shift, and go to state 36
25868    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
25869    "exit (T_EXIT)"                               shift, and go to state 38
25870    "if (T_IF)"                                   shift, and go to state 39
25871    "echo (T_ECHO)"                               shift, and go to state 40
25872    "do (T_DO)"                                   shift, and go to state 41
25873    "while (T_WHILE)"                             shift, and go to state 42
25874    "for (T_FOR)"                                 shift, and go to state 43
25875    "foreach (T_FOREACH)"                         shift, and go to state 44
25876    "declare (T_DECLARE)"                         shift, and go to state 45
25877    "switch (T_SWITCH)"                           shift, and go to state 46
25878    "break (T_BREAK)"                             shift, and go to state 47
25879    "continue (T_CONTINUE)"                       shift, and go to state 48
25880    "goto (T_GOTO)"                               shift, and go to state 49
25881    "function (T_FUNCTION)"                       shift, and go to state 50
25882    "return (T_RETURN)"                           shift, and go to state 52
25883    "try (T_TRY)"                                 shift, and go to state 53
25884    "throw (T_THROW)"                             shift, and go to state 54
25885    "global (T_GLOBAL)"                           shift, and go to state 56
25886    "unset (T_UNSET)"                             shift, and go to state 57
25887    "isset (T_ISSET)"                             shift, and go to state 58
25888    "empty (T_EMPTY)"                             shift, and go to state 59
25889    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
25890    "class (T_CLASS)"                             shift, and go to state 61
25891    "trait (T_TRAIT)"                             shift, and go to state 62
25892    "interface (T_INTERFACE)"                     shift, and go to state 63
25893    "list (T_LIST)"                               shift, and go to state 64
25894    "array (T_ARRAY)"                             shift, and go to state 65
25895    "__LINE__ (T_LINE)"                           shift, and go to state 66
25896    "__FILE__ (T_FILE)"                           shift, and go to state 67
25897    "__DIR__ (T_DIR)"                             shift, and go to state 68
25898    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
25899    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
25900    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
25901    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
25902    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
25903    "namespace (T_NAMESPACE)"                     shift, and go to state 115
25904    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
25905    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
25906    '('                                           shift, and go to state 77
25907    ';'                                           shift, and go to state 78
25908    '{'                                           shift, and go to state 79
25909    '}'                                           shift, and go to state 929
25910    '`'                                           shift, and go to state 80
25911    '"'                                           shift, and go to state 81
25912    '$'                                           shift, and go to state 82
25913
25914    namespace_name                   go to state 83
25915    name                             go to state 84
25916    inner_statement                  go to state 377
25917    statement                        go to state 378
25918    function_declaration_statement   go to state 379
25919    class_declaration_statement      go to state 380
25920    class_modifiers                  go to state 89
25921    class_modifier                   go to state 90
25922    trait_declaration_statement      go to state 381
25923    interface_declaration_statement  go to state 382
25924    if_stmt_without_else             go to state 93
25925    if_stmt                          go to state 94
25926    alt_if_stmt_without_else         go to state 95
25927    alt_if_stmt                      go to state 96
25928    new_expr                         go to state 97
25929    expr                             go to state 98
25930    function                         go to state 99
25931    function_call                    go to state 100
25932    class_name                       go to state 101
25933    dereferencable_scalar            go to state 102
25934    scalar                           go to state 103
25935    constant                         go to state 104
25936    variable_class_name              go to state 105
25937    dereferencable                   go to state 106
25938    callable_expr                    go to state 107
25939    callable_variable                go to state 108
25940    variable                         go to state 109
25941    simple_variable                  go to state 110
25942    static_member                    go to state 111
25943    internal_functions_in_yacc       go to state 112
25944
25945
25946State 917
25947
25948  385 lexical_var_list: lexical_var_list ',' lexical_var .
25949
25950    $default  reduce using rule 385 (lexical_var_list)
25951
25952
25953State 918
25954
25955  123 inner_statement_list: inner_statement_list . inner_statement
25956  376 expr: function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list . '}' backup_fn_flags
25957
25958    "include (T_INCLUDE)"                         shift, and go to state 4
25959    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
25960    "eval (T_EVAL)"                               shift, and go to state 6
25961    "require (T_REQUIRE)"                         shift, and go to state 7
25962    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
25963    "print (T_PRINT)"                             shift, and go to state 9
25964    "yield (T_YIELD)"                             shift, and go to state 10
25965    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
25966    '+'                                           shift, and go to state 12
25967    '-'                                           shift, and go to state 13
25968    '!'                                           shift, and go to state 14
25969    '~'                                           shift, and go to state 15
25970    "++ (T_INC)"                                  shift, and go to state 16
25971    "-- (T_DEC)"                                  shift, and go to state 17
25972    "(int) (T_INT_CAST)"                          shift, and go to state 18
25973    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
25974    "(string) (T_STRING_CAST)"                    shift, and go to state 20
25975    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
25976    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
25977    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
25978    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
25979    '@'                                           shift, and go to state 25
25980    '['                                           shift, and go to state 26
25981    "new (T_NEW)"                                 shift, and go to state 27
25982    "clone (T_CLONE)"                             shift, and go to state 28
25983    "static (T_STATIC)"                           shift, and go to state 29
25984    "abstract (T_ABSTRACT)"                       shift, and go to state 30
25985    "final (T_FINAL)"                             shift, and go to state 31
25986    "integer number (T_LNUMBER)"                  shift, and go to state 32
25987    "floating-point number (T_DNUMBER)"           shift, and go to state 33
25988    "identifier (T_STRING)"                       shift, and go to state 34
25989    "variable (T_VARIABLE)"                       shift, and go to state 35
25990    T_INLINE_HTML                                 shift, and go to state 36
25991    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
25992    "exit (T_EXIT)"                               shift, and go to state 38
25993    "if (T_IF)"                                   shift, and go to state 39
25994    "echo (T_ECHO)"                               shift, and go to state 40
25995    "do (T_DO)"                                   shift, and go to state 41
25996    "while (T_WHILE)"                             shift, and go to state 42
25997    "for (T_FOR)"                                 shift, and go to state 43
25998    "foreach (T_FOREACH)"                         shift, and go to state 44
25999    "declare (T_DECLARE)"                         shift, and go to state 45
26000    "switch (T_SWITCH)"                           shift, and go to state 46
26001    "break (T_BREAK)"                             shift, and go to state 47
26002    "continue (T_CONTINUE)"                       shift, and go to state 48
26003    "goto (T_GOTO)"                               shift, and go to state 49
26004    "function (T_FUNCTION)"                       shift, and go to state 50
26005    "return (T_RETURN)"                           shift, and go to state 52
26006    "try (T_TRY)"                                 shift, and go to state 53
26007    "throw (T_THROW)"                             shift, and go to state 54
26008    "global (T_GLOBAL)"                           shift, and go to state 56
26009    "unset (T_UNSET)"                             shift, and go to state 57
26010    "isset (T_ISSET)"                             shift, and go to state 58
26011    "empty (T_EMPTY)"                             shift, and go to state 59
26012    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
26013    "class (T_CLASS)"                             shift, and go to state 61
26014    "trait (T_TRAIT)"                             shift, and go to state 62
26015    "interface (T_INTERFACE)"                     shift, and go to state 63
26016    "list (T_LIST)"                               shift, and go to state 64
26017    "array (T_ARRAY)"                             shift, and go to state 65
26018    "__LINE__ (T_LINE)"                           shift, and go to state 66
26019    "__FILE__ (T_FILE)"                           shift, and go to state 67
26020    "__DIR__ (T_DIR)"                             shift, and go to state 68
26021    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
26022    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
26023    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
26024    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
26025    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
26026    "namespace (T_NAMESPACE)"                     shift, and go to state 115
26027    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
26028    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
26029    '('                                           shift, and go to state 77
26030    ';'                                           shift, and go to state 78
26031    '{'                                           shift, and go to state 79
26032    '}'                                           shift, and go to state 930
26033    '`'                                           shift, and go to state 80
26034    '"'                                           shift, and go to state 81
26035    '$'                                           shift, and go to state 82
26036
26037    namespace_name                   go to state 83
26038    name                             go to state 84
26039    inner_statement                  go to state 377
26040    statement                        go to state 378
26041    function_declaration_statement   go to state 379
26042    class_declaration_statement      go to state 380
26043    class_modifiers                  go to state 89
26044    class_modifier                   go to state 90
26045    trait_declaration_statement      go to state 381
26046    interface_declaration_statement  go to state 382
26047    if_stmt_without_else             go to state 93
26048    if_stmt                          go to state 94
26049    alt_if_stmt_without_else         go to state 95
26050    alt_if_stmt                      go to state 96
26051    new_expr                         go to state 97
26052    expr                             go to state 98
26053    function                         go to state 99
26054    function_call                    go to state 100
26055    class_name                       go to state 101
26056    dereferencable_scalar            go to state 102
26057    scalar                           go to state 103
26058    constant                         go to state 104
26059    variable_class_name              go to state 105
26060    dereferencable                   go to state 106
26061    callable_expr                    go to state 107
26062    callable_variable                go to state 108
26063    variable                         go to state 109
26064    simple_variable                  go to state 110
26065    static_member                    go to state 111
26066    internal_functions_in_yacc       go to state 112
26067
26068
26069State 919
26070
26071  123 inner_statement_list: inner_statement_list . inner_statement
26072  377 expr: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list . '}' backup_fn_flags
26073
26074    "include (T_INCLUDE)"                         shift, and go to state 4
26075    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
26076    "eval (T_EVAL)"                               shift, and go to state 6
26077    "require (T_REQUIRE)"                         shift, and go to state 7
26078    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
26079    "print (T_PRINT)"                             shift, and go to state 9
26080    "yield (T_YIELD)"                             shift, and go to state 10
26081    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
26082    '+'                                           shift, and go to state 12
26083    '-'                                           shift, and go to state 13
26084    '!'                                           shift, and go to state 14
26085    '~'                                           shift, and go to state 15
26086    "++ (T_INC)"                                  shift, and go to state 16
26087    "-- (T_DEC)"                                  shift, and go to state 17
26088    "(int) (T_INT_CAST)"                          shift, and go to state 18
26089    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
26090    "(string) (T_STRING_CAST)"                    shift, and go to state 20
26091    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
26092    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
26093    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
26094    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
26095    '@'                                           shift, and go to state 25
26096    '['                                           shift, and go to state 26
26097    "new (T_NEW)"                                 shift, and go to state 27
26098    "clone (T_CLONE)"                             shift, and go to state 28
26099    "static (T_STATIC)"                           shift, and go to state 29
26100    "abstract (T_ABSTRACT)"                       shift, and go to state 30
26101    "final (T_FINAL)"                             shift, and go to state 31
26102    "integer number (T_LNUMBER)"                  shift, and go to state 32
26103    "floating-point number (T_DNUMBER)"           shift, and go to state 33
26104    "identifier (T_STRING)"                       shift, and go to state 34
26105    "variable (T_VARIABLE)"                       shift, and go to state 35
26106    T_INLINE_HTML                                 shift, and go to state 36
26107    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
26108    "exit (T_EXIT)"                               shift, and go to state 38
26109    "if (T_IF)"                                   shift, and go to state 39
26110    "echo (T_ECHO)"                               shift, and go to state 40
26111    "do (T_DO)"                                   shift, and go to state 41
26112    "while (T_WHILE)"                             shift, and go to state 42
26113    "for (T_FOR)"                                 shift, and go to state 43
26114    "foreach (T_FOREACH)"                         shift, and go to state 44
26115    "declare (T_DECLARE)"                         shift, and go to state 45
26116    "switch (T_SWITCH)"                           shift, and go to state 46
26117    "break (T_BREAK)"                             shift, and go to state 47
26118    "continue (T_CONTINUE)"                       shift, and go to state 48
26119    "goto (T_GOTO)"                               shift, and go to state 49
26120    "function (T_FUNCTION)"                       shift, and go to state 50
26121    "return (T_RETURN)"                           shift, and go to state 52
26122    "try (T_TRY)"                                 shift, and go to state 53
26123    "throw (T_THROW)"                             shift, and go to state 54
26124    "global (T_GLOBAL)"                           shift, and go to state 56
26125    "unset (T_UNSET)"                             shift, and go to state 57
26126    "isset (T_ISSET)"                             shift, and go to state 58
26127    "empty (T_EMPTY)"                             shift, and go to state 59
26128    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
26129    "class (T_CLASS)"                             shift, and go to state 61
26130    "trait (T_TRAIT)"                             shift, and go to state 62
26131    "interface (T_INTERFACE)"                     shift, and go to state 63
26132    "list (T_LIST)"                               shift, and go to state 64
26133    "array (T_ARRAY)"                             shift, and go to state 65
26134    "__LINE__ (T_LINE)"                           shift, and go to state 66
26135    "__FILE__ (T_FILE)"                           shift, and go to state 67
26136    "__DIR__ (T_DIR)"                             shift, and go to state 68
26137    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
26138    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
26139    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
26140    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
26141    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
26142    "namespace (T_NAMESPACE)"                     shift, and go to state 115
26143    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
26144    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
26145    '('                                           shift, and go to state 77
26146    ';'                                           shift, and go to state 78
26147    '{'                                           shift, and go to state 79
26148    '}'                                           shift, and go to state 931
26149    '`'                                           shift, and go to state 80
26150    '"'                                           shift, and go to state 81
26151    '$'                                           shift, and go to state 82
26152
26153    namespace_name                   go to state 83
26154    name                             go to state 84
26155    inner_statement                  go to state 377
26156    statement                        go to state 378
26157    function_declaration_statement   go to state 379
26158    class_declaration_statement      go to state 380
26159    class_modifiers                  go to state 89
26160    class_modifier                   go to state 90
26161    trait_declaration_statement      go to state 381
26162    interface_declaration_statement  go to state 382
26163    if_stmt_without_else             go to state 93
26164    if_stmt                          go to state 94
26165    alt_if_stmt_without_else         go to state 95
26166    alt_if_stmt                      go to state 96
26167    new_expr                         go to state 97
26168    expr                             go to state 98
26169    function                         go to state 99
26170    function_call                    go to state 100
26171    class_name                       go to state 101
26172    dereferencable_scalar            go to state 102
26173    scalar                           go to state 103
26174    constant                         go to state 104
26175    variable_class_name              go to state 105
26176    dereferencable                   go to state 106
26177    callable_expr                    go to state 107
26178    callable_variable                go to state 108
26179    variable                         go to state 109
26180    simple_variable                  go to state 110
26181    static_member                    go to state 111
26182    internal_functions_in_yacc       go to state 112
26183
26184
26185State 920
26186
26187  193 for_statement: ':' inner_statement_list "endfor (T_ENDFOR)" ';' .
26188
26189    $default  reduce using rule 193 (for_statement)
26190
26191
26192State 921
26193
26194  123 inner_statement_list: inner_statement_list . inner_statement
26195  157 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list . '}'
26196
26197    "include (T_INCLUDE)"                         shift, and go to state 4
26198    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
26199    "eval (T_EVAL)"                               shift, and go to state 6
26200    "require (T_REQUIRE)"                         shift, and go to state 7
26201    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
26202    "print (T_PRINT)"                             shift, and go to state 9
26203    "yield (T_YIELD)"                             shift, and go to state 10
26204    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
26205    '+'                                           shift, and go to state 12
26206    '-'                                           shift, and go to state 13
26207    '!'                                           shift, and go to state 14
26208    '~'                                           shift, and go to state 15
26209    "++ (T_INC)"                                  shift, and go to state 16
26210    "-- (T_DEC)"                                  shift, and go to state 17
26211    "(int) (T_INT_CAST)"                          shift, and go to state 18
26212    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
26213    "(string) (T_STRING_CAST)"                    shift, and go to state 20
26214    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
26215    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
26216    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
26217    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
26218    '@'                                           shift, and go to state 25
26219    '['                                           shift, and go to state 26
26220    "new (T_NEW)"                                 shift, and go to state 27
26221    "clone (T_CLONE)"                             shift, and go to state 28
26222    "static (T_STATIC)"                           shift, and go to state 29
26223    "abstract (T_ABSTRACT)"                       shift, and go to state 30
26224    "final (T_FINAL)"                             shift, and go to state 31
26225    "integer number (T_LNUMBER)"                  shift, and go to state 32
26226    "floating-point number (T_DNUMBER)"           shift, and go to state 33
26227    "identifier (T_STRING)"                       shift, and go to state 34
26228    "variable (T_VARIABLE)"                       shift, and go to state 35
26229    T_INLINE_HTML                                 shift, and go to state 36
26230    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
26231    "exit (T_EXIT)"                               shift, and go to state 38
26232    "if (T_IF)"                                   shift, and go to state 39
26233    "echo (T_ECHO)"                               shift, and go to state 40
26234    "do (T_DO)"                                   shift, and go to state 41
26235    "while (T_WHILE)"                             shift, and go to state 42
26236    "for (T_FOR)"                                 shift, and go to state 43
26237    "foreach (T_FOREACH)"                         shift, and go to state 44
26238    "declare (T_DECLARE)"                         shift, and go to state 45
26239    "switch (T_SWITCH)"                           shift, and go to state 46
26240    "break (T_BREAK)"                             shift, and go to state 47
26241    "continue (T_CONTINUE)"                       shift, and go to state 48
26242    "goto (T_GOTO)"                               shift, and go to state 49
26243    "function (T_FUNCTION)"                       shift, and go to state 50
26244    "return (T_RETURN)"                           shift, and go to state 52
26245    "try (T_TRY)"                                 shift, and go to state 53
26246    "throw (T_THROW)"                             shift, and go to state 54
26247    "global (T_GLOBAL)"                           shift, and go to state 56
26248    "unset (T_UNSET)"                             shift, and go to state 57
26249    "isset (T_ISSET)"                             shift, and go to state 58
26250    "empty (T_EMPTY)"                             shift, and go to state 59
26251    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
26252    "class (T_CLASS)"                             shift, and go to state 61
26253    "trait (T_TRAIT)"                             shift, and go to state 62
26254    "interface (T_INTERFACE)"                     shift, and go to state 63
26255    "list (T_LIST)"                               shift, and go to state 64
26256    "array (T_ARRAY)"                             shift, and go to state 65
26257    "__LINE__ (T_LINE)"                           shift, and go to state 66
26258    "__FILE__ (T_FILE)"                           shift, and go to state 67
26259    "__DIR__ (T_DIR)"                             shift, and go to state 68
26260    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
26261    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
26262    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
26263    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
26264    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
26265    "namespace (T_NAMESPACE)"                     shift, and go to state 115
26266    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
26267    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
26268    '('                                           shift, and go to state 77
26269    ';'                                           shift, and go to state 78
26270    '{'                                           shift, and go to state 79
26271    '}'                                           shift, and go to state 932
26272    '`'                                           shift, and go to state 80
26273    '"'                                           shift, and go to state 81
26274    '$'                                           shift, and go to state 82
26275
26276    namespace_name                   go to state 83
26277    name                             go to state 84
26278    inner_statement                  go to state 377
26279    statement                        go to state 378
26280    function_declaration_statement   go to state 379
26281    class_declaration_statement      go to state 380
26282    class_modifiers                  go to state 89
26283    class_modifier                   go to state 90
26284    trait_declaration_statement      go to state 381
26285    interface_declaration_statement  go to state 382
26286    if_stmt_without_else             go to state 93
26287    if_stmt                          go to state 94
26288    alt_if_stmt_without_else         go to state 95
26289    alt_if_stmt                      go to state 96
26290    new_expr                         go to state 97
26291    expr                             go to state 98
26292    function                         go to state 99
26293    function_call                    go to state 100
26294    class_name                       go to state 101
26295    dereferencable_scalar            go to state 102
26296    scalar                           go to state 103
26297    constant                         go to state 104
26298    variable_class_name              go to state 105
26299    dereferencable                   go to state 106
26300    callable_expr                    go to state 107
26301    callable_variable                go to state 108
26302    variable                         go to state 109
26303    simple_variable                  go to state 110
26304    static_member                    go to state 111
26305    internal_functions_in_yacc       go to state 112
26306
26307
26308State 922
26309
26310  267 absolute_trait_method_reference: name ":: (T_PAAMAYIM_NEKUDOTAYIM)" identifier .
26311
26312    $default  reduce using rule 267 (absolute_trait_method_reference)
26313
26314
26315State 923
26316
26317  261 trait_alias: trait_method_reference "as (T_AS)" "identifier (T_STRING)" .
26318
26319    $default  reduce using rule 261 (trait_alias)
26320
26321
26322State 924
26323
26324  262 trait_alias: trait_method_reference "as (T_AS)" reserved_non_modifiers .
26325
26326    $default  reduce using rule 262 (trait_alias)
26327
26328
26329State 925
26330
26331  263 trait_alias: trait_method_reference "as (T_AS)" member_modifier . identifier
26332  264            | trait_method_reference "as (T_AS)" member_modifier .
26333
26334    "include (T_INCLUDE)"            shift, and go to state 430
26335    "include_once (T_INCLUDE_ONCE)"  shift, and go to state 431
26336    "eval (T_EVAL)"                  shift, and go to state 432
26337    "require (T_REQUIRE)"            shift, and go to state 433
26338    "require_once (T_REQUIRE_ONCE)"  shift, and go to state 434
26339    "or (T_LOGICAL_OR)"              shift, and go to state 435
26340    "xor (T_LOGICAL_XOR)"            shift, and go to state 436
26341    "and (T_LOGICAL_AND)"            shift, and go to state 437
26342    "print (T_PRINT)"                shift, and go to state 438
26343    "yield (T_YIELD)"                shift, and go to state 439
26344    "instanceof (T_INSTANCEOF)"      shift, and go to state 440
26345    "new (T_NEW)"                    shift, and go to state 441
26346    "clone (T_CLONE)"                shift, and go to state 442
26347    "elseif (T_ELSEIF)"              shift, and go to state 443
26348    "else (T_ELSE)"                  shift, and go to state 444
26349    "endif (T_ENDIF)"                shift, and go to state 445
26350    "static (T_STATIC)"              shift, and go to state 446
26351    "abstract (T_ABSTRACT)"          shift, and go to state 447
26352    "final (T_FINAL)"                shift, and go to state 448
26353    "private (T_PRIVATE)"            shift, and go to state 449
26354    "protected (T_PROTECTED)"        shift, and go to state 450
26355    "public (T_PUBLIC)"              shift, and go to state 451
26356    "identifier (T_STRING)"          shift, and go to state 452
26357    "exit (T_EXIT)"                  shift, and go to state 453
26358    "if (T_IF)"                      shift, and go to state 454
26359    "echo (T_ECHO)"                  shift, and go to state 455
26360    "do (T_DO)"                      shift, and go to state 456
26361    "while (T_WHILE)"                shift, and go to state 457
26362    "endwhile (T_ENDWHILE)"          shift, and go to state 458
26363    "for (T_FOR)"                    shift, and go to state 459
26364    "endfor (T_ENDFOR)"              shift, and go to state 460
26365    "foreach (T_FOREACH)"            shift, and go to state 461
26366    "endforeach (T_ENDFOREACH)"      shift, and go to state 462
26367    "declare (T_DECLARE)"            shift, and go to state 463
26368    "enddeclare (T_ENDDECLARE)"      shift, and go to state 464
26369    "as (T_AS)"                      shift, and go to state 465
26370    "switch (T_SWITCH)"              shift, and go to state 466
26371    "endswitch (T_ENDSWITCH)"        shift, and go to state 467
26372    "case (T_CASE)"                  shift, and go to state 468
26373    "default (T_DEFAULT)"            shift, and go to state 469
26374    "break (T_BREAK)"                shift, and go to state 470
26375    "continue (T_CONTINUE)"          shift, and go to state 471
26376    "goto (T_GOTO)"                  shift, and go to state 472
26377    "function (T_FUNCTION)"          shift, and go to state 473
26378    "const (T_CONST)"                shift, and go to state 474
26379    "return (T_RETURN)"              shift, and go to state 475
26380    "try (T_TRY)"                    shift, and go to state 476
26381    "catch (T_CATCH)"                shift, and go to state 477
26382    "finally (T_FINALLY)"            shift, and go to state 478
26383    "throw (T_THROW)"                shift, and go to state 479
26384    "use (T_USE)"                    shift, and go to state 480
26385    "insteadof (T_INSTEADOF)"        shift, and go to state 481
26386    "global (T_GLOBAL)"              shift, and go to state 482
26387    "var (T_VAR)"                    shift, and go to state 483
26388    "unset (T_UNSET)"                shift, and go to state 484
26389    "isset (T_ISSET)"                shift, and go to state 485
26390    "empty (T_EMPTY)"                shift, and go to state 486
26391    "class (T_CLASS)"                shift, and go to state 487
26392    "trait (T_TRAIT)"                shift, and go to state 488
26393    "interface (T_INTERFACE)"        shift, and go to state 489
26394    "extends (T_EXTENDS)"            shift, and go to state 490
26395    "implements (T_IMPLEMENTS)"      shift, and go to state 491
26396    "list (T_LIST)"                  shift, and go to state 492
26397    "array (T_ARRAY)"                shift, and go to state 493
26398    "callable (T_CALLABLE)"          shift, and go to state 494
26399    "__LINE__ (T_LINE)"              shift, and go to state 495
26400    "__FILE__ (T_FILE)"              shift, and go to state 496
26401    "__DIR__ (T_DIR)"                shift, and go to state 497
26402    "__CLASS__ (T_CLASS_C)"          shift, and go to state 498
26403    "__TRAIT__ (T_TRAIT_C)"          shift, and go to state 499
26404    "__METHOD__ (T_METHOD_C)"        shift, and go to state 500
26405    "__FUNCTION__ (T_FUNC_C)"        shift, and go to state 501
26406    "namespace (T_NAMESPACE)"        shift, and go to state 502
26407    "__NAMESPACE__ (T_NS_C)"         shift, and go to state 503
26408
26409    $default  reduce using rule 264 (trait_alias)
26410
26411    reserved_non_modifiers  go to state 505
26412    semi_reserved           go to state 506
26413    identifier              go to state 933
26414
26415
26416State 926
26417
26418  252 name_list: name_list . ',' name
26419  260 trait_precedence: absolute_trait_method_reference "insteadof (T_INSTEADOF)" name_list .
26420
26421    ','  shift, and go to state 729
26422
26423    $default  reduce using rule 260 (trait_precedence)
26424
26425
26426State 927
26427
26428  288 class_const_decl: identifier '=' expr backup_doc_comment .
26429
26430    $default  reduce using rule 288 (class_const_decl)
26431
26432
26433State 928
26434
26435  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment '(' . parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags
26436
26437    '?'                        shift, and go to state 684
26438    "identifier (T_STRING)"    shift, and go to state 114
26439    "array (T_ARRAY)"          shift, and go to state 685
26440    "callable (T_CALLABLE)"    shift, and go to state 686
26441    "namespace (T_NAMESPACE)"  shift, and go to state 115
26442    "\\ (T_NS_SEPARATOR)"      shift, and go to state 76
26443
26444    ')'       reduce using rule 218 (parameter_list)
26445    $default  reduce using rule 223 (optional_type)
26446
26447    namespace_name            go to state 83
26448    name                      go to state 687
26449    parameter_list            go to state 934
26450    non_empty_parameter_list  go to state 689
26451    parameter                 go to state 690
26452    optional_type             go to state 691
26453    type_expr                 go to state 692
26454    type                      go to state 693
26455
26456
26457State 929
26458
26459  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' . backup_fn_flags
26460
26461    $default  reduce using rule 380 (backup_fn_flags)
26462
26463    backup_fn_flags  go to state 935
26464
26465
26466State 930
26467
26468  376 expr: function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' . backup_fn_flags
26469
26470    $default  reduce using rule 380 (backup_fn_flags)
26471
26472    backup_fn_flags  go to state 936
26473
26474
26475State 931
26476
26477  377 expr: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' . backup_fn_flags
26478
26479    $default  reduce using rule 380 (backup_fn_flags)
26480
26481    backup_fn_flags  go to state 937
26482
26483
26484State 932
26485
26486  157 catch_list: catch_list "catch (T_CATCH)" '(' catch_name_list "variable (T_VARIABLE)" ')' '{' inner_statement_list '}' .
26487
26488    $default  reduce using rule 157 (catch_list)
26489
26490
26491State 933
26492
26493  263 trait_alias: trait_method_reference "as (T_AS)" member_modifier identifier .
26494
26495    $default  reduce using rule 263 (trait_alias)
26496
26497
26498State 934
26499
26500  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment '(' parameter_list . ')' return_type backup_fn_flags method_body backup_fn_flags
26501
26502    ')'  shift, and go to state 938
26503
26504
26505State 935
26506
26507  165 function_declaration_statement: function returns_ref "identifier (T_STRING)" backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags .
26508
26509    $default  reduce using rule 165 (function_declaration_statement)
26510
26511
26512State 936
26513
26514  376 expr: function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags .
26515
26516    $default  reduce using rule 376 (expr)
26517
26518
26519State 937
26520
26521  377 expr: "static (T_STATIC)" function returns_ref backup_doc_comment '(' parameter_list ')' lexical_vars return_type backup_fn_flags '{' inner_statement_list '}' backup_fn_flags .
26522
26523    $default  reduce using rule 377 (expr)
26524
26525
26526State 938
26527
26528  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment '(' parameter_list ')' . return_type backup_fn_flags method_body backup_fn_flags
26529
26530    ':'  shift, and go to state 830
26531
26532    $default  reduce using rule 230 (return_type)
26533
26534    return_type  go to state 939
26535
26536
26537State 939
26538
26539  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment '(' parameter_list ')' return_type . backup_fn_flags method_body backup_fn_flags
26540
26541    $default  reduce using rule 380 (backup_fn_flags)
26542
26543    backup_fn_flags  go to state 940
26544
26545
26546State 940
26547
26548  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags . method_body backup_fn_flags
26549
26550    ';'  shift, and go to state 941
26551    '{'  shift, and go to state 942
26552
26553    method_body  go to state 943
26554
26555
26556State 941
26557
26558  268 method_body: ';' .
26559
26560    $default  reduce using rule 268 (method_body)
26561
26562
26563State 942
26564
26565  269 method_body: '{' . inner_statement_list '}'
26566
26567    $default  reduce using rule 124 (inner_statement_list)
26568
26569    inner_statement_list  go to state 944
26570
26571
26572State 943
26573
26574  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags method_body . backup_fn_flags
26575
26576    $default  reduce using rule 380 (backup_fn_flags)
26577
26578    backup_fn_flags  go to state 945
26579
26580
26581State 944
26582
26583  123 inner_statement_list: inner_statement_list . inner_statement
26584  269 method_body: '{' inner_statement_list . '}'
26585
26586    "include (T_INCLUDE)"                         shift, and go to state 4
26587    "include_once (T_INCLUDE_ONCE)"               shift, and go to state 5
26588    "eval (T_EVAL)"                               shift, and go to state 6
26589    "require (T_REQUIRE)"                         shift, and go to state 7
26590    "require_once (T_REQUIRE_ONCE)"               shift, and go to state 8
26591    "print (T_PRINT)"                             shift, and go to state 9
26592    "yield (T_YIELD)"                             shift, and go to state 10
26593    "yield from (T_YIELD_FROM)"                   shift, and go to state 11
26594    '+'                                           shift, and go to state 12
26595    '-'                                           shift, and go to state 13
26596    '!'                                           shift, and go to state 14
26597    '~'                                           shift, and go to state 15
26598    "++ (T_INC)"                                  shift, and go to state 16
26599    "-- (T_DEC)"                                  shift, and go to state 17
26600    "(int) (T_INT_CAST)"                          shift, and go to state 18
26601    "(double) (T_DOUBLE_CAST)"                    shift, and go to state 19
26602    "(string) (T_STRING_CAST)"                    shift, and go to state 20
26603    "(array) (T_ARRAY_CAST)"                      shift, and go to state 21
26604    "(object) (T_OBJECT_CAST)"                    shift, and go to state 22
26605    "(bool) (T_BOOL_CAST)"                        shift, and go to state 23
26606    "(unset) (T_UNSET_CAST)"                      shift, and go to state 24
26607    '@'                                           shift, and go to state 25
26608    '['                                           shift, and go to state 26
26609    "new (T_NEW)"                                 shift, and go to state 27
26610    "clone (T_CLONE)"                             shift, and go to state 28
26611    "static (T_STATIC)"                           shift, and go to state 29
26612    "abstract (T_ABSTRACT)"                       shift, and go to state 30
26613    "final (T_FINAL)"                             shift, and go to state 31
26614    "integer number (T_LNUMBER)"                  shift, and go to state 32
26615    "floating-point number (T_DNUMBER)"           shift, and go to state 33
26616    "identifier (T_STRING)"                       shift, and go to state 34
26617    "variable (T_VARIABLE)"                       shift, and go to state 35
26618    T_INLINE_HTML                                 shift, and go to state 36
26619    "quoted-string (T_CONSTANT_ENCAPSED_STRING)"  shift, and go to state 37
26620    "exit (T_EXIT)"                               shift, and go to state 38
26621    "if (T_IF)"                                   shift, and go to state 39
26622    "echo (T_ECHO)"                               shift, and go to state 40
26623    "do (T_DO)"                                   shift, and go to state 41
26624    "while (T_WHILE)"                             shift, and go to state 42
26625    "for (T_FOR)"                                 shift, and go to state 43
26626    "foreach (T_FOREACH)"                         shift, and go to state 44
26627    "declare (T_DECLARE)"                         shift, and go to state 45
26628    "switch (T_SWITCH)"                           shift, and go to state 46
26629    "break (T_BREAK)"                             shift, and go to state 47
26630    "continue (T_CONTINUE)"                       shift, and go to state 48
26631    "goto (T_GOTO)"                               shift, and go to state 49
26632    "function (T_FUNCTION)"                       shift, and go to state 50
26633    "return (T_RETURN)"                           shift, and go to state 52
26634    "try (T_TRY)"                                 shift, and go to state 53
26635    "throw (T_THROW)"                             shift, and go to state 54
26636    "global (T_GLOBAL)"                           shift, and go to state 56
26637    "unset (T_UNSET)"                             shift, and go to state 57
26638    "isset (T_ISSET)"                             shift, and go to state 58
26639    "empty (T_EMPTY)"                             shift, and go to state 59
26640    "__halt_compiler (T_HALT_COMPILER)"           shift, and go to state 375
26641    "class (T_CLASS)"                             shift, and go to state 61
26642    "trait (T_TRAIT)"                             shift, and go to state 62
26643    "interface (T_INTERFACE)"                     shift, and go to state 63
26644    "list (T_LIST)"                               shift, and go to state 64
26645    "array (T_ARRAY)"                             shift, and go to state 65
26646    "__LINE__ (T_LINE)"                           shift, and go to state 66
26647    "__FILE__ (T_FILE)"                           shift, and go to state 67
26648    "__DIR__ (T_DIR)"                             shift, and go to state 68
26649    "__CLASS__ (T_CLASS_C)"                       shift, and go to state 69
26650    "__TRAIT__ (T_TRAIT_C)"                       shift, and go to state 70
26651    "__METHOD__ (T_METHOD_C)"                     shift, and go to state 71
26652    "__FUNCTION__ (T_FUNC_C)"                     shift, and go to state 72
26653    "heredoc start (T_START_HEREDOC)"             shift, and go to state 73
26654    "namespace (T_NAMESPACE)"                     shift, and go to state 115
26655    "__NAMESPACE__ (T_NS_C)"                      shift, and go to state 75
26656    "\\ (T_NS_SEPARATOR)"                         shift, and go to state 76
26657    '('                                           shift, and go to state 77
26658    ';'                                           shift, and go to state 78
26659    '{'                                           shift, and go to state 79
26660    '}'                                           shift, and go to state 946
26661    '`'                                           shift, and go to state 80
26662    '"'                                           shift, and go to state 81
26663    '$'                                           shift, and go to state 82
26664
26665    namespace_name                   go to state 83
26666    name                             go to state 84
26667    inner_statement                  go to state 377
26668    statement                        go to state 378
26669    function_declaration_statement   go to state 379
26670    class_declaration_statement      go to state 380
26671    class_modifiers                  go to state 89
26672    class_modifier                   go to state 90
26673    trait_declaration_statement      go to state 381
26674    interface_declaration_statement  go to state 382
26675    if_stmt_without_else             go to state 93
26676    if_stmt                          go to state 94
26677    alt_if_stmt_without_else         go to state 95
26678    alt_if_stmt                      go to state 96
26679    new_expr                         go to state 97
26680    expr                             go to state 98
26681    function                         go to state 99
26682    function_call                    go to state 100
26683    class_name                       go to state 101
26684    dereferencable_scalar            go to state 102
26685    scalar                           go to state 103
26686    constant                         go to state 104
26687    variable_class_name              go to state 105
26688    dereferencable                   go to state 106
26689    callable_expr                    go to state 107
26690    callable_variable                go to state 108
26691    variable                         go to state 109
26692    simple_variable                  go to state 110
26693    static_member                    go to state 111
26694    internal_functions_in_yacc       go to state 112
26695
26696
26697State 945
26698
26699  250 class_statement: method_modifiers function returns_ref identifier backup_doc_comment '(' parameter_list ')' return_type backup_fn_flags method_body backup_fn_flags .
26700
26701    $default  reduce using rule 250 (class_statement)
26702
26703
26704State 946
26705
26706  269 method_body: '{' inner_statement_list '}' .
26707
26708    $default  reduce using rule 269 (method_body)
26709