michael@0: /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ michael@0: /* This Source Code Form is subject to the terms of the Mozilla Public michael@0: * License, v. 2.0. If a copy of the MPL was not distributed with this michael@0: * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ michael@0: michael@0: michael@0: /** michael@0: File Name: 15.3.1.1-2.js michael@0: ECMA Section: 15.3.1.1 The Function Constructor Called as a Function michael@0: Function(p1, p2, ..., pn, body ) michael@0: michael@0: Description: michael@0: When the Function function is called with some arguments p1, p2, . . . , pn, michael@0: body (where n might be 0, that is, there are no "p" arguments, and where body michael@0: might also not be provided), the following steps are taken: michael@0: michael@0: 1. Create and return a new Function object exactly if the function constructor michael@0: had been called with the same arguments (15.3.2.1). michael@0: michael@0: Author: christine@netscape.com michael@0: Date: 28 october 1997 michael@0: michael@0: */ michael@0: var SECTION = "15.3.1.1-2"; michael@0: var VERSION = "ECMA_1"; michael@0: startTest(); michael@0: var TITLE = "The Function Constructor Called as a Function"; michael@0: michael@0: writeHeaderToLog( SECTION + " "+ TITLE); michael@0: michael@0: var myfunc2 = Function("a, b, c", "return a+b+c" ); michael@0: var myfunc3 = Function("a,b", "c", "return a+b+c" ); michael@0: michael@0: myfunc2.toString = Object.prototype.toString; michael@0: myfunc3.toString = Object.prototype.toString; michael@0: michael@0: michael@0: new TestCase( SECTION, michael@0: "myfunc2.__proto__", michael@0: Function.prototype, michael@0: myfunc2.__proto__ ); michael@0: michael@0: new TestCase( SECTION, michael@0: "myfunc3.__proto__", michael@0: Function.prototype, michael@0: myfunc3.__proto__ ); michael@0: michael@0: test();