#44: do not trim last nil if array item list ends by a comma
This commit is contained in:
@@ -7517,8 +7517,8 @@ yydefault:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line php7/php7.y:4861
|
||||
{
|
||||
if yyDollar[1].list[len(yyDollar[1].list)-1] == nil {
|
||||
yyVAL.list = yyDollar[1].list[:len(yyDollar[1].list)-1]
|
||||
if len(yyDollar[1].list) == 1 && yyDollar[1].list[0] == nil {
|
||||
yyVAL.list = yyDollar[1].list[:0]
|
||||
} else {
|
||||
yyVAL.list = yyDollar[1].list
|
||||
}
|
||||
|
||||
@@ -4859,8 +4859,8 @@ property_name:
|
||||
array_pair_list:
|
||||
non_empty_array_pair_list
|
||||
{
|
||||
if ($1[len($1)-1] == nil) {
|
||||
$$ = $1[:len($1)-1]
|
||||
if (len($1) == 1 && $1[0] == nil) {
|
||||
$$ = $1[:0]
|
||||
} else {
|
||||
$$ = $1
|
||||
}
|
||||
|
||||
@@ -2072,6 +2072,7 @@ func TestPhp7(t *testing.T) {
|
||||
&expr.ArrayItem{
|
||||
Val: &expr.Reference{Variable: &expr.Variable{VarName: &node.Identifier{Value: "b"}}},
|
||||
},
|
||||
nil,
|
||||
},
|
||||
},
|
||||
},
|
||||
@@ -2475,6 +2476,7 @@ func TestPhp7(t *testing.T) {
|
||||
&expr.ArrayItem{
|
||||
Val: &expr.Reference{Variable: &expr.Variable{VarName: &node.Identifier{Value: "b"}}},
|
||||
},
|
||||
nil,
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user