1d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com// Copyright 2011 the V8 project authors. All rights reserved.
2d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com// Redistribution and use in source and binary forms, with or without
3d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com// modification, are permitted provided that the following conditions are
4d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com// met:
5d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com//
6d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com//     * Redistributions of source code must retain the above copyright
7d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com//       notice, this list of conditions and the following disclaimer.
8d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com//     * Redistributions in binary form must reproduce the above
9d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com//       copyright notice, this list of conditions and the following
10d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com//       disclaimer in the documentation and/or other materials provided
11d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com//       with the distribution.
12d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com//     * Neither the name of Google Inc. nor the names of its
13d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com//       contributors may be used to endorse or promote products derived
14d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com//       from this software without specific prior written permission.
15d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com//
16d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
17d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
18d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
19d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
20d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
21d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
26d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com
28d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com// Flags: --expose-gc --noopt
29d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com
30d6076d96a1411932548838e5960b594564264010erik.corry@gmail.comvar gTestcases = new Array();
31d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com
32d6076d96a1411932548838e5960b594564264010erik.corry@gmail.comfunction TestCase(n, d, e, a) {
33d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com  gTestcases[gTc++] = this;
34d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com  for ( gTc=0; gTc < gTestcases.length; gTc++ );
35d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com}
36d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com
37d6076d96a1411932548838e5960b594564264010erik.corry@gmail.comfor ( var i = 0x0530; i <= 0x058F; i++ ) {
38d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com  new TestCase("15.5.4.11-6",
39d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com               eval("var s = new String(String.fromCharCode(i)); s.toLowerCase().charCodeAt(0)"));
40d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com}
41d6076d96a1411932548838e5960b594564264010erik.corry@gmail.comvar gTc= 0;
42d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com
43d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com
44d6076d96a1411932548838e5960b594564264010erik.corry@gmail.comfor (var j = 0; j < 10; j++) {
45d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com  test();
46d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com  function test() {
47d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com    for ( 0; gTc < gTestcases.length; gTc++ ) {
48d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com      var MYOBJECT = new MyObject();
49d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com    }
50d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com    gc();
51d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com  }
52d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com  function MyObject( n ) {
53d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com    this.__proto__ = Number.prototype;
54d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com  }
55d6076d96a1411932548838e5960b594564264010erik.corry@gmail.com}
56