Imported Upstream version 1.0.0
[platform/upstream/js.git] / js / src / tests / js1_8_1 / extensions / new-parenthesization.js
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /*
3  * Any copyright is dedicated to the Public Domain.
4  * http://creativecommons.org/licenses/publicdomain/
5  * Contributor: Jesse Ruderman
6  */
7
8 //-----------------------------------------------------------------------------
9 var BUGNUMBER = 521456;
10 var summary =
11   'Incorrect decompilation of new (eval(v)).s and new (f.apply(2)).s';
12 printBugNumber(BUGNUMBER);
13 printStatus(summary);
14
15 function foo(c) { return new (eval(c)).s; }
16 function bar(f) { var a = new (f.apply(2).s); return a; }
17
18 assertEq(bar.toString().search(/new\s+f/), -1);
19 assertEq(foo.toString().search(/new\s+eval/), -1);
20
21 reportCompare(true, true);