This test checks that regexps, strings with special characters, object literals with non-identifier names, and array literals are pretty-printed correctly

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


PASS g().toString() is ['a', 'b', 'c'].toString()
PASS successfullyParsed is true

TEST COMPLETE

