Bump number of allowed variables per scope to 65535, to address GWT.
R=jkummerow@chromium.org BUG=151625 Review URL: https://codereview.chromium.org/10965063 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12600 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
parent
2473aa31b3
commit
20b1c426cf
@ -229,7 +229,7 @@ function FormatMessage(message) {
|
||||
"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"],
|
||||
|
@ -454,7 +454,7 @@ class Parser {
|
||||
// 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,
|
||||
|
@ -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 @@ function function_with_n_locals(n) {
|
||||
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)");
|
||||
|
Loading…
Reference in New Issue
Block a user