jdk8/jdk8/nashorn: 8f7a86f82376 (original) (raw)

OpenJDK / jdk8 / jdk8 / nashorn

changeset 51:8f7a86f82376

8006983: Introduce a command line option to switch off syntactic extensions of nashorn Reviewed-by: lagergren, attila

sundar
date Mon, 28 Jan 2013 18:10:16 +0530
parents f52d7294536f
children 265c46dbcf43
files src/jdk/nashorn/internal/objects/Global.java src/jdk/nashorn/internal/parser/Parser.java src/jdk/nashorn/internal/runtime/Context.java src/jdk/nashorn/internal/runtime/ScriptingFunctions.java src/jdk/nashorn/internal/runtime/resources/Options.properties test/script/basic/JDK-8006983.js test/script/basic/scripting.js test/script/basic/scripting.js.EXPECTED
diffstat 8 files changed, 138 insertions(+), 37 deletions(-)[+] [-] src/jdk/nashorn/internal/objects/Global.java 4 src/jdk/nashorn/internal/parser/Parser.java 18 src/jdk/nashorn/internal/runtime/Context.java 50 src/jdk/nashorn/internal/runtime/ScriptingFunctions.java 6 src/jdk/nashorn/internal/runtime/resources/Options.properties 8 test/script/basic/JDK-8006983.js 85 test/script/basic/scripting.js 2 test/script/basic/scripting.js.EXPECTED 2

line wrap: on

line diff

--- a/src/jdk/nashorn/internal/objects/Global.java Fri Jan 25 17:35:31 2013 +0100 +++ b/src/jdk/nashorn/internal/objects/Global.java Mon Jan 28 18:10:16 2013 +0530 @@ -1456,8 +1456,8 @@ value = ScriptFunctionImpl.makeFunction("readLine", ScriptingFunctions.READLINE); addOwnProperty("readLine", Attribute.NOT_ENUMERABLE, value);

value = ScriptFunctionImpl.makeFunction("quit", ScriptingFunctions.QUIT); addOwnProperty("quit", Attribute.NOT_ENUMERABLE, value);

--- a/src/jdk/nashorn/internal/parser/Parser.java Fri Jan 25 17:35:31 2013 +0100 +++ b/src/jdk/nashorn/internal/parser/Parser.java Mon Jan 28 18:10:16 2013 +0530 @@ -147,7 +147,7 @@ public FunctionNode parse(final String scriptName) { try { stream = new TokenStream();

// Set up first token (skips opening EOL.) k = -1; @@ -1065,7 +1065,7 @@ // Nashorn extension: for each expression. // iterate property values rather than property names.

@@ -2312,7 +2312,8 @@ arguments = new ArrayList<>(); }

@@ -2321,7 +2322,7 @@ // The object literal following the "new Constructor()" expresssion // is passed as an additional (last) argument to the constructor.

@@ -2475,8 +2476,11 @@ if (type == IDENT || isNonStrictModeIdent()) { name = getIdent(); verifyStrictIdent(name, "function name");

// name is null, generate anonymous name @@ -2613,7 +2617,7 @@ functionNode.setFirstToken(firstToken); // Nashorn extension: expression closures

--- a/src/jdk/nashorn/internal/runtime/Context.java Fri Jan 25 17:35:31 2013 +0100 +++ b/src/jdk/nashorn/internal/runtime/Context.java Mon Jan 28 18:10:16 2013 +0530 @@ -229,6 +229,9 @@ /** Create a new class loaded for each compilation */ public final boolean _loader_per_compile;

+ /** Package to which generated class files are added */ public final String _package; @@ -341,29 +344,30 @@ this.out = out; this.err = err;

int callSiteFlags = 0; if (options.getBoolean("profile.callsites")) {

--- a/src/jdk/nashorn/internal/runtime/ScriptingFunctions.java Fri Jan 25 17:35:31 2013 +0100 +++ b/src/jdk/nashorn/internal/runtime/ScriptingFunctions.java Mon Jan 28 18:10:16 2013 +0530 @@ -44,8 +44,8 @@ /** Handle to implementation of {@link ScriptingFunctions#read} - Nashorn extension */ public static final MethodHandle READLINE = findOwnMH("readLine", Object.class, Object.class);

/** Handle to implementation of {@link ScriptingFunctions#read} - Nashorn extension */ public static final MethodHandle QUIT = findOwnMH("quit", Object.class, Object.class, Object.class); @@ -78,7 +78,7 @@ * * @throws IOException if an exception occurs */

if (file instanceof File) {

--- a/src/jdk/nashorn/internal/runtime/resources/Options.properties Fri Jan 25 17:35:31 2013 +0100 +++ b/src/jdk/nashorn/internal/runtime/resources/Options.properties Mon Jan 28 18:10:16 2013 +0530 @@ -172,6 +172,14 @@ default=true [](#l5.4) } +nashorn.option.no.syntax.extensions = { [](#l5.7)

+} + nashorn.option.package = { [](#l5.15) name="--package", [](#l5.16) is_undocumented=true, [](#l5.17)

--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/script/basic/JDK-8006983.js Mon Jan 28 18:10:16 2013 +0530 @@ -0,0 +1,85 @@ +/*

+} catch (e) {

+} + +try {

+} catch (e) {

+} + +try {

+} catch (e) {

+} + +try {

+} catch (e) {

+} + +try {

+} catch (e) {

+} + +try {

+} catch (e) {

+}

--- a/test/script/basic/scripting.js Fri Jan 25 17:35:31 2013 +0100 +++ b/test/script/basic/scripting.js Mon Jan 28 18:10:16 2013 +0530 @@ -78,4 +78,4 @@ print(y); -print(read(FILE)); +print(readFully(FILE));

--- a/test/script/basic/scripting.js.EXPECTED Fri Jan 25 17:35:31 2013 +0100 +++ b/test/script/basic/scripting.js.EXPECTED Mon Jan 28 18:10:16 2013 +0530 @@ -99,5 +99,5 @@ print(y); -print(read(FILE)); +print(readFully(FILE));