Backed out 3 changesets (bug 1901078, bug 1749048) for causing interface related...
[gecko.git] / js / src / tests / non262 / Exceptions / regress-273931.js
blob000b5f3108b84df613c97ff0cef21731c311352f
1 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3  * License, v. 2.0. If a copy of the MPL was not distributed with this
4  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
6 //-----------------------------------------------------------------------------
7 var BUGNUMBER = 273931;
8 var summary = 'Pop scope chain in exception handling';
9 var actual = '';
10 var expect = 'ReferenceError';
12 printBugNumber(BUGNUMBER);
13 printStatus (summary);
15 status = summary + ' ' + inSection(1) + ' ';
16 try
18   with ({foo:"bar"})
19     throw 42;
21 catch (e)
23   try
24   {
25     printStatus(foo);
26   }
27   catch(ee)
28   {
29     actual = ee.name;
30   }
33 reportCompare(expect, actual, status);
35 status = summary + ' ' + inSection(2) + ' ';
36 try
38   with ({foo:"bar"})
39     eval("throw 42");
41 catch (e)
43   try
44   {
45     printStatus(foo);
46   }
47   catch(ee)
48   {
49     actual = ee.name;
50   }
53 reportCompare(expect, actual, status);
55 status = summary + ' ' + inSection(3) + ' ';
56 try
58   var s = "throw 42";
59   with ({foo:"bar"})
60     eval(s);
62 catch (e)
64   try
65   {
66     printStatus(foo);
67   }
68   catch(ee)
69   {
70     actual = ee.name;
71   }
74 reportCompare(expect, actual, status);