mirror of
				https://github.com/tc39/test262.git
				synced 2025-11-04 05:33:50 +01:00 
			
		
		
		
	* [javascriptcore-test262-automation] changes from git@github.com:WebKit/webkit.git at sha 949e26452cfa153a7f4afe593da97e2fe9e1b706 on Tue Jul 03 2018 14:35:15 GMT-0400 (Eastern Daylight Time)
		
			
				
	
	
		
			41 lines
		
	
	
		
			647 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			647 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
"use strict";
 | 
						|
function assert(cond, m) {
 | 
						|
    if (!cond)
 | 
						|
        throw new Error("broke assertion: '" + m + "'");
 | 
						|
}
 | 
						|
noInline(assert);
 | 
						|
 | 
						|
function baz(b) {
 | 
						|
    if (b)
 | 
						|
        throw new Error("Baz");
 | 
						|
}
 | 
						|
 | 
						|
function bar(b) {
 | 
						|
    var exception = null;
 | 
						|
    try {
 | 
						|
        baz(b);
 | 
						|
    } catch(e) {
 | 
						|
        exception = e;
 | 
						|
        baz(b);
 | 
						|
    } finally {
 | 
						|
        if (b) 
 | 
						|
            assert(exception);
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
function foo(b) {
 | 
						|
    var exception = null;
 | 
						|
    try {
 | 
						|
        bar(b);
 | 
						|
    } catch(e) {
 | 
						|
        exception = e;
 | 
						|
    }
 | 
						|
    if (b)
 | 
						|
        assert(exception);
 | 
						|
}
 | 
						|
 | 
						|
const NUM_LOOPS = 1000;
 | 
						|
for (var i = 0; i < NUM_LOOPS; i++) {
 | 
						|
    foo(i === NUM_LOOPS - 1);
 | 
						|
}
 |