Changeset 166240 in webkit
- Timestamp:
- Mar 25, 2014 11:00:30 AM (10 years ago)
- Location:
- trunk
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r166238 r166240 1 2014-03-24 Oliver Hunt <oliver@apple.com> 2 3 ASSERTION FAILED in Parser: dst != localReg 4 https://bugs.webkit.org/show_bug.cgi?id=130710 5 6 Reviewed by Filip Pizlo. 7 8 New testcases. 9 10 * js/parser-syntax-check-expected.txt: 11 * js/script-tests/parser-syntax-check.js: 12 1 13 2014-03-24 Brent Fulgham <bfulgham@apple.com> 2 14 -
trunk/LayoutTests/js/parser-syntax-check-expected.txt
r166216 r166240 351 351 PASS Invalid: "const a = b : c" 352 352 PASS Invalid: "function f() { const a = b : c }" 353 PASS Valid: "const a = 7; eval(''); a++" 354 PASS Valid: "function f() { const a = 7; eval(''); a++ }" 355 PASS Valid: "const a = 7; eval(''); a--" 356 PASS Valid: "function f() { const a = 7; eval(''); a-- }" 357 PASS Valid: "const a = 7; with({}) a++" 358 PASS Valid: "function f() { const a = 7; with({}) a++ }" 359 PASS Valid: "const a = 7; with({}) a--" 360 PASS Valid: "function f() { const a = 7; with({}) a-- }" 361 PASS Valid: "const a = 7; eval(''); a+=1" 362 PASS Valid: "function f() { const a = 7; eval(''); a+=1 }" 363 PASS Valid: "const a = 7; eval(''); a-=1" 364 PASS Valid: "function f() { const a = 7; eval(''); a-=1 }" 365 PASS Valid: "const a = 7; with({}) a+=1" 366 PASS Valid: "function f() { const a = 7; with({}) a+=1 }" 367 PASS Valid: "const a = 7; with({}) a-=1" 368 PASS Valid: "function f() { const a = 7; with({}) a-=1 }" 369 PASS Valid: "const a = 7; eval(''); a=1" 370 PASS Valid: "function f() { const a = 7; eval(''); a=1 }" 371 PASS Valid: "const a = 7; eval(''); a=1" 372 PASS Valid: "function f() { const a = 7; eval(''); a=1 }" 373 PASS Valid: "const a = 7; with({}) a=1" 374 PASS Valid: "function f() { const a = 7; with({}) a=1 }" 375 PASS Valid: "const a = 7; with({}) a=1" 376 PASS Valid: "function f() { const a = 7; with({}) a=1 }" 353 377 for statement 354 378 PASS Valid: "for ( ; ; ) { break }" -
trunk/LayoutTests/js/script-tests/parser-syntax-check.js
r166216 r166240 242 242 invalid("var a = b ? c, b"); 243 243 invalid("const a = b : c"); 244 valid("const a = 7; eval(''); a++"); 245 valid("const a = 7; eval(''); a--"); 246 valid("const a = 7; with({}) a++"); 247 valid("const a = 7; with({}) a--"); 248 valid("const a = 7; eval(''); a+=1"); 249 valid("const a = 7; eval(''); a-=1"); 250 valid("const a = 7; with({}) a+=1"); 251 valid("const a = 7; with({}) a-=1"); 252 valid("const a = 7; eval(''); a=1"); 253 valid("const a = 7; eval(''); a=1"); 254 valid("const a = 7; with({}) a=1"); 255 valid("const a = 7; with({}) a=1"); 256 244 257 245 258 debug ("for statement"); -
trunk/Source/JavaScriptCore/ChangeLog
r166239 r166240 1 2014-03-24 Oliver Hunt <oliver@apple.com> 2 3 ASSERTION FAILED in Parser: dst != localReg 4 https://bugs.webkit.org/show_bug.cgi?id=130710 5 6 Reviewed by Filip Pizlo. 7 8 Just make sure we don't try to write to a captured constant, 9 following the change to track captured variables separately. 10 11 * bytecompiler/NodesCodegen.cpp: 12 (JSC::PostfixNode::emitResolve): 13 (JSC::PrefixNode::emitResolve): 14 1 15 2014-03-25 Martin Robinson <mrobinson@igalia.com> 2 16 -
trunk/Source/JavaScriptCore/bytecompiler/NodesCodegen.cpp
r166107 r166240 741 741 generator.emitReadOnlyExceptionIfNeeded(); 742 742 localReg = generator.emitMove(generator.tempDestination(dst), localReg); 743 } 744 if (local.isCaptured()) { 743 } else if (local.isCaptured()) { 745 744 RefPtr<RegisterID> tempDst = generator.finalDestination(dst); 746 745 ASSERT(dst != localReg); … … 917 916 generator.emitReadOnlyExceptionIfNeeded(); 918 917 localReg = generator.emitMove(generator.tempDestination(dst), localReg); 919 } 920 if (local.isCaptured()) { 918 } else if (local.isCaptured()) { 921 919 RefPtr<RegisterID> tempDst = generator.tempDestination(dst); 922 920 generator.emitMove(tempDst.get(), localReg);
Note: See TracChangeset
for help on using the changeset viewer.