1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/js/src/jit-test/tests/for-of/array-holes-slow.js Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,13 @@ 1.4 +// for-of on a slow Array consults the prototype chain when it encounters a hole. 1.5 + 1.6 +var a = [0, , , 3]; 1.7 +a.slow = true; 1.8 +Object.prototype[1] = 'peek1'; 1.9 +Array.prototype[2] = 'peek2'; 1.10 + 1.11 +var log = []; 1.12 +for (var x of a) 1.13 + log.push(x); 1.14 +assertEq(log[1], 'peek1'); 1.15 +assertEq(log[2], 'peek2'); 1.16 +assertEq(log.join(), "0,peek1,peek2,3");