1Trailing comma in parameter list
2-----
3<?php
4
5function foo($bar, ) {
6}
7-----
8array(
9    0: Stmt_Function(
10        attrGroups: array(
11        )
12        byRef: false
13        name: Identifier(
14            name: foo
15        )
16        params: array(
17            0: Param(
18                attrGroups: array(
19                )
20                flags: 0
21                type: null
22                byRef: false
23                variadic: false
24                var: Expr_Variable(
25                    name: bar
26                )
27                default: null
28            )
29        )
30        returnType: null
31        stmts: array(
32        )
33    )
34)
35-----
36<?php
37
38class Foo
39{
40    function __construct($name, $value, )
41    {
42    }
43}
44-----
45array(
46    0: Stmt_Class(
47        attrGroups: array(
48        )
49        flags: 0
50        name: Identifier(
51            name: Foo
52        )
53        extends: null
54        implements: array(
55        )
56        stmts: array(
57            0: Stmt_ClassMethod(
58                attrGroups: array(
59                )
60                flags: 0
61                byRef: false
62                name: Identifier(
63                    name: __construct
64                )
65                params: array(
66                    0: Param(
67                        attrGroups: array(
68                        )
69                        flags: 0
70                        type: null
71                        byRef: false
72                        variadic: false
73                        var: Expr_Variable(
74                            name: name
75                        )
76                        default: null
77                    )
78                    1: Param(
79                        attrGroups: array(
80                        )
81                        flags: 0
82                        type: null
83                        byRef: false
84                        variadic: false
85                        var: Expr_Variable(
86                            name: value
87                        )
88                        default: null
89                    )
90                )
91                returnType: null
92                stmts: array(
93                )
94            )
95        )
96    )
97)
98-----
99<?php
100fn($foo, ) => $bar;
101-----
102array(
103    0: Stmt_Expression(
104        expr: Expr_ArrowFunction(
105            attrGroups: array(
106            )
107            static: false
108            byRef: false
109            params: array(
110                0: Param(
111                    attrGroups: array(
112                    )
113                    flags: 0
114                    type: null
115                    byRef: false
116                    variadic: false
117                    var: Expr_Variable(
118                        name: foo
119                    )
120                    default: null
121                )
122            )
123            returnType: null
124            expr: Expr_Variable(
125                name: bar
126            )
127        )
128    )
129)
130