This test checks that toString() does not have a problem when an object has itself as a property.

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


PASS var array = []; array[0] = array; array + '' is ''
PASS var error = new Error; error.name = error; error.message = error; error + '' is ''
PASS var regexp = /a/; regexp.source = regexp; regexp + '' is '/a/'
PASS successfullyParsed is true

TEST COMPLETE

