Skip to content

Commit

Permalink
Update the default language levels
Browse files Browse the repository at this point in the history
Closes #2453

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=154990784
  • Loading branch information
ChadKillingsworth authored and brad4d committed May 4, 2017
1 parent 5b9fa7f commit 5b74485
Show file tree
Hide file tree
Showing 4 changed files with 22 additions and 11 deletions.
20 changes: 13 additions & 7 deletions src/com/google/javascript/jscomp/CommandLineRunner.java
Original file line number Diff line number Diff line change
Expand Up @@ -583,15 +583,20 @@ private static class Flags {
usage =
"Sets what language spec that input sources conform. "
+ "Options: ECMASCRIPT3, ECMASCRIPT5, ECMASCRIPT5_STRICT, "
+ "ECMASCRIPT6 (default), ECMASCRIPT6_STRICT, ECMASCRIPT6_TYPED (experimental)"
+ "ECMASCRIPT6_TYPED (experimental), ECMASCRIPT_2015, ECMASCRIPT_2016, "
+ "ECMASCRIPT_2017, ECMASCRIPT_NEXT"
)
private String languageIn = "ECMASCRIPT6";
private String languageIn = "ECMASCRIPT_2017";

@Option(name = "--language_out",
usage = "Sets what language spec the output should conform to. "
+ "Options: ECMASCRIPT3 (default), ECMASCRIPT5, ECMASCRIPT5_STRICT, "
+ "ECMASCRIPT6_TYPED (experimental)")
private String languageOut = "ECMASCRIPT3";
@Option(
name = "--language_out",
usage =
"Sets what language spec the output should conform to. "
+ "Options: ECMASCRIPT3, ECMASCRIPT5, ECMASCRIPT5_STRICT, "
+ "ECMASCRIPT6_TYPED (experimental), ECMASCRIPT_2015, ECMASCRIPT_2016, "
+ "ECMASCRIPT_2017, ECMASCRIPT_NEXT"
)
private String languageOut = "ECMASCRIPT5";

@Option(name = "--version",
handler = BooleanOptionHandler.class,
Expand Down Expand Up @@ -802,6 +807,7 @@ private void parse(List<String> args) throws CmdLineException {
"jscomp_off",
"jscomp_warning",
"new_type_inf",
"strict_mode_input",
"warnings_whitelist_file"))
.putAll(
"Output",
Expand Down
1 change: 1 addition & 0 deletions src/com/google/javascript/jscomp/Compiler.java
Original file line number Diff line number Diff line change
Expand Up @@ -2616,6 +2616,7 @@ private Config.LanguageMode getParserConfigLanguageMode(
case ECMASCRIPT_2016:
return Config.LanguageMode.ECMASCRIPT7;
case ECMASCRIPT8:
case ECMASCRIPT_2017:
case ECMASCRIPT_NEXT:
return Config.LanguageMode.ECMASCRIPT8;
default:
Expand Down
9 changes: 5 additions & 4 deletions src/com/google/javascript/jscomp/CompilerOptions.java
Original file line number Diff line number Diff line change
Expand Up @@ -3024,13 +3024,14 @@ public static enum LanguageMode {
*/
ECMASCRIPT_2016,

/** @deprecated Use {@code ECMASCRIPT_NEXT} */
/** @deprecated Use {@code ECMASCRIPT_2017} */
@Deprecated
ECMASCRIPT8,

/**
* ECMAScript latest draft standard.
*/
/** ECMAScript standard approved in 2017. Adds async/await. */
ECMASCRIPT_2017,

/** ECMAScript latest draft standard. */
ECMASCRIPT_NEXT,

/**
Expand Down
3 changes: 3 additions & 0 deletions test/com/google/javascript/jscomp/CommandLineRunnerTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -528,6 +528,7 @@ public void testIssue81() {
public void testIssue115() {
args.add("--compilation_level=SIMPLE_OPTIMIZATIONS");
args.add("--jscomp_off=es5Strict");
args.add("--strict_mode_input=false");
args.add("--warning_level=VERBOSE");
test("function f() { " +
" var arguments = Array.prototype.slice.call(arguments, 0);" +
Expand Down Expand Up @@ -1490,6 +1491,7 @@ public void testTwoParseErrors() {

public void testES3() {
args.add("--language_in=ECMASCRIPT3");
args.add("--language_out=ECMASCRIPT3");
useStringComparison = true;
test(
"var x = f.function",
Expand Down Expand Up @@ -1544,6 +1546,7 @@ public void testES5StrictUseStrictMultipleInputs() {

public void testWithKeywordWithEs5ChecksOff() {
args.add("--jscomp_off=es5Strict");
args.add("--strict_mode_input=false");
testSame("var x = {}; with (x) {}");
}

Expand Down

0 comments on commit 5b74485

Please sign in to comment.