Revision: 12600
Author: [email protected]
Date: Mon Sep 24 09:22:17 2012
Log: Bump number of allowed variables per scope to 65535, to address
GWT.
[email protected]
BUG=151625
Review URL: https://codereview.chromium.org/10965063
http://code.google.com/p/v8/source/detail?r=12600
Modified:
/branches/bleeding_edge/src/messages.js
/branches/bleeding_edge/src/parser.h
/branches/bleeding_edge/test/mjsunit/limit-locals.js
=======================================
--- /branches/bleeding_edge/src/messages.js Fri Sep 21 01:09:34 2012
+++ /branches/bleeding_edge/src/messages.js Mon Sep 24 09:22:17 2012
@@ -229,7 +229,7 @@
"strict_catch_variable", ["Catch variable may not be eval or
arguments in strict mode"],
"too_many_arguments", ["Too many arguments in function
call (only 32766 allowed)"],
"too_many_parameters", ["Too many parameters in function
definition (only 32766 allowed)"],
- "too_many_variables", ["Too many variables declared (only
32767 allowed)"],
+ "too_many_variables", ["Too many variables declared (only
65535 allowed)"],
"strict_param_name", ["Parameter name eval or arguments
is not allowed in strict mode"],
"strict_param_dupe", ["Strict mode function may not have
duplicate parameter names"],
"strict_var_name", ["Variable name may not be eval or
arguments in strict mode"],
=======================================
--- /branches/bleeding_edge/src/parser.h Wed Aug 29 02:19:53 2012
+++ /branches/bleeding_edge/src/parser.h Mon Sep 24 09:22:17 2012
@@ -454,7 +454,7 @@
// construct a hashable id, so if more than 2^17 are allowed, this
// should be checked.
static const int kMaxNumFunctionParameters = 32766;
- static const int kMaxNumFunctionLocals = 32767;
+ static const int kMaxNumFunctionLocals = 65535;
enum Mode {
PARSE_LAZILY,
=======================================
--- /branches/bleeding_edge/test/mjsunit/limit-locals.js Mon May 16
01:27:52 2011
+++ /branches/bleeding_edge/test/mjsunit/limit-locals.js Mon Sep 24
09:22:17 2012
@@ -25,7 +25,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-// Test that there is a limit of 32767 locals.
+// Test that there is a limit of 65535 locals.
function function_with_n_locals(n) {
test_prefix = "prefix ";
@@ -41,6 +41,7 @@
assertEquals("prefix 0 suffix", function_with_n_locals(0));
assertEquals("prefix 16000 suffix", function_with_n_locals(16000));
assertEquals("prefix 32767 suffix", function_with_n_locals(32767));
+assertEquals("prefix 65535 suffix", function_with_n_locals(65535));
-assertThrows("function_with_n_locals(32768)");
+assertThrows("function_with_n_locals(65536)");
assertThrows("function_with_n_locals(100000)");
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev