// Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. /** * StatementList: StatementList Statement inside the Block is evaluated from left to right * * @path ch12/12.1/S12.1_A5.js * @description Throwing exceptions within embedded/sequence Blocks */ ////////////////////////////////////////////////////////////////////////////// //CHECK#1 try { throw 1; throw 2; throw 3; $ERROR('1.1: throw 1 lead to throwing exception'); } catch (e) { if (e!==1) { $ERROR('#1.2: Exception === 1. Actual: Exception ==='+ e); } } //////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////// //CHECK#2 try { { throw 1; throw 2; } throw 3; $ERROR('#2.1: throw 1 lead to throwing exception'); } catch (e) { if (e!==1) { $ERROR('#2.2: Exception === 1. Actual: Exception ==='+ e); } } //////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////// //CHECK#3 try { throw 1; { throw 2; throw 3; } $ERROR('#3.1: throw 1 lead to throwing exception'); } catch (e) { if (e!==1) { $ERROR('#3.2: Exception === 1. Actual: Exception ==='+ e); } } ////////////////////////////////////////////////////////////////////////////////