Reviewers: Yang, Description: Make built-ins strict mode conforming, and support a --use-strict flag.
* Turned all uses of 'const' into 'var'. * Turned all uses of local 'function' into 'var'. * Added a couple of missing toplevel 'var' declarations. One consequence is that the properties on the builtin object are no longer non-writable, and I had to adapt one test. Is that a problem? Unfortunately, we cannot actually switch the library scripts to strict mode by default, because that makes observable things like poisoned .caller properties for library functions. Also removed dead flag code in Compiler::Compile. [email protected] BUG= TEST= Please review this at https://chromiumcodereview.appspot.com/9415010/ SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge Affected files: M include/v8.h M src/apinatives.js M src/array.js M src/collection.js M src/compiler.cc M src/d8.js M src/date.js M src/debug-debugger.js M src/flag-definitions.h M src/math.js M src/messages.js M src/mirror-debugger.js M src/proxy.js M src/regexp.js M src/runtime.js M src/string.js M src/uri.js M src/v8natives.js M test/cctest/test-debug.cc M test/mjsunit/builtins.js -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev
