mirror of
				https://github.com/tc39/test262.git
				synced 2025-10-31 11:44:31 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			21 lines
		
	
	
		
			544 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			21 lines
		
	
	
		
			544 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| // Copyright (C) 2016 the V8 project authors. All rights reserved.
 | |
| // This code is governed by the BSD license found in the LICENSE file.
 | |
| /*---
 | |
| description: Expression is a candidate for tail-call optimization.
 | |
| esid: sec-static-semantics-hascallintailposition
 | |
| flags: [onlyStrict]
 | |
| features: [tail-call-optimization]
 | |
| includes: [tcoHelper.js]
 | |
| ---*/
 | |
| 
 | |
| var callCount = 0;
 | |
| (function f(n) {
 | |
|   if (n === 0) {
 | |
|     callCount += 1
 | |
|     return;
 | |
|   }
 | |
|   function getF() { return f; }
 | |
|   return getF()(n - 1);
 | |
| }($MAX_ITERATIONS));
 | |
| assert.sameValue(callCount, 1);
 |