| //------------------------------------------------------------------------------------------------------- | |
| // Copyright (C) Microsoft. All rights reserved. | |
| // Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. | |
| //------------------------------------------------------------------------------------------------------- | |
| function foo(i) | |
| { | |
| try | |
| { | |
| WScript.Echo("\t\tInner foo " + i); | |
| throw "thrown"; | |
| } | |
| finally | |
| { | |
| WScript.Echo("\t\tFinally foo " + i); | |
| if (i == 0) | |
| return; | |
| else if (i == 1) | |
| throw 7; | |
| } | |
| } | |
| function bar(i) | |
| { | |
| try | |
| { | |
| WScript.Echo("\tInner bar " + i); | |
| foo(i); | |
| } | |
| finally | |
| { | |
| WScript.Echo("\tFinally bar " + i); | |
| } | |
| } | |
| function foobaz(i) | |
| { | |
| try | |
| { | |
| WScript.Echo("Inner foobaz " + i); | |
| bar(i); | |
| } | |
| catch(e) | |
| { | |
| WScript.Echo("Except foobaz " + i + " " + e); | |
| } | |
| } | |
| foobaz(0); | |
| foobaz(1); | |
| foobaz(2); | |
| function testThrowInlining() { | |
| var y = function () {}; | |
| Object.prototype["qfxhma"] = function qfxhma() { | |
| throw false; | |
| }; | |
| function shapeyConstructor(waquaz) { | |
| qfxhma(''); | |
| Object.defineProperty(this, "x", ({ | |
| set : | |
| (function () { | |
| var jqanki = y; | |
| })() | |
| })); | |
| } | |
| for (var a in[]) { | |
| try { | |
| shapeyConstructor(a); | |
| } catch (e) { | |
| } | |
| } | |
| qfxhma = y; | |
| }; | |
| testThrowInlining(); | |
| testThrowInlining(); | |
| //Blue Bug 216103 | |
| function bar216103(a) | |
| { | |
| var b=this.foo216103(a); | |
| return b; | |
| } | |
| function foo216103(a) | |
| { | |
| switch(a) | |
| { | |
| case "en": | |
| return "english (passed)"; | |
| break; | |
| case "de": | |
| return "german (passed)"; | |
| break; | |
| default: | |
| throw "blah (passed)"; | |
| break; | |
| } | |
| } | |
| try | |
| { | |
| WScript.Echo(bar216103("en")); | |
| } | |
| catch(err) | |
| { | |
| WScript.Echo(err); | |
| } | |
| function test() { | |
| var print = function () { | |
| }; | |
| print(function a_indexing(fsznpi, kfoevo) { | |
| if (fsznpi.length == kfoevo) { | |
| return [eval("''++")]; | |
| } | |
| var iewhao = a_indexing(fsznpi, kfoevo + 1); | |
| return 4; | |
| }([1], 0)); | |
| } | |
| try{ | |
| test(); | |
| } | |
| catch(err){ | |
| WScript.Echo(err) | |
| }; |