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: * FunctionDeclaration produces a new scope michael@0: * michael@0: * @path ch12/12.2/S12.2_A3.js michael@0: * @description Using Global scope and Function scope together michael@0: */ michael@0: michael@0: var __var = "OUT"; michael@0: michael@0: (function(){ michael@0: var __var ="IN"; michael@0: (function(){__var = "INNER_SPACE";})(); michael@0: (function(){var __var = "INNER_SUN";})(); michael@0: ////////////////////////////////////////////////////////////////////////////// michael@0: //CHECK#1 michael@0: if (__var !== "INNER_SPACE") { michael@0: $ERROR('#1: __var === "INNER_SPACE". Actual: __var ==='+ __var ); michael@0: } michael@0: // michael@0: ////////////////////////////////////////////////////////////////////////////// michael@0: })(); michael@0: michael@0: ////////////////////////////////////////////////////////////////////////////// michael@0: //CHECK#2 michael@0: if (__var !== "OUT") { michael@0: $ERROR('#2: __var === "OUT". Actual: __var ==='+ __var ); michael@0: } michael@0: // michael@0: ////////////////////////////////////////////////////////////////////////////// michael@0: michael@0: michael@0: (function(){ michael@0: __var ="IN"; michael@0: (function(){__var = "INNERED"})(); michael@0: (function(){var __var = "INNAGER"})(); michael@0: ////////////////////////////////////////////////////////////////////////////// michael@0: //CHECK#3 michael@0: if (__var!=="INNERED") { michael@0: $ERROR('#3: __var==="INNERED". Actual: __var==='+ __var ); michael@0: } michael@0: // michael@0: ////////////////////////////////////////////////////////////////////////////// michael@0: })(); michael@0: michael@0: ////////////////////////////////////////////////////////////////////////////// michael@0: //CHECK#4 michael@0: if (__var!=="INNERED") { michael@0: $ERROR('#4: __var==="INNERED". Actual: __var==='+ __var ); michael@0: } michael@0: // michael@0: ////////////////////////////////////////////////////////////////////////////// michael@0: