Title: [198233] trunk
- Revision
- 198233
- Author
- [email protected]
- Date
- 2016-03-15 15:38:29 -0700 (Tue, 15 Mar 2016)
Log Message
Unreviewed, rolling out r198148.
https://bugs.webkit.org/show_bug.cgi?id=155518
"Lets do this patch at a later time" (Requested by saamyjoon
on #webkit).
Reverted changeset:
"[ES6] Disallow var assignments in for-in loops"
https://bugs.webkit.org/show_bug.cgi?id=155451
http://trac.webkit.org/changeset/198148
Modified Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (198232 => 198233)
--- trunk/LayoutTests/ChangeLog 2016-03-15 22:22:55 UTC (rev 198232)
+++ trunk/LayoutTests/ChangeLog 2016-03-15 22:38:29 UTC (rev 198233)
@@ -1,3 +1,17 @@
+2016-03-15 Commit Queue <[email protected]>
+
+ Unreviewed, rolling out r198148.
+ https://bugs.webkit.org/show_bug.cgi?id=155518
+
+ "Lets do this patch at a later time" (Requested by saamyjoon
+ on #webkit).
+
+ Reverted changeset:
+
+ "[ES6] Disallow var assignments in for-in loops"
+ https://bugs.webkit.org/show_bug.cgi?id=155451
+ http://trac.webkit.org/changeset/198148
+
2016-03-15 Alexey Proskuryakov <[email protected]>
Test result gardening for
Modified: trunk/LayoutTests/js/parser-syntax-check-expected.txt (198232 => 198233)
--- trunk/LayoutTests/js/parser-syntax-check-expected.txt 2016-03-15 22:22:55 UTC (rev 198232)
+++ trunk/LayoutTests/js/parser-syntax-check-expected.txt 2016-03-15 22:38:29 UTC (rev 198233)
@@ -504,10 +504,10 @@
PASS Valid: "function f() { for ((a ? b : c) in c) break }"
PASS Valid: "for (var a in b in c) break" with ReferenceError
PASS Valid: "function f() { for (var a in b in c) break }"
-PASS Invalid: "for (var a = 5 += 6 in b) break"
-PASS Invalid: "function f() { for (var a = 5 += 6 in b) break }"
-PASS Invalid: "for (var a = debug('should not be hit') in b) break"
-PASS Invalid: "function f() { for (var a = debug('should not be hit') in b) break }"
+PASS Valid: "for (var a = 5 += 6 in b) break" with ReferenceError
+PASS Valid: "function f() { for (var a = 5 += 6 in b) break }"
+PASS Valid: "for (var a = debug('should not be hit') in b) break" with ReferenceError
+PASS Valid: "function f() { for (var a = debug('should not be hit') in b) break }"
PASS Invalid: "for (var a += 5 in b) break"
PASS Invalid: "function f() { for (var a += 5 in b) break }"
PASS Invalid: "for (var a = in b) break"
@@ -518,8 +518,8 @@
PASS Invalid: "function f() { for (var a = -6, b in b) break }"
PASS Invalid: "for (var a, b = 8 in b) break"
PASS Invalid: "function f() { for (var a, b = 8 in b) break }"
-PASS Invalid: "for (var a = (b in c) in d) break"
-PASS Invalid: "function f() { for (var a = (b in c) in d) break }"
+PASS Valid: "for (var a = (b in c) in d) break" with ReferenceError
+PASS Valid: "function f() { for (var a = (b in c) in d) break }"
PASS Invalid: "for (var a = (b in c in d) break"
PASS Invalid: "function f() { for (var a = (b in c in d) break }"
PASS Invalid: "for (var (a) in b) { }"
@@ -532,8 +532,8 @@
PASS Invalid: "function f() { for (var {a} = 20 of b) { } }"
PASS Invalid: "for (var {a} = 20 in b) { }"
PASS Invalid: "function f() { for (var {a} = 20 in b) { } }"
-PASS Invalid: "for (var i = 20 in b) { }"
-PASS Invalid: "function f() { for (var i = 20 in b) { } }"
+PASS Valid: "for (var i = 20 in b) { }" with ReferenceError
+PASS Valid: "function f() { for (var i = 20 in b) { } }"
PASS Invalid: "for (var i = 20 of b) { }"
PASS Invalid: "function f() { for (var i = 20 of b) { } }"
PASS Invalid: "for (var {i} = 20 of b) { }"
Modified: trunk/LayoutTests/js/script-tests/parser-syntax-check.js (198232 => 198233)
--- trunk/LayoutTests/js/script-tests/parser-syntax-check.js 2016-03-15 22:22:55 UTC (rev 198232)
+++ trunk/LayoutTests/js/script-tests/parser-syntax-check.js 2016-03-15 22:38:29 UTC (rev 198233)
@@ -333,21 +333,21 @@
invalid("for (a ? b : c in c) break");
valid ("for ((a ? b : c) in c) break");
valid ("for (var a in b in c) break");
-invalid("for (var a = 5 += 6 in b) break");
-invalid("for (var a = debug('should not be hit') in b) break");
+valid("for (var a = 5 += 6 in b) break");
+valid("for (var a = debug('should not be hit') in b) break");
invalid("for (var a += 5 in b) break");
invalid("for (var a = in b) break");
invalid("for (var a, b in b) break");
invalid("for (var a = -6, b in b) break");
invalid("for (var a, b = 8 in b) break");
-invalid("for (var a = (b in c) in d) break");
+valid("for (var a = (b in c) in d) break");
invalid("for (var a = (b in c in d) break");
invalid("for (var (a) in b) { }");
valid ("for (var a = 7, b = c < d >= d ; f()[6]++ ; --i()[1]++ ) {}");
invalid("for (var {a} = 20 in b) { }");
invalid("for (var {a} = 20 of b) { }");
invalid("for (var {a} = 20 in b) { }");
-invalid("for (var i = 20 in b) { }");
+valid("for (var i = 20 in b) { }");
invalid("for (var i = 20 of b) { }");
invalid("for (var {i} = 20 of b) { }");
invalid("for (var [i] = 20 of b) { }");
Modified: trunk/Source/_javascript_Core/ChangeLog (198232 => 198233)
--- trunk/Source/_javascript_Core/ChangeLog 2016-03-15 22:22:55 UTC (rev 198232)
+++ trunk/Source/_javascript_Core/ChangeLog 2016-03-15 22:38:29 UTC (rev 198233)
@@ -1,3 +1,17 @@
+2016-03-15 Commit Queue <[email protected]>
+
+ Unreviewed, rolling out r198148.
+ https://bugs.webkit.org/show_bug.cgi?id=155518
+
+ "Lets do this patch at a later time" (Requested by saamyjoon
+ on #webkit).
+
+ Reverted changeset:
+
+ "[ES6] Disallow var assignments in for-in loops"
+ https://bugs.webkit.org/show_bug.cgi?id=155451
+ http://trac.webkit.org/changeset/198148
+
2016-03-15 Joseph Pecoraro <[email protected]>
REGRESSION: ASSERTION FAILED: !m_lastActiveBlock on js/function-apply.html
Modified: trunk/Source/_javascript_Core/parser/Parser.cpp (198232 => 198233)
--- trunk/Source/_javascript_Core/parser/Parser.cpp 2016-03-15 22:22:55 UTC (rev 198232)
+++ trunk/Source/_javascript_Core/parser/Parser.cpp 2016-03-15 22:38:29 UTC (rev 198233)
@@ -1169,7 +1169,8 @@
if (hasAnyAssignments) {
if (isOfEnumeration)
internalFailWithMessage(false, "Cannot assign to the loop variable inside a for-of loop header");
- internalFailWithMessage(false, "Cannot assign to the loop variable inside a for-in loop header");
+ if (strictMode() || (isLetDeclaration || isConstDeclaration) || !context.isBindingNode(forInTarget))
+ internalFailWithMessage(false, "Cannot assign to the loop variable inside a for-in loop header");
}
TreeExpression expr = parseExpression(context);
failIfFalse(expr, "Expected _expression_ to enumerate");
Modified: trunk/Source/_javascript_Core/tests/es6.yaml (198232 => 198233)
--- trunk/Source/_javascript_Core/tests/es6.yaml 2016-03-15 22:22:55 UTC (rev 198232)
+++ trunk/Source/_javascript_Core/tests/es6.yaml 2016-03-15 22:38:29 UTC (rev 198233)
@@ -871,7 +871,7 @@
- path: es6/miscellaneous_function_length_is_configurable.js
cmd: runES6 :normal
- path: es6/miscellaneous_no_assignments_allowed_in_for-in_head.js
- cmd: runES6 :normal
+ cmd: runES6 :fail
- path: es6/miscellaneous_RegExp_constructor_can_alter_flags.js
cmd: runES6 :normal
- path: es6/new.target_assignment_is_an_early_error.js
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes