| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- //-------------------------------------------------------------------------------------------------------
- // Copyright (C) Microsoft. All rights reserved.
- // Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
- //-------------------------------------------------------------------------------------------------------
- function echo(str)
- {
- if(typeof(WScript) == "undefined")
- {
- print(str);
- }
- else
- {
- WScript.Echo(str);
- }
- }
- function f() { f(); }
- var finally_ = 0;
- try {
- try {
- try {
- f(); /* first SO */
- } finally {
- finally_++;
- try {
- f(); /* nested SO. This finally block is ignored. */
- } finally {
- finally_++;
- }
- }
- } catch (ex) {
- /* we should be able to raise 2 more SOs from here */
- try {
- f(); /* first SO */
- } finally {
- finally_++;
- try {
- f(); /* second SO. This finally block is ignored. */
- } finally {
- finally_++;
- }
- }
- }
- } catch (ex) {
- echo(finally_ == 4 ? "PASS" : "FAIL");
- }
|