From 14bfe93ddc34d1175bccb42a158be8842c472a9c Mon Sep 17 00:00:00 2001 From: Andrea Faulds Date: Sun, 17 Jan 2016 01:09:36 +0000 Subject: [PATCH] Allow trailing comma --- Zend/tests/list_keyed_trailing_comma.phpt | 38 +++++++++++++++++++++++ Zend/zend_language_parser.y | 2 +- 2 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 Zend/tests/list_keyed_trailing_comma.phpt diff --git a/Zend/tests/list_keyed_trailing_comma.phpt b/Zend/tests/list_keyed_trailing_comma.phpt new file mode 100644 index 00000000000..e0af0aed211 --- /dev/null +++ b/Zend/tests/list_keyed_trailing_comma.phpt @@ -0,0 +1,38 @@ +--TEST-- +list() with keys and a trailing comma +--FILE-- + "bad", + "happy" => "sad", +]; + +list( + "good" => $good, + "happy" => $happy +) = $antonyms; + +var_dump($good, $happy); + +echo PHP_EOL; + +$antonyms = [ + "good" => "bad", + "happy" => "sad", +]; + +list( + "good" => $good, + "happy" => $happy, +) = $antonyms; + +var_dump($good, $happy); + +?> +--EXPECT-- +string(3) "bad" +string(3) "sad" + +string(3) "bad" +string(3) "sad" diff --git a/Zend/zend_language_parser.y b/Zend/zend_language_parser.y index e1def1fe1c7..8487b7da974 100644 --- a/Zend/zend_language_parser.y +++ b/Zend/zend_language_parser.y @@ -1174,7 +1174,7 @@ property_name: assignment_list: unkeyed_assignment_list { $$ = $1; } - | keyed_assignment_list + | keyed_assignment_list possible_comma { $$ = $1; } ;