1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/js/src/tests/ecma_5/JSON/parse-array-gc.js Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,31 @@ 1.4 +// Any copyright is dedicated to the Public Domain. 1.5 +// http://creativecommons.org/licenses/publicdomain/ 1.6 + 1.7 +var gTestfile = "parse-array-gc.js"; 1.8 +//----------------------------------------------------------------------------- 1.9 +var BUGNUMBER = 852563; 1.10 +var summary = 1.11 + "IdValuePair::value should be initialized to avoid GC sequence-point issues"; 1.12 + 1.13 +print(BUGNUMBER + ": " + summary); 1.14 + 1.15 +print("Note: You must run this test under valgrind to be certain it passes"); 1.16 + 1.17 +/************** 1.18 + * BEGIN TEST * 1.19 + **************/ 1.20 + 1.21 +var x; 1.22 + 1.23 +if (typeof gczeal === "function") 1.24 + gczeal(2, 1); 1.25 +x = JSON.parse('{"foo":[]}'); 1.26 +Object.getPrototypeOf(x.foo) == Array.prototype; 1.27 +x = JSON.parse('{"foo":[], "bar":[]}'); 1.28 + 1.29 +/******************************************************************************/ 1.30 + 1.31 +if (typeof reportCompare === "function") 1.32 + reportCompare(true, true); 1.33 + 1.34 +print("Tests complete");