js/src/tests/js1_7/block/regress-357754.js

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
     2 /*
     3  * Any copyright is dedicated to the Public Domain.
     4  * http://creativecommons.org/licenses/publicdomain/
     5  * Contributor: Blake Kaplan
     6  */
     8 //-----------------------------------------------------------------------------
     9 var BUGNUMBER = 357754;
    10 var summary = 'top level closures with let-bound varibles';
    11 var actual = '';
    12 var expect = '';
    15 //-----------------------------------------------------------------------------
    16 test();
    17 //-----------------------------------------------------------------------------
    19 function test()
    20 {
    21   enterFunc ('test');
    22   printBugNumber(BUGNUMBER);
    23   printStatus (summary);
    25   expect = 'No Error';
    26   actual = 'No Error';
    27   try
    28   {
    29     function f() { let k = 3; function g() { print(k); } g() }
    30     f();
    31   }
    32   catch(ex)
    33   {
    34     actual = ex + '';
    35   }
    36   reportCompare(expect, actual, summary + ': 1');
    38   expect = 'No Error';
    39   actual = 'No Error';
    40   try
    41   {
    42     function h() { let k = 3; if (1) function g() { print(k); } g() }
    43     h();
    44   }
    45   catch(ex)
    46   {
    47     actual = ex + '';
    48   }
    49   reportCompare(expect, actual, summary + ': 2');
    51   expect = 'No Error';
    52   actual = 'No Error';
    53   try
    54   {
    55     function i() { let k = 3; (function() { print(k); })() }
    56     i();
    57   }
    58   catch(ex)
    59   {
    60     actual = ex + '';
    61   }
    62   reportCompare(expect, actual, summary + ': 3');
    64   exitFunc ('test');
    65 }

mercurial