michael@0: // Copyright 2009 the Sputnik authors. All rights reserved. michael@0: // This code is governed by the BSD license found in the LICENSE file. michael@0: michael@0: /** michael@0: * "break" within a "do-while" Statement is allowed and performed as described in 12.8 michael@0: * michael@0: * @path ch12/12.6/12.6.1/S12.6.1_A4_T4.js michael@0: * @description "break" and VariableDeclaration within a "do-while" statement michael@0: */ michael@0: michael@0: do_out : do { michael@0: var __in__do__before__break="reached"; michael@0: do_in : do { michael@0: var __in__do__IN__before__break="reached"; michael@0: break; michael@0: var __in__do__IN__after__break="where am i"; michael@0: } while (0); michael@0: var __in__do__after__break="where am i"; michael@0: } while(2===1); michael@0: michael@0: ////////////////////////////////////////////////////////////////////////////// michael@0: //CHECK#1 michael@0: if (!(__in__do__before__break&&__in__do__IN__before__break&&!__in__do__IN__after__break&&__in__do__after__break)) { michael@0: $ERROR('#1: (__in__do__before__break&&__in__do__IN__before__break&&!__in__do__IN__after__break&&__in__do__after__break)===true. Actual: (__in__do__before__break&&__in__do__IN__before__break&&!__in__do__IN__after__break&&__in__do__after__break)==='+ (__in__do__before__break&&__in__do__IN__before__break&&!__in__do__IN__after__break&&__in__do__after__break) ); michael@0: } michael@0: // michael@0: ////////////////////////////////////////////////////////////////////////////// michael@0: michael@0: