Created attachment 269056 [details] [diff] [review] Fix I don't see the advantage of having to type -v 180 (or version(180)) anytime I want to use let, etc. in the JS shell (this isn't the web!). Of course, js -v 0 (or similar) can downgrade to older versions.
Comment on attachment 269056 [details] [diff] [review] Fix Assuming no bad effects on testsuite. Bob can stamp to remove that assumption. /be
I can adapt.
Fixed on trunk.
I haven't yet updated the suite to set the version for older subsuites back to 1.5. The following tests now fail with the default version but pass if you set -v 150. js1_5/Regress/regress-309242.js js1_5/Regress/regress-310993.js js1_5/Regress/regress-311071.js js1_5/Regress/regress-31255.js e4x related errors with <!-- comments Is e4x turned off in js1.8? js1_6/extensions/regress-352392.js expected: SyntaxError: invalid for each loop actual: TypeError: (void 0) is not a function wtf?
(In reply to comment #4) > js1_6/extensions/regress-352392.js > expected: SyntaxError: invalid for each loop actual: TypeError: (void 0) is not > a function This is trying to say 'undefined is not a function', from the call to Array.prototype.map, but in the new, exciting, world we can't say 'undefined', so you get void 0 instead. So this is working as intended.
The test checks: On the trunk I see v160: 'SyntaxError: invalid for each loop', v180: 'TypeError: (void 0) is not a function' for v180. On 1.8.1 I see v160: 'SyntaxError: invalid for each loop', v180: 'TypeError: (void 0) is not a function' for v180. Is the change from SyntaxError to TypeError legitimate?