| // Copyright 2016 the V8 project authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // The test functions in this file will be eagerly compiled. The functions |
| // inside will be eagerly parsed but lazily compiled. |
| |
| (function TestLengths() { |
| function inner(p1, p2, p3) { } |
| assertEquals(3, inner.length); |
| })(); |
| |
| (function TestAccessingContextVariables() { |
| var in_context = 8; |
| function inner() { return in_context; } |
| assertEquals(8, inner()); |
| })(); |
| |
| (function TestAccessingContextVariablesFromDeeper() { |
| var in_context = 8; |
| function inner() { |
| function inner_inner() { |
| function inner_inner_inner() { |
| return in_context; |
| } |
| return inner_inner_inner; |
| } |
| return inner_inner; |
| } |
| assertEquals(8, inner()()()); |
| })(); |