Changeset 254842 in webkit


Ignore:
Timestamp:
Jan 20, 2020 7:48:17 PM (4 years ago)
Author:
commit-queue@webkit.org
Message:

Remove own toString from NativeError prototype
https://bugs.webkit.org/show_bug.cgi?id=204629

Patch by Gus Caplan <me@gus.host> on 2020-01-20
Reviewed by Ross Kirsling.

NativeError prototypes are expected to inherit toString from
Error.prototype. See https://github.com/tc39/ecma262/issues/1794
for additional details.

JSTests:

  • stress/nativeerror-prototype-tostring.js:

Source/JavaScriptCore:

  • runtime/ErrorPrototype.cpp:

(JSC::ErrorPrototypeBase::ErrorPrototypeBase):
(JSC::ErrorPrototypeBase::finishCreation):
(JSC::ErrorPrototype::ErrorPrototype):
(JSC::ErrorPrototype::create): Deleted.
(JSC::ErrorPrototype::finishCreation): Deleted.

  • runtime/ErrorPrototype.h:

(JSC::ErrorPrototype::createStructure): Deleted.

  • runtime/NativeErrorPrototype.cpp:

(JSC::NativeErrorPrototype::NativeErrorPrototype):

  • runtime/NativeErrorPrototype.h:

LayoutTests:

  • http/tests/security/regress-52192-expected.txt:
  • http/tests/security/regress-52192.html:
Location:
trunk
Files:
1 added
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/JSTests/ChangeLog

    r254820 r254842  
     12020-01-20  Gus Caplan  <me@gus.host>
     2
     3        Remove own toString from NativeError prototype
     4        https://bugs.webkit.org/show_bug.cgi?id=204629
     5
     6        Reviewed by Ross Kirsling.
     7
     8        NativeError prototypes are expected to inherit toString from
     9        Error.prototype. See https://github.com/tc39/ecma262/issues/1794
     10        for additional details.
     11
     12        * stress/nativeerror-prototype-tostring.js:
     13
    1142020-01-20  Caio Lima  <ticaiolima@gmail.com>
    215
  • trunk/LayoutTests/ChangeLog

    r254841 r254842  
     12020-01-20  Gus Caplan  <me@gus.host>
     2
     3        Remove own toString from NativeError prototype
     4        https://bugs.webkit.org/show_bug.cgi?id=204629
     5
     6        Reviewed by Ross Kirsling.
     7
     8        NativeError prototypes are expected to inherit toString from
     9        Error.prototype. See https://github.com/tc39/ecma262/issues/1794
     10        for additional details.
     11
     12        * http/tests/security/regress-52192-expected.txt:
     13        * http/tests/security/regress-52192.html:
     14
    1152020-01-20  Said Abou-Hallawa  <sabouhallawa@apple.com>
    216
  • trunk/LayoutTests/http/tests/security/regress-52192-expected.txt

    r227898 r254842  
    11CONSOLE MESSAGE: line 42:
    22CONSOLE MESSAGE: line 43: Test [case 1]
    3 CONSOLE MESSAGE: line 133:    [case 1] let e = new Error('Error thrown from main script body');
    4 CONSOLE MESSAGE: line 140:       [Error] e = 'Error: Error thrown from main script body'
    5 CONSOLE MESSAGE: line 141:       [Error] e.name = 'Error'
    6 CONSOLE MESSAGE: line 142:       [Error] e.message = 'Error thrown from main script body'
    7 CONSOLE MESSAGE: line 143:       [Error] e.toString() = 'Error: Error thrown from main script body'
    8 CONSOLE MESSAGE: line 144:
    9 CONSOLE MESSAGE: line 153:    [case 1] let caughtE; try { throw e } catch(err) { caughtE = err }
    10 CONSOLE MESSAGE: line 156:       [Error] caughtE = 'Error: Error thrown from main script body'
    11 CONSOLE MESSAGE: line 157:       [Error] caughtE.name = 'Error'
    12 CONSOLE MESSAGE: line 158:       [Error] caughtE.message = 'Error thrown from main script body'
    13 CONSOLE MESSAGE: line 159:       [Error] caughtE.toString() = 'Error: Error thrown from main script body'
    14 CONSOLE MESSAGE: line 160:
    15 CONSOLE MESSAGE: line 169:    throw e;
     3CONSOLE MESSAGE: line 131:    [case 1] let e = new Error('Error thrown from main script body');
     4CONSOLE MESSAGE: line 138:       [Error] e = 'Error: Error thrown from main script body'
     5CONSOLE MESSAGE: line 139:       [Error] e.name = 'Error'
     6CONSOLE MESSAGE: line 140:       [Error] e.message = 'Error thrown from main script body'
     7CONSOLE MESSAGE: line 141:       [Error] e.toString() = 'Error: Error thrown from main script body'
     8CONSOLE MESSAGE: line 142:
     9CONSOLE MESSAGE: line 151:    [case 1] let caughtE; try { throw e } catch(err) { caughtE = err }
     10CONSOLE MESSAGE: line 154:       [Error] caughtE = 'Error: Error thrown from main script body'
     11CONSOLE MESSAGE: line 155:       [Error] caughtE.name = 'Error'
     12CONSOLE MESSAGE: line 156:       [Error] caughtE.message = 'Error thrown from main script body'
     13CONSOLE MESSAGE: line 157:       [Error] caughtE.toString() = 'Error: Error thrown from main script body'
     14CONSOLE MESSAGE: line 158:
     15CONSOLE MESSAGE: line 167:    throw e;
    1616CONSOLE MESSAGE: line 47:    [case 1] in window.onerror: err = Error: Error thrown from main script body
    1717CONSOLE MESSAGE: line 48:    [case 1] in window.onerror: err.name = undefined
     
    2222CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    2323CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    24 CONSOLE MESSAGE: line 170: Error: Error thrown from main script body
     24CONSOLE MESSAGE: line 168: Error: Error thrown from main script body
    2525CONSOLE MESSAGE: line 42:
    2626CONSOLE MESSAGE: line 43: Test [case 2]
    27 CONSOLE MESSAGE: line 133:    [case 2] let e = new EvalError('Error thrown from main script body');
    28 CONSOLE MESSAGE: line 140:       [EvalError] e = 'EvalError: Error thrown from main script body'
    29 CONSOLE MESSAGE: line 141:       [EvalError] e.name = 'EvalError'
    30 CONSOLE MESSAGE: line 142:       [EvalError] e.message = 'Error thrown from main script body'
    31 CONSOLE MESSAGE: line 143:       [EvalError] e.toString() = 'EvalError: Error thrown from main script body'
    32 CONSOLE MESSAGE: line 144:
    33 CONSOLE MESSAGE: line 153:    [case 2] let caughtE; try { throw e } catch(err) { caughtE = err }
    34 CONSOLE MESSAGE: line 156:       [EvalError] caughtE = 'EvalError: Error thrown from main script body'
    35 CONSOLE MESSAGE: line 157:       [EvalError] caughtE.name = 'EvalError'
    36 CONSOLE MESSAGE: line 158:       [EvalError] caughtE.message = 'Error thrown from main script body'
    37 CONSOLE MESSAGE: line 159:       [EvalError] caughtE.toString() = 'EvalError: Error thrown from main script body'
    38 CONSOLE MESSAGE: line 160:
    39 CONSOLE MESSAGE: line 169:    throw e;
     27CONSOLE MESSAGE: line 131:    [case 2] let e = new EvalError('Error thrown from main script body');
     28CONSOLE MESSAGE: line 138:       [EvalError] e = 'EvalError: Error thrown from main script body'
     29CONSOLE MESSAGE: line 139:       [EvalError] e.name = 'EvalError'
     30CONSOLE MESSAGE: line 140:       [EvalError] e.message = 'Error thrown from main script body'
     31CONSOLE MESSAGE: line 141:       [EvalError] e.toString() = 'EvalError: Error thrown from main script body'
     32CONSOLE MESSAGE: line 142:
     33CONSOLE MESSAGE: line 151:    [case 2] let caughtE; try { throw e } catch(err) { caughtE = err }
     34CONSOLE MESSAGE: line 154:       [EvalError] caughtE = 'EvalError: Error thrown from main script body'
     35CONSOLE MESSAGE: line 155:       [EvalError] caughtE.name = 'EvalError'
     36CONSOLE MESSAGE: line 156:       [EvalError] caughtE.message = 'Error thrown from main script body'
     37CONSOLE MESSAGE: line 157:       [EvalError] caughtE.toString() = 'EvalError: Error thrown from main script body'
     38CONSOLE MESSAGE: line 158:
     39CONSOLE MESSAGE: line 167:    throw e;
    4040CONSOLE MESSAGE: line 47:    [case 2] in window.onerror: err = EvalError: Error thrown from main script body
    4141CONSOLE MESSAGE: line 48:    [case 2] in window.onerror: err.name = undefined
     
    4646CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    4747CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    48 CONSOLE MESSAGE: line 170: EvalError: Error thrown from main script body
     48CONSOLE MESSAGE: line 168: EvalError: Error thrown from main script body
    4949CONSOLE MESSAGE: line 42:
    5050CONSOLE MESSAGE: line 43: Test [case 3]
    51 CONSOLE MESSAGE: line 133:    [case 3] let e = new RangeError('Error thrown from main script body');
    52 CONSOLE MESSAGE: line 140:       [RangeError] e = 'RangeError: Error thrown from main script body'
    53 CONSOLE MESSAGE: line 141:       [RangeError] e.name = 'RangeError'
    54 CONSOLE MESSAGE: line 142:       [RangeError] e.message = 'Error thrown from main script body'
    55 CONSOLE MESSAGE: line 143:       [RangeError] e.toString() = 'RangeError: Error thrown from main script body'
    56 CONSOLE MESSAGE: line 144:
    57 CONSOLE MESSAGE: line 153:    [case 3] let caughtE; try { throw e } catch(err) { caughtE = err }
    58 CONSOLE MESSAGE: line 156:       [RangeError] caughtE = 'RangeError: Error thrown from main script body'
    59 CONSOLE MESSAGE: line 157:       [RangeError] caughtE.name = 'RangeError'
    60 CONSOLE MESSAGE: line 158:       [RangeError] caughtE.message = 'Error thrown from main script body'
    61 CONSOLE MESSAGE: line 159:       [RangeError] caughtE.toString() = 'RangeError: Error thrown from main script body'
    62 CONSOLE MESSAGE: line 160:
    63 CONSOLE MESSAGE: line 169:    throw e;
     51CONSOLE MESSAGE: line 131:    [case 3] let e = new RangeError('Error thrown from main script body');
     52CONSOLE MESSAGE: line 138:       [RangeError] e = 'RangeError: Error thrown from main script body'
     53CONSOLE MESSAGE: line 139:       [RangeError] e.name = 'RangeError'
     54CONSOLE MESSAGE: line 140:       [RangeError] e.message = 'Error thrown from main script body'
     55CONSOLE MESSAGE: line 141:       [RangeError] e.toString() = 'RangeError: Error thrown from main script body'
     56CONSOLE MESSAGE: line 142:
     57CONSOLE MESSAGE: line 151:    [case 3] let caughtE; try { throw e } catch(err) { caughtE = err }
     58CONSOLE MESSAGE: line 154:       [RangeError] caughtE = 'RangeError: Error thrown from main script body'
     59CONSOLE MESSAGE: line 155:       [RangeError] caughtE.name = 'RangeError'
     60CONSOLE MESSAGE: line 156:       [RangeError] caughtE.message = 'Error thrown from main script body'
     61CONSOLE MESSAGE: line 157:       [RangeError] caughtE.toString() = 'RangeError: Error thrown from main script body'
     62CONSOLE MESSAGE: line 158:
     63CONSOLE MESSAGE: line 167:    throw e;
    6464CONSOLE MESSAGE: line 47:    [case 3] in window.onerror: err = RangeError: Error thrown from main script body
    6565CONSOLE MESSAGE: line 48:    [case 3] in window.onerror: err.name = undefined
     
    7070CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    7171CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    72 CONSOLE MESSAGE: line 170: RangeError: Error thrown from main script body
     72CONSOLE MESSAGE: line 168: RangeError: Error thrown from main script body
    7373CONSOLE MESSAGE: line 42:
    7474CONSOLE MESSAGE: line 43: Test [case 4]
    75 CONSOLE MESSAGE: line 133:    [case 4] let e = new ReferenceError('Error thrown from main script body');
    76 CONSOLE MESSAGE: line 140:       [ReferenceError] e = 'ReferenceError: Error thrown from main script body'
    77 CONSOLE MESSAGE: line 141:       [ReferenceError] e.name = 'ReferenceError'
    78 CONSOLE MESSAGE: line 142:       [ReferenceError] e.message = 'Error thrown from main script body'
    79 CONSOLE MESSAGE: line 143:       [ReferenceError] e.toString() = 'ReferenceError: Error thrown from main script body'
    80 CONSOLE MESSAGE: line 144:
    81 CONSOLE MESSAGE: line 153:    [case 4] let caughtE; try { throw e } catch(err) { caughtE = err }
    82 CONSOLE MESSAGE: line 156:       [ReferenceError] caughtE = 'ReferenceError: Error thrown from main script body'
    83 CONSOLE MESSAGE: line 157:       [ReferenceError] caughtE.name = 'ReferenceError'
    84 CONSOLE MESSAGE: line 158:       [ReferenceError] caughtE.message = 'Error thrown from main script body'
    85 CONSOLE MESSAGE: line 159:       [ReferenceError] caughtE.toString() = 'ReferenceError: Error thrown from main script body'
    86 CONSOLE MESSAGE: line 160:
    87 CONSOLE MESSAGE: line 169:    throw e;
     75CONSOLE MESSAGE: line 131:    [case 4] let e = new ReferenceError('Error thrown from main script body');
     76CONSOLE MESSAGE: line 138:       [ReferenceError] e = 'ReferenceError: Error thrown from main script body'
     77CONSOLE MESSAGE: line 139:       [ReferenceError] e.name = 'ReferenceError'
     78CONSOLE MESSAGE: line 140:       [ReferenceError] e.message = 'Error thrown from main script body'
     79CONSOLE MESSAGE: line 141:       [ReferenceError] e.toString() = 'ReferenceError: Error thrown from main script body'
     80CONSOLE MESSAGE: line 142:
     81CONSOLE MESSAGE: line 151:    [case 4] let caughtE; try { throw e } catch(err) { caughtE = err }
     82CONSOLE MESSAGE: line 154:       [ReferenceError] caughtE = 'ReferenceError: Error thrown from main script body'
     83CONSOLE MESSAGE: line 155:       [ReferenceError] caughtE.name = 'ReferenceError'
     84CONSOLE MESSAGE: line 156:       [ReferenceError] caughtE.message = 'Error thrown from main script body'
     85CONSOLE MESSAGE: line 157:       [ReferenceError] caughtE.toString() = 'ReferenceError: Error thrown from main script body'
     86CONSOLE MESSAGE: line 158:
     87CONSOLE MESSAGE: line 167:    throw e;
    8888CONSOLE MESSAGE: line 47:    [case 4] in window.onerror: err = ReferenceError: Error thrown from main script body
    8989CONSOLE MESSAGE: line 48:    [case 4] in window.onerror: err.name = undefined
     
    9494CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    9595CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    96 CONSOLE MESSAGE: line 170: ReferenceError: Error thrown from main script body
     96CONSOLE MESSAGE: line 168: ReferenceError: Error thrown from main script body
    9797CONSOLE MESSAGE: line 42:
    9898CONSOLE MESSAGE: line 43: Test [case 5]
    99 CONSOLE MESSAGE: line 133:    [case 5] let e = new SyntaxError('Error thrown from main script body');
    100 CONSOLE MESSAGE: line 140:       [SyntaxError] e = 'SyntaxError: Error thrown from main script body'
    101 CONSOLE MESSAGE: line 141:       [SyntaxError] e.name = 'SyntaxError'
    102 CONSOLE MESSAGE: line 142:       [SyntaxError] e.message = 'Error thrown from main script body'
    103 CONSOLE MESSAGE: line 143:       [SyntaxError] e.toString() = 'SyntaxError: Error thrown from main script body'
    104 CONSOLE MESSAGE: line 144:
    105 CONSOLE MESSAGE: line 153:    [case 5] let caughtE; try { throw e } catch(err) { caughtE = err }
    106 CONSOLE MESSAGE: line 156:       [SyntaxError] caughtE = 'SyntaxError: Error thrown from main script body'
    107 CONSOLE MESSAGE: line 157:       [SyntaxError] caughtE.name = 'SyntaxError'
    108 CONSOLE MESSAGE: line 158:       [SyntaxError] caughtE.message = 'Error thrown from main script body'
    109 CONSOLE MESSAGE: line 159:       [SyntaxError] caughtE.toString() = 'SyntaxError: Error thrown from main script body'
    110 CONSOLE MESSAGE: line 160:
    111 CONSOLE MESSAGE: line 169:    throw e;
     99CONSOLE MESSAGE: line 131:    [case 5] let e = new SyntaxError('Error thrown from main script body');
     100CONSOLE MESSAGE: line 138:       [SyntaxError] e = 'SyntaxError: Error thrown from main script body'
     101CONSOLE MESSAGE: line 139:       [SyntaxError] e.name = 'SyntaxError'
     102CONSOLE MESSAGE: line 140:       [SyntaxError] e.message = 'Error thrown from main script body'
     103CONSOLE MESSAGE: line 141:       [SyntaxError] e.toString() = 'SyntaxError: Error thrown from main script body'
     104CONSOLE MESSAGE: line 142:
     105CONSOLE MESSAGE: line 151:    [case 5] let caughtE; try { throw e } catch(err) { caughtE = err }
     106CONSOLE MESSAGE: line 154:       [SyntaxError] caughtE = 'SyntaxError: Error thrown from main script body'
     107CONSOLE MESSAGE: line 155:       [SyntaxError] caughtE.name = 'SyntaxError'
     108CONSOLE MESSAGE: line 156:       [SyntaxError] caughtE.message = 'Error thrown from main script body'
     109CONSOLE MESSAGE: line 157:       [SyntaxError] caughtE.toString() = 'SyntaxError: Error thrown from main script body'
     110CONSOLE MESSAGE: line 158:
     111CONSOLE MESSAGE: line 167:    throw e;
    112112CONSOLE MESSAGE: line 47:    [case 5] in window.onerror: err = SyntaxError: Error thrown from main script body
    113113CONSOLE MESSAGE: line 48:    [case 5] in window.onerror: err.name = undefined
     
    118118CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    119119CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    120 CONSOLE MESSAGE: line 170: SyntaxError: Error thrown from main script body
     120CONSOLE MESSAGE: line 168: SyntaxError: Error thrown from main script body
    121121CONSOLE MESSAGE: line 42:
    122122CONSOLE MESSAGE: line 43: Test [case 6]
    123 CONSOLE MESSAGE: line 133:    [case 6] let e = new TypeError('Error thrown from main script body');
    124 CONSOLE MESSAGE: line 140:       [TypeError] e = 'TypeError: Error thrown from main script body'
    125 CONSOLE MESSAGE: line 141:       [TypeError] e.name = 'TypeError'
    126 CONSOLE MESSAGE: line 142:       [TypeError] e.message = 'Error thrown from main script body'
    127 CONSOLE MESSAGE: line 143:       [TypeError] e.toString() = 'TypeError: Error thrown from main script body'
    128 CONSOLE MESSAGE: line 144:
    129 CONSOLE MESSAGE: line 153:    [case 6] let caughtE; try { throw e } catch(err) { caughtE = err }
    130 CONSOLE MESSAGE: line 156:       [TypeError] caughtE = 'TypeError: Error thrown from main script body'
    131 CONSOLE MESSAGE: line 157:       [TypeError] caughtE.name = 'TypeError'
    132 CONSOLE MESSAGE: line 158:       [TypeError] caughtE.message = 'Error thrown from main script body'
    133 CONSOLE MESSAGE: line 159:       [TypeError] caughtE.toString() = 'TypeError: Error thrown from main script body'
    134 CONSOLE MESSAGE: line 160:
    135 CONSOLE MESSAGE: line 169:    throw e;
     123CONSOLE MESSAGE: line 131:    [case 6] let e = new TypeError('Error thrown from main script body');
     124CONSOLE MESSAGE: line 138:       [TypeError] e = 'TypeError: Error thrown from main script body'
     125CONSOLE MESSAGE: line 139:       [TypeError] e.name = 'TypeError'
     126CONSOLE MESSAGE: line 140:       [TypeError] e.message = 'Error thrown from main script body'
     127CONSOLE MESSAGE: line 141:       [TypeError] e.toString() = 'TypeError: Error thrown from main script body'
     128CONSOLE MESSAGE: line 142:
     129CONSOLE MESSAGE: line 151:    [case 6] let caughtE; try { throw e } catch(err) { caughtE = err }
     130CONSOLE MESSAGE: line 154:       [TypeError] caughtE = 'TypeError: Error thrown from main script body'
     131CONSOLE MESSAGE: line 155:       [TypeError] caughtE.name = 'TypeError'
     132CONSOLE MESSAGE: line 156:       [TypeError] caughtE.message = 'Error thrown from main script body'
     133CONSOLE MESSAGE: line 157:       [TypeError] caughtE.toString() = 'TypeError: Error thrown from main script body'
     134CONSOLE MESSAGE: line 158:
     135CONSOLE MESSAGE: line 167:    throw e;
    136136CONSOLE MESSAGE: line 47:    [case 6] in window.onerror: err = TypeError: Error thrown from main script body
    137137CONSOLE MESSAGE: line 48:    [case 6] in window.onerror: err.name = undefined
     
    142142CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    143143CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    144 CONSOLE MESSAGE: line 170: TypeError: Error thrown from main script body
     144CONSOLE MESSAGE: line 168: TypeError: Error thrown from main script body
    145145CONSOLE MESSAGE: line 42:
    146146CONSOLE MESSAGE: line 43: Test [case 7]
    147 CONSOLE MESSAGE: line 133:    [case 7] let e = new URIError('Error thrown from main script body');
    148 CONSOLE MESSAGE: line 140:       [URIError] e = 'URIError: Error thrown from main script body'
    149 CONSOLE MESSAGE: line 141:       [URIError] e.name = 'URIError'
    150 CONSOLE MESSAGE: line 142:       [URIError] e.message = 'Error thrown from main script body'
    151 CONSOLE MESSAGE: line 143:       [URIError] e.toString() = 'URIError: Error thrown from main script body'
    152 CONSOLE MESSAGE: line 144:
    153 CONSOLE MESSAGE: line 153:    [case 7] let caughtE; try { throw e } catch(err) { caughtE = err }
    154 CONSOLE MESSAGE: line 156:       [URIError] caughtE = 'URIError: Error thrown from main script body'
    155 CONSOLE MESSAGE: line 157:       [URIError] caughtE.name = 'URIError'
    156 CONSOLE MESSAGE: line 158:       [URIError] caughtE.message = 'Error thrown from main script body'
    157 CONSOLE MESSAGE: line 159:       [URIError] caughtE.toString() = 'URIError: Error thrown from main script body'
    158 CONSOLE MESSAGE: line 160:
    159 CONSOLE MESSAGE: line 169:    throw e;
     147CONSOLE MESSAGE: line 131:    [case 7] let e = new URIError('Error thrown from main script body');
     148CONSOLE MESSAGE: line 138:       [URIError] e = 'URIError: Error thrown from main script body'
     149CONSOLE MESSAGE: line 139:       [URIError] e.name = 'URIError'
     150CONSOLE MESSAGE: line 140:       [URIError] e.message = 'Error thrown from main script body'
     151CONSOLE MESSAGE: line 141:       [URIError] e.toString() = 'URIError: Error thrown from main script body'
     152CONSOLE MESSAGE: line 142:
     153CONSOLE MESSAGE: line 151:    [case 7] let caughtE; try { throw e } catch(err) { caughtE = err }
     154CONSOLE MESSAGE: line 154:       [URIError] caughtE = 'URIError: Error thrown from main script body'
     155CONSOLE MESSAGE: line 155:       [URIError] caughtE.name = 'URIError'
     156CONSOLE MESSAGE: line 156:       [URIError] caughtE.message = 'Error thrown from main script body'
     157CONSOLE MESSAGE: line 157:       [URIError] caughtE.toString() = 'URIError: Error thrown from main script body'
     158CONSOLE MESSAGE: line 158:
     159CONSOLE MESSAGE: line 167:    throw e;
    160160CONSOLE MESSAGE: line 47:    [case 7] in window.onerror: err = URIError: Error thrown from main script body
    161161CONSOLE MESSAGE: line 48:    [case 7] in window.onerror: err.name = undefined
     
    166166CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    167167CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    168 CONSOLE MESSAGE: line 170: URIError: Error thrown from main script body
     168CONSOLE MESSAGE: line 168: URIError: Error thrown from main script body
    169169CONSOLE MESSAGE: line 42:
    170170CONSOLE MESSAGE: line 43: Test [case 8]
    171 CONSOLE MESSAGE: line 133:    [case 8] let e = new Error('Error thrown from main script body');
    172 CONSOLE MESSAGE: line 136:    [case 8] e.name = 'MyError';
    173 CONSOLE MESSAGE: line 140:       [Error] e = 'MyError: Error thrown from main script body'
    174 CONSOLE MESSAGE: line 141:       [Error] e.name = 'MyError'
    175 CONSOLE MESSAGE: line 142:       [Error] e.message = 'Error thrown from main script body'
    176 CONSOLE MESSAGE: line 143:       [Error] e.toString() = 'MyError: Error thrown from main script body'
    177 CONSOLE MESSAGE: line 144:
    178 CONSOLE MESSAGE: line 153:    [case 8] let caughtE; try { throw e } catch(err) { caughtE = err }
    179 CONSOLE MESSAGE: line 156:       [Error] caughtE = 'MyError: Error thrown from main script body'
    180 CONSOLE MESSAGE: line 157:       [Error] caughtE.name = 'MyError'
    181 CONSOLE MESSAGE: line 158:       [Error] caughtE.message = 'Error thrown from main script body'
    182 CONSOLE MESSAGE: line 159:       [Error] caughtE.toString() = 'MyError: Error thrown from main script body'
    183 CONSOLE MESSAGE: line 160:
    184 CONSOLE MESSAGE: line 169:    throw e;
     171CONSOLE MESSAGE: line 131:    [case 8] let e = new Error('Error thrown from main script body');
     172CONSOLE MESSAGE: line 134:    [case 8] e.name = 'MyError';
     173CONSOLE MESSAGE: line 138:       [Error] e = 'MyError: Error thrown from main script body'
     174CONSOLE MESSAGE: line 139:       [Error] e.name = 'MyError'
     175CONSOLE MESSAGE: line 140:       [Error] e.message = 'Error thrown from main script body'
     176CONSOLE MESSAGE: line 141:       [Error] e.toString() = 'MyError: Error thrown from main script body'
     177CONSOLE MESSAGE: line 142:
     178CONSOLE MESSAGE: line 151:    [case 8] let caughtE; try { throw e } catch(err) { caughtE = err }
     179CONSOLE MESSAGE: line 154:       [Error] caughtE = 'MyError: Error thrown from main script body'
     180CONSOLE MESSAGE: line 155:       [Error] caughtE.name = 'MyError'
     181CONSOLE MESSAGE: line 156:       [Error] caughtE.message = 'Error thrown from main script body'
     182CONSOLE MESSAGE: line 157:       [Error] caughtE.toString() = 'MyError: Error thrown from main script body'
     183CONSOLE MESSAGE: line 158:
     184CONSOLE MESSAGE: line 167:    throw e;
    185185CONSOLE MESSAGE: line 47:    [case 8] in window.onerror: err = MyError: Error thrown from main script body
    186186CONSOLE MESSAGE: line 48:    [case 8] in window.onerror: err.name = undefined
     
    191191CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    192192CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    193 CONSOLE MESSAGE: line 170: MyError: Error thrown from main script body
     193CONSOLE MESSAGE: line 168: MyError: Error thrown from main script body
    194194CONSOLE MESSAGE: line 42:
    195195CONSOLE MESSAGE: line 43: Test [case 9]
    196 CONSOLE MESSAGE: line 133:    [case 9] let e = new EvalError('Error thrown from main script body');
    197 CONSOLE MESSAGE: line 136:    [case 9] e.name = 'MyEvalError';
    198 CONSOLE MESSAGE: line 140:       [EvalError] e = 'MyEvalError: Error thrown from main script body'
    199 CONSOLE MESSAGE: line 141:       [EvalError] e.name = 'MyEvalError'
    200 CONSOLE MESSAGE: line 142:       [EvalError] e.message = 'Error thrown from main script body'
    201 CONSOLE MESSAGE: line 143:       [EvalError] e.toString() = 'MyEvalError: Error thrown from main script body'
    202 CONSOLE MESSAGE: line 144:
    203 CONSOLE MESSAGE: line 153:    [case 9] let caughtE; try { throw e } catch(err) { caughtE = err }
    204 CONSOLE MESSAGE: line 156:       [EvalError] caughtE = 'MyEvalError: Error thrown from main script body'
    205 CONSOLE MESSAGE: line 157:       [EvalError] caughtE.name = 'MyEvalError'
    206 CONSOLE MESSAGE: line 158:       [EvalError] caughtE.message = 'Error thrown from main script body'
    207 CONSOLE MESSAGE: line 159:       [EvalError] caughtE.toString() = 'MyEvalError: Error thrown from main script body'
    208 CONSOLE MESSAGE: line 160:
    209 CONSOLE MESSAGE: line 169:    throw e;
     196CONSOLE MESSAGE: line 131:    [case 9] let e = new EvalError('Error thrown from main script body');
     197CONSOLE MESSAGE: line 134:    [case 9] e.name = 'MyEvalError';
     198CONSOLE MESSAGE: line 138:       [EvalError] e = 'MyEvalError: Error thrown from main script body'
     199CONSOLE MESSAGE: line 139:       [EvalError] e.name = 'MyEvalError'
     200CONSOLE MESSAGE: line 140:       [EvalError] e.message = 'Error thrown from main script body'
     201CONSOLE MESSAGE: line 141:       [EvalError] e.toString() = 'MyEvalError: Error thrown from main script body'
     202CONSOLE MESSAGE: line 142:
     203CONSOLE MESSAGE: line 151:    [case 9] let caughtE; try { throw e } catch(err) { caughtE = err }
     204CONSOLE MESSAGE: line 154:       [EvalError] caughtE = 'MyEvalError: Error thrown from main script body'
     205CONSOLE MESSAGE: line 155:       [EvalError] caughtE.name = 'MyEvalError'
     206CONSOLE MESSAGE: line 156:       [EvalError] caughtE.message = 'Error thrown from main script body'
     207CONSOLE MESSAGE: line 157:       [EvalError] caughtE.toString() = 'MyEvalError: Error thrown from main script body'
     208CONSOLE MESSAGE: line 158:
     209CONSOLE MESSAGE: line 167:    throw e;
    210210CONSOLE MESSAGE: line 47:    [case 9] in window.onerror: err = MyEvalError: Error thrown from main script body
    211211CONSOLE MESSAGE: line 48:    [case 9] in window.onerror: err.name = undefined
     
    216216CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    217217CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    218 CONSOLE MESSAGE: line 170: MyEvalError: Error thrown from main script body
     218CONSOLE MESSAGE: line 168: MyEvalError: Error thrown from main script body
    219219CONSOLE MESSAGE: line 42:
    220220CONSOLE MESSAGE: line 43: Test [case 10]
    221 CONSOLE MESSAGE: line 133:    [case 10] let e = new RangeError('Error thrown from main script body');
    222 CONSOLE MESSAGE: line 136:    [case 10] e.name = 'MyRangeError';
    223 CONSOLE MESSAGE: line 140:       [RangeError] e = 'MyRangeError: Error thrown from main script body'
    224 CONSOLE MESSAGE: line 141:       [RangeError] e.name = 'MyRangeError'
    225 CONSOLE MESSAGE: line 142:       [RangeError] e.message = 'Error thrown from main script body'
    226 CONSOLE MESSAGE: line 143:       [RangeError] e.toString() = 'MyRangeError: Error thrown from main script body'
    227 CONSOLE MESSAGE: line 144:
    228 CONSOLE MESSAGE: line 153:    [case 10] let caughtE; try { throw e } catch(err) { caughtE = err }
    229 CONSOLE MESSAGE: line 156:       [RangeError] caughtE = 'MyRangeError: Error thrown from main script body'
    230 CONSOLE MESSAGE: line 157:       [RangeError] caughtE.name = 'MyRangeError'
    231 CONSOLE MESSAGE: line 158:       [RangeError] caughtE.message = 'Error thrown from main script body'
    232 CONSOLE MESSAGE: line 159:       [RangeError] caughtE.toString() = 'MyRangeError: Error thrown from main script body'
    233 CONSOLE MESSAGE: line 160:
    234 CONSOLE MESSAGE: line 169:    throw e;
     221CONSOLE MESSAGE: line 131:    [case 10] let e = new RangeError('Error thrown from main script body');
     222CONSOLE MESSAGE: line 134:    [case 10] e.name = 'MyRangeError';
     223CONSOLE MESSAGE: line 138:       [RangeError] e = 'MyRangeError: Error thrown from main script body'
     224CONSOLE MESSAGE: line 139:       [RangeError] e.name = 'MyRangeError'
     225CONSOLE MESSAGE: line 140:       [RangeError] e.message = 'Error thrown from main script body'
     226CONSOLE MESSAGE: line 141:       [RangeError] e.toString() = 'MyRangeError: Error thrown from main script body'
     227CONSOLE MESSAGE: line 142:
     228CONSOLE MESSAGE: line 151:    [case 10] let caughtE; try { throw e } catch(err) { caughtE = err }
     229CONSOLE MESSAGE: line 154:       [RangeError] caughtE = 'MyRangeError: Error thrown from main script body'
     230CONSOLE MESSAGE: line 155:       [RangeError] caughtE.name = 'MyRangeError'
     231CONSOLE MESSAGE: line 156:       [RangeError] caughtE.message = 'Error thrown from main script body'
     232CONSOLE MESSAGE: line 157:       [RangeError] caughtE.toString() = 'MyRangeError: Error thrown from main script body'
     233CONSOLE MESSAGE: line 158:
     234CONSOLE MESSAGE: line 167:    throw e;
    235235CONSOLE MESSAGE: line 47:    [case 10] in window.onerror: err = MyRangeError: Error thrown from main script body
    236236CONSOLE MESSAGE: line 48:    [case 10] in window.onerror: err.name = undefined
     
    241241CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    242242CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    243 CONSOLE MESSAGE: line 170: MyRangeError: Error thrown from main script body
     243CONSOLE MESSAGE: line 168: MyRangeError: Error thrown from main script body
    244244CONSOLE MESSAGE: line 42:
    245245CONSOLE MESSAGE: line 43: Test [case 11]
    246 CONSOLE MESSAGE: line 133:    [case 11] let e = new ReferenceError('Error thrown from main script body');
    247 CONSOLE MESSAGE: line 136:    [case 11] e.name = 'MyReferenceError';
    248 CONSOLE MESSAGE: line 140:       [ReferenceError] e = 'MyReferenceError: Error thrown from main script body'
    249 CONSOLE MESSAGE: line 141:       [ReferenceError] e.name = 'MyReferenceError'
    250 CONSOLE MESSAGE: line 142:       [ReferenceError] e.message = 'Error thrown from main script body'
    251 CONSOLE MESSAGE: line 143:       [ReferenceError] e.toString() = 'MyReferenceError: Error thrown from main script body'
    252 CONSOLE MESSAGE: line 144:
    253 CONSOLE MESSAGE: line 153:    [case 11] let caughtE; try { throw e } catch(err) { caughtE = err }
    254 CONSOLE MESSAGE: line 156:       [ReferenceError] caughtE = 'MyReferenceError: Error thrown from main script body'
    255 CONSOLE MESSAGE: line 157:       [ReferenceError] caughtE.name = 'MyReferenceError'
    256 CONSOLE MESSAGE: line 158:       [ReferenceError] caughtE.message = 'Error thrown from main script body'
    257 CONSOLE MESSAGE: line 159:       [ReferenceError] caughtE.toString() = 'MyReferenceError: Error thrown from main script body'
    258 CONSOLE MESSAGE: line 160:
    259 CONSOLE MESSAGE: line 169:    throw e;
     246CONSOLE MESSAGE: line 131:    [case 11] let e = new ReferenceError('Error thrown from main script body');
     247CONSOLE MESSAGE: line 134:    [case 11] e.name = 'MyReferenceError';
     248CONSOLE MESSAGE: line 138:       [ReferenceError] e = 'MyReferenceError: Error thrown from main script body'
     249CONSOLE MESSAGE: line 139:       [ReferenceError] e.name = 'MyReferenceError'
     250CONSOLE MESSAGE: line 140:       [ReferenceError] e.message = 'Error thrown from main script body'
     251CONSOLE MESSAGE: line 141:       [ReferenceError] e.toString() = 'MyReferenceError: Error thrown from main script body'
     252CONSOLE MESSAGE: line 142:
     253CONSOLE MESSAGE: line 151:    [case 11] let caughtE; try { throw e } catch(err) { caughtE = err }
     254CONSOLE MESSAGE: line 154:       [ReferenceError] caughtE = 'MyReferenceError: Error thrown from main script body'
     255CONSOLE MESSAGE: line 155:       [ReferenceError] caughtE.name = 'MyReferenceError'
     256CONSOLE MESSAGE: line 156:       [ReferenceError] caughtE.message = 'Error thrown from main script body'
     257CONSOLE MESSAGE: line 157:       [ReferenceError] caughtE.toString() = 'MyReferenceError: Error thrown from main script body'
     258CONSOLE MESSAGE: line 158:
     259CONSOLE MESSAGE: line 167:    throw e;
    260260CONSOLE MESSAGE: line 47:    [case 11] in window.onerror: err = MyReferenceError: Error thrown from main script body
    261261CONSOLE MESSAGE: line 48:    [case 11] in window.onerror: err.name = undefined
     
    266266CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    267267CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    268 CONSOLE MESSAGE: line 170: MyReferenceError: Error thrown from main script body
     268CONSOLE MESSAGE: line 168: MyReferenceError: Error thrown from main script body
    269269CONSOLE MESSAGE: line 42:
    270270CONSOLE MESSAGE: line 43: Test [case 12]
    271 CONSOLE MESSAGE: line 133:    [case 12] let e = new SyntaxError('Error thrown from main script body');
    272 CONSOLE MESSAGE: line 136:    [case 12] e.name = 'MySyntaxError';
    273 CONSOLE MESSAGE: line 140:       [SyntaxError] e = 'MySyntaxError: Error thrown from main script body'
    274 CONSOLE MESSAGE: line 141:       [SyntaxError] e.name = 'MySyntaxError'
    275 CONSOLE MESSAGE: line 142:       [SyntaxError] e.message = 'Error thrown from main script body'
    276 CONSOLE MESSAGE: line 143:       [SyntaxError] e.toString() = 'MySyntaxError: Error thrown from main script body'
    277 CONSOLE MESSAGE: line 144:
    278 CONSOLE MESSAGE: line 153:    [case 12] let caughtE; try { throw e } catch(err) { caughtE = err }
    279 CONSOLE MESSAGE: line 156:       [SyntaxError] caughtE = 'MySyntaxError: Error thrown from main script body'
    280 CONSOLE MESSAGE: line 157:       [SyntaxError] caughtE.name = 'MySyntaxError'
    281 CONSOLE MESSAGE: line 158:       [SyntaxError] caughtE.message = 'Error thrown from main script body'
    282 CONSOLE MESSAGE: line 159:       [SyntaxError] caughtE.toString() = 'MySyntaxError: Error thrown from main script body'
    283 CONSOLE MESSAGE: line 160:
    284 CONSOLE MESSAGE: line 169:    throw e;
     271CONSOLE MESSAGE: line 131:    [case 12] let e = new SyntaxError('Error thrown from main script body');
     272CONSOLE MESSAGE: line 134:    [case 12] e.name = 'MySyntaxError';
     273CONSOLE MESSAGE: line 138:       [SyntaxError] e = 'MySyntaxError: Error thrown from main script body'
     274CONSOLE MESSAGE: line 139:       [SyntaxError] e.name = 'MySyntaxError'
     275CONSOLE MESSAGE: line 140:       [SyntaxError] e.message = 'Error thrown from main script body'
     276CONSOLE MESSAGE: line 141:       [SyntaxError] e.toString() = 'MySyntaxError: Error thrown from main script body'
     277CONSOLE MESSAGE: line 142:
     278CONSOLE MESSAGE: line 151:    [case 12] let caughtE; try { throw e } catch(err) { caughtE = err }
     279CONSOLE MESSAGE: line 154:       [SyntaxError] caughtE = 'MySyntaxError: Error thrown from main script body'
     280CONSOLE MESSAGE: line 155:       [SyntaxError] caughtE.name = 'MySyntaxError'
     281CONSOLE MESSAGE: line 156:       [SyntaxError] caughtE.message = 'Error thrown from main script body'
     282CONSOLE MESSAGE: line 157:       [SyntaxError] caughtE.toString() = 'MySyntaxError: Error thrown from main script body'
     283CONSOLE MESSAGE: line 158:
     284CONSOLE MESSAGE: line 167:    throw e;
    285285CONSOLE MESSAGE: line 47:    [case 12] in window.onerror: err = MySyntaxError: Error thrown from main script body
    286286CONSOLE MESSAGE: line 48:    [case 12] in window.onerror: err.name = undefined
     
    291291CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    292292CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    293 CONSOLE MESSAGE: line 170: MySyntaxError: Error thrown from main script body
     293CONSOLE MESSAGE: line 168: MySyntaxError: Error thrown from main script body
    294294CONSOLE MESSAGE: line 42:
    295295CONSOLE MESSAGE: line 43: Test [case 13]
    296 CONSOLE MESSAGE: line 133:    [case 13] let e = new TypeError('Error thrown from main script body');
    297 CONSOLE MESSAGE: line 136:    [case 13] e.name = 'MyTypeError';
    298 CONSOLE MESSAGE: line 140:       [TypeError] e = 'MyTypeError: Error thrown from main script body'
    299 CONSOLE MESSAGE: line 141:       [TypeError] e.name = 'MyTypeError'
    300 CONSOLE MESSAGE: line 142:       [TypeError] e.message = 'Error thrown from main script body'
    301 CONSOLE MESSAGE: line 143:       [TypeError] e.toString() = 'MyTypeError: Error thrown from main script body'
    302 CONSOLE MESSAGE: line 144:
    303 CONSOLE MESSAGE: line 153:    [case 13] let caughtE; try { throw e } catch(err) { caughtE = err }
    304 CONSOLE MESSAGE: line 156:       [TypeError] caughtE = 'MyTypeError: Error thrown from main script body'
    305 CONSOLE MESSAGE: line 157:       [TypeError] caughtE.name = 'MyTypeError'
    306 CONSOLE MESSAGE: line 158:       [TypeError] caughtE.message = 'Error thrown from main script body'
    307 CONSOLE MESSAGE: line 159:       [TypeError] caughtE.toString() = 'MyTypeError: Error thrown from main script body'
    308 CONSOLE MESSAGE: line 160:
    309 CONSOLE MESSAGE: line 169:    throw e;
     296CONSOLE MESSAGE: line 131:    [case 13] let e = new TypeError('Error thrown from main script body');
     297CONSOLE MESSAGE: line 134:    [case 13] e.name = 'MyTypeError';
     298CONSOLE MESSAGE: line 138:       [TypeError] e = 'MyTypeError: Error thrown from main script body'
     299CONSOLE MESSAGE: line 139:       [TypeError] e.name = 'MyTypeError'
     300CONSOLE MESSAGE: line 140:       [TypeError] e.message = 'Error thrown from main script body'
     301CONSOLE MESSAGE: line 141:       [TypeError] e.toString() = 'MyTypeError: Error thrown from main script body'
     302CONSOLE MESSAGE: line 142:
     303CONSOLE MESSAGE: line 151:    [case 13] let caughtE; try { throw e } catch(err) { caughtE = err }
     304CONSOLE MESSAGE: line 154:       [TypeError] caughtE = 'MyTypeError: Error thrown from main script body'
     305CONSOLE MESSAGE: line 155:       [TypeError] caughtE.name = 'MyTypeError'
     306CONSOLE MESSAGE: line 156:       [TypeError] caughtE.message = 'Error thrown from main script body'
     307CONSOLE MESSAGE: line 157:       [TypeError] caughtE.toString() = 'MyTypeError: Error thrown from main script body'
     308CONSOLE MESSAGE: line 158:
     309CONSOLE MESSAGE: line 167:    throw e;
    310310CONSOLE MESSAGE: line 47:    [case 13] in window.onerror: err = MyTypeError: Error thrown from main script body
    311311CONSOLE MESSAGE: line 48:    [case 13] in window.onerror: err.name = undefined
     
    316316CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    317317CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    318 CONSOLE MESSAGE: line 170: MyTypeError: Error thrown from main script body
     318CONSOLE MESSAGE: line 168: MyTypeError: Error thrown from main script body
    319319CONSOLE MESSAGE: line 42:
    320320CONSOLE MESSAGE: line 43: Test [case 14]
    321 CONSOLE MESSAGE: line 133:    [case 14] let e = new URIError('Error thrown from main script body');
    322 CONSOLE MESSAGE: line 136:    [case 14] e.name = 'MyURIError';
    323 CONSOLE MESSAGE: line 140:       [URIError] e = 'MyURIError: Error thrown from main script body'
    324 CONSOLE MESSAGE: line 141:       [URIError] e.name = 'MyURIError'
    325 CONSOLE MESSAGE: line 142:       [URIError] e.message = 'Error thrown from main script body'
    326 CONSOLE MESSAGE: line 143:       [URIError] e.toString() = 'MyURIError: Error thrown from main script body'
    327 CONSOLE MESSAGE: line 144:
    328 CONSOLE MESSAGE: line 153:    [case 14] let caughtE; try { throw e } catch(err) { caughtE = err }
    329 CONSOLE MESSAGE: line 156:       [URIError] caughtE = 'MyURIError: Error thrown from main script body'
    330 CONSOLE MESSAGE: line 157:       [URIError] caughtE.name = 'MyURIError'
    331 CONSOLE MESSAGE: line 158:       [URIError] caughtE.message = 'Error thrown from main script body'
    332 CONSOLE MESSAGE: line 159:       [URIError] caughtE.toString() = 'MyURIError: Error thrown from main script body'
    333 CONSOLE MESSAGE: line 160:
    334 CONSOLE MESSAGE: line 169:    throw e;
     321CONSOLE MESSAGE: line 131:    [case 14] let e = new URIError('Error thrown from main script body');
     322CONSOLE MESSAGE: line 134:    [case 14] e.name = 'MyURIError';
     323CONSOLE MESSAGE: line 138:       [URIError] e = 'MyURIError: Error thrown from main script body'
     324CONSOLE MESSAGE: line 139:       [URIError] e.name = 'MyURIError'
     325CONSOLE MESSAGE: line 140:       [URIError] e.message = 'Error thrown from main script body'
     326CONSOLE MESSAGE: line 141:       [URIError] e.toString() = 'MyURIError: Error thrown from main script body'
     327CONSOLE MESSAGE: line 142:
     328CONSOLE MESSAGE: line 151:    [case 14] let caughtE; try { throw e } catch(err) { caughtE = err }
     329CONSOLE MESSAGE: line 154:       [URIError] caughtE = 'MyURIError: Error thrown from main script body'
     330CONSOLE MESSAGE: line 155:       [URIError] caughtE.name = 'MyURIError'
     331CONSOLE MESSAGE: line 156:       [URIError] caughtE.message = 'Error thrown from main script body'
     332CONSOLE MESSAGE: line 157:       [URIError] caughtE.toString() = 'MyURIError: Error thrown from main script body'
     333CONSOLE MESSAGE: line 158:
     334CONSOLE MESSAGE: line 167:    throw e;
    335335CONSOLE MESSAGE: line 47:    [case 14] in window.onerror: err = MyURIError: Error thrown from main script body
    336336CONSOLE MESSAGE: line 48:    [case 14] in window.onerror: err.name = undefined
     
    341341CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    342342CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    343 CONSOLE MESSAGE: line 170: MyURIError: Error thrown from main script body
     343CONSOLE MESSAGE: line 168: MyURIError: Error thrown from main script body
    344344CONSOLE MESSAGE: line 42:
    345345CONSOLE MESSAGE: line 43: Test [case 15]
    346 CONSOLE MESSAGE: line 133:    [case 15] let e = new Error('Error thrown from main script body');
     346CONSOLE MESSAGE: line 131:    [case 15] let e = new Error('Error thrown from main script body');
    347347CONSOLE MESSAGE: line 67:    [case 15] in 'name' getter[0]: error.message = 'Error thrown from main script body'
    348348CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    349 CONSOLE MESSAGE: line 140:       [Error] e = 'GetterErrorName: getter[0] Error thrown from main script body: Error thrown from main script body'
     349CONSOLE MESSAGE: line 138:       [Error] e = 'GetterErrorName: getter[0] Error thrown from main script body: Error thrown from main script body'
    350350CONSOLE MESSAGE: line 67:    [case 15] in 'name' getter[1]: error.message = 'Error thrown from main script body'
    351351CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    352 CONSOLE MESSAGE: line 141:       [Error] e.name = 'GetterErrorName: getter[1] Error thrown from main script body'
    353 CONSOLE MESSAGE: line 142:       [Error] e.message = 'Error thrown from main script body'
     352CONSOLE MESSAGE: line 139:       [Error] e.name = 'GetterErrorName: getter[1] Error thrown from main script body'
     353CONSOLE MESSAGE: line 140:       [Error] e.message = 'Error thrown from main script body'
    354354CONSOLE MESSAGE: line 67:    [case 15] in 'name' getter[2]: error.message = 'Error thrown from main script body'
    355355CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    356 CONSOLE MESSAGE: line 143:       [Error] e.toString() = 'GetterErrorName: getter[2] Error thrown from main script body: Error thrown from main script body'
    357 CONSOLE MESSAGE: line 144:
    358 CONSOLE MESSAGE: line 153:    [case 15] let caughtE; try { throw e } catch(err) { caughtE = err }
     356CONSOLE MESSAGE: line 141:       [Error] e.toString() = 'GetterErrorName: getter[2] Error thrown from main script body: Error thrown from main script body'
     357CONSOLE MESSAGE: line 142:
     358CONSOLE MESSAGE: line 151:    [case 15] let caughtE; try { throw e } catch(err) { caughtE = err }
    359359CONSOLE MESSAGE: line 67:    [case 15] in 'name' getter[3]: error.message = 'Error thrown from main script body'
    360360CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    361 CONSOLE MESSAGE: line 156:       [Error] caughtE = 'GetterErrorName: getter[3] Error thrown from main script body: Error thrown from main script body'
     361CONSOLE MESSAGE: line 154:       [Error] caughtE = 'GetterErrorName: getter[3] Error thrown from main script body: Error thrown from main script body'
    362362CONSOLE MESSAGE: line 67:    [case 15] in 'name' getter[4]: error.message = 'Error thrown from main script body'
    363363CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    364 CONSOLE MESSAGE: line 157:       [Error] caughtE.name = 'GetterErrorName: getter[4] Error thrown from main script body'
    365 CONSOLE MESSAGE: line 158:       [Error] caughtE.message = 'Error thrown from main script body'
     364CONSOLE MESSAGE: line 155:       [Error] caughtE.name = 'GetterErrorName: getter[4] Error thrown from main script body'
     365CONSOLE MESSAGE: line 156:       [Error] caughtE.message = 'Error thrown from main script body'
    366366CONSOLE MESSAGE: line 67:    [case 15] in 'name' getter[5]: error.message = 'Error thrown from main script body'
    367367CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    368 CONSOLE MESSAGE: line 159:       [Error] caughtE.toString() = 'GetterErrorName: getter[5] Error thrown from main script body: Error thrown from main script body'
    369 CONSOLE MESSAGE: line 160:
    370 CONSOLE MESSAGE: line 169:    throw e;
     368CONSOLE MESSAGE: line 157:       [Error] caughtE.toString() = 'GetterErrorName: getter[5] Error thrown from main script body: Error thrown from main script body'
     369CONSOLE MESSAGE: line 158:
     370CONSOLE MESSAGE: line 167:    throw e;
    371371CONSOLE MESSAGE: line 47:    [case 15] in window.onerror: err = Error: Error thrown from main script body
    372372CONSOLE MESSAGE: line 48:    [case 15] in window.onerror: err.name = undefined
     
    377377CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    378378CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    379 CONSOLE MESSAGE: line 170: Error: Error thrown from main script body
     379CONSOLE MESSAGE: line 168: Error: Error thrown from main script body
    380380CONSOLE MESSAGE: line 42:
    381381CONSOLE MESSAGE: line 43: Test [case 16]
    382 CONSOLE MESSAGE: line 133:    [case 16] let e = new EvalError('Error thrown from main script body');
     382CONSOLE MESSAGE: line 131:    [case 16] let e = new EvalError('Error thrown from main script body');
    383383CONSOLE MESSAGE: line 67:    [case 16] in 'name' getter[0]: error.message = 'Error thrown from main script body'
    384384CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    385 CONSOLE MESSAGE: line 140:       [EvalError] e = 'GetterErrorName: getter[0] Error thrown from main script body: Error thrown from main script body'
     385CONSOLE MESSAGE: line 138:       [EvalError] e = 'GetterErrorName: getter[0] Error thrown from main script body: Error thrown from main script body'
    386386CONSOLE MESSAGE: line 67:    [case 16] in 'name' getter[1]: error.message = 'Error thrown from main script body'
    387387CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    388 CONSOLE MESSAGE: line 141:       [EvalError] e.name = 'GetterErrorName: getter[1] Error thrown from main script body'
    389 CONSOLE MESSAGE: line 142:       [EvalError] e.message = 'Error thrown from main script body'
     388CONSOLE MESSAGE: line 139:       [EvalError] e.name = 'GetterErrorName: getter[1] Error thrown from main script body'
     389CONSOLE MESSAGE: line 140:       [EvalError] e.message = 'Error thrown from main script body'
    390390CONSOLE MESSAGE: line 67:    [case 16] in 'name' getter[2]: error.message = 'Error thrown from main script body'
    391391CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    392 CONSOLE MESSAGE: line 143:       [EvalError] e.toString() = 'GetterErrorName: getter[2] Error thrown from main script body: Error thrown from main script body'
    393 CONSOLE MESSAGE: line 144:
    394 CONSOLE MESSAGE: line 153:    [case 16] let caughtE; try { throw e } catch(err) { caughtE = err }
     392CONSOLE MESSAGE: line 141:       [EvalError] e.toString() = 'GetterErrorName: getter[2] Error thrown from main script body: Error thrown from main script body'
     393CONSOLE MESSAGE: line 142:
     394CONSOLE MESSAGE: line 151:    [case 16] let caughtE; try { throw e } catch(err) { caughtE = err }
    395395CONSOLE MESSAGE: line 67:    [case 16] in 'name' getter[3]: error.message = 'Error thrown from main script body'
    396396CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    397 CONSOLE MESSAGE: line 156:       [EvalError] caughtE = 'GetterErrorName: getter[3] Error thrown from main script body: Error thrown from main script body'
     397CONSOLE MESSAGE: line 154:       [EvalError] caughtE = 'GetterErrorName: getter[3] Error thrown from main script body: Error thrown from main script body'
    398398CONSOLE MESSAGE: line 67:    [case 16] in 'name' getter[4]: error.message = 'Error thrown from main script body'
    399399CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    400 CONSOLE MESSAGE: line 157:       [EvalError] caughtE.name = 'GetterErrorName: getter[4] Error thrown from main script body'
    401 CONSOLE MESSAGE: line 158:       [EvalError] caughtE.message = 'Error thrown from main script body'
     400CONSOLE MESSAGE: line 155:       [EvalError] caughtE.name = 'GetterErrorName: getter[4] Error thrown from main script body'
     401CONSOLE MESSAGE: line 156:       [EvalError] caughtE.message = 'Error thrown from main script body'
    402402CONSOLE MESSAGE: line 67:    [case 16] in 'name' getter[5]: error.message = 'Error thrown from main script body'
    403403CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    404 CONSOLE MESSAGE: line 159:       [EvalError] caughtE.toString() = 'GetterErrorName: getter[5] Error thrown from main script body: Error thrown from main script body'
    405 CONSOLE MESSAGE: line 160:
    406 CONSOLE MESSAGE: line 169:    throw e;
     404CONSOLE MESSAGE: line 157:       [EvalError] caughtE.toString() = 'GetterErrorName: getter[5] Error thrown from main script body: Error thrown from main script body'
     405CONSOLE MESSAGE: line 158:
     406CONSOLE MESSAGE: line 167:    throw e;
    407407CONSOLE MESSAGE: line 47:    [case 16] in window.onerror: err = Error: Error thrown from main script body
    408408CONSOLE MESSAGE: line 48:    [case 16] in window.onerror: err.name = undefined
     
    413413CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    414414CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    415 CONSOLE MESSAGE: line 170: Error: Error thrown from main script body
     415CONSOLE MESSAGE: line 168: Error: Error thrown from main script body
    416416CONSOLE MESSAGE: line 42:
    417417CONSOLE MESSAGE: line 43: Test [case 17]
    418 CONSOLE MESSAGE: line 133:    [case 17] let e = new RangeError('Error thrown from main script body');
     418CONSOLE MESSAGE: line 131:    [case 17] let e = new RangeError('Error thrown from main script body');
    419419CONSOLE MESSAGE: line 67:    [case 17] in 'name' getter[0]: error.message = 'Error thrown from main script body'
    420420CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    421 CONSOLE MESSAGE: line 140:       [RangeError] e = 'GetterErrorName: getter[0] Error thrown from main script body: Error thrown from main script body'
     421CONSOLE MESSAGE: line 138:       [RangeError] e = 'GetterErrorName: getter[0] Error thrown from main script body: Error thrown from main script body'
    422422CONSOLE MESSAGE: line 67:    [case 17] in 'name' getter[1]: error.message = 'Error thrown from main script body'
    423423CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    424 CONSOLE MESSAGE: line 141:       [RangeError] e.name = 'GetterErrorName: getter[1] Error thrown from main script body'
    425 CONSOLE MESSAGE: line 142:       [RangeError] e.message = 'Error thrown from main script body'
     424CONSOLE MESSAGE: line 139:       [RangeError] e.name = 'GetterErrorName: getter[1] Error thrown from main script body'
     425CONSOLE MESSAGE: line 140:       [RangeError] e.message = 'Error thrown from main script body'
    426426CONSOLE MESSAGE: line 67:    [case 17] in 'name' getter[2]: error.message = 'Error thrown from main script body'
    427427CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    428 CONSOLE MESSAGE: line 143:       [RangeError] e.toString() = 'GetterErrorName: getter[2] Error thrown from main script body: Error thrown from main script body'
    429 CONSOLE MESSAGE: line 144:
    430 CONSOLE MESSAGE: line 153:    [case 17] let caughtE; try { throw e } catch(err) { caughtE = err }
     428CONSOLE MESSAGE: line 141:       [RangeError] e.toString() = 'GetterErrorName: getter[2] Error thrown from main script body: Error thrown from main script body'
     429CONSOLE MESSAGE: line 142:
     430CONSOLE MESSAGE: line 151:    [case 17] let caughtE; try { throw e } catch(err) { caughtE = err }
    431431CONSOLE MESSAGE: line 67:    [case 17] in 'name' getter[3]: error.message = 'Error thrown from main script body'
    432432CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    433 CONSOLE MESSAGE: line 156:       [RangeError] caughtE = 'GetterErrorName: getter[3] Error thrown from main script body: Error thrown from main script body'
     433CONSOLE MESSAGE: line 154:       [RangeError] caughtE = 'GetterErrorName: getter[3] Error thrown from main script body: Error thrown from main script body'
    434434CONSOLE MESSAGE: line 67:    [case 17] in 'name' getter[4]: error.message = 'Error thrown from main script body'
    435435CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    436 CONSOLE MESSAGE: line 157:       [RangeError] caughtE.name = 'GetterErrorName: getter[4] Error thrown from main script body'
    437 CONSOLE MESSAGE: line 158:       [RangeError] caughtE.message = 'Error thrown from main script body'
     436CONSOLE MESSAGE: line 155:       [RangeError] caughtE.name = 'GetterErrorName: getter[4] Error thrown from main script body'
     437CONSOLE MESSAGE: line 156:       [RangeError] caughtE.message = 'Error thrown from main script body'
    438438CONSOLE MESSAGE: line 67:    [case 17] in 'name' getter[5]: error.message = 'Error thrown from main script body'
    439439CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    440 CONSOLE MESSAGE: line 159:       [RangeError] caughtE.toString() = 'GetterErrorName: getter[5] Error thrown from main script body: Error thrown from main script body'
    441 CONSOLE MESSAGE: line 160:
    442 CONSOLE MESSAGE: line 169:    throw e;
     440CONSOLE MESSAGE: line 157:       [RangeError] caughtE.toString() = 'GetterErrorName: getter[5] Error thrown from main script body: Error thrown from main script body'
     441CONSOLE MESSAGE: line 158:
     442CONSOLE MESSAGE: line 167:    throw e;
    443443CONSOLE MESSAGE: line 47:    [case 17] in window.onerror: err = Error: Error thrown from main script body
    444444CONSOLE MESSAGE: line 48:    [case 17] in window.onerror: err.name = undefined
     
    449449CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    450450CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    451 CONSOLE MESSAGE: line 170: Error: Error thrown from main script body
     451CONSOLE MESSAGE: line 168: Error: Error thrown from main script body
    452452CONSOLE MESSAGE: line 42:
    453453CONSOLE MESSAGE: line 43: Test [case 18]
    454 CONSOLE MESSAGE: line 133:    [case 18] let e = new ReferenceError('Error thrown from main script body');
     454CONSOLE MESSAGE: line 131:    [case 18] let e = new ReferenceError('Error thrown from main script body');
    455455CONSOLE MESSAGE: line 67:    [case 18] in 'name' getter[0]: error.message = 'Error thrown from main script body'
    456456CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    457 CONSOLE MESSAGE: line 140:       [ReferenceError] e = 'GetterErrorName: getter[0] Error thrown from main script body: Error thrown from main script body'
     457CONSOLE MESSAGE: line 138:       [ReferenceError] e = 'GetterErrorName: getter[0] Error thrown from main script body: Error thrown from main script body'
    458458CONSOLE MESSAGE: line 67:    [case 18] in 'name' getter[1]: error.message = 'Error thrown from main script body'
    459459CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    460 CONSOLE MESSAGE: line 141:       [ReferenceError] e.name = 'GetterErrorName: getter[1] Error thrown from main script body'
    461 CONSOLE MESSAGE: line 142:       [ReferenceError] e.message = 'Error thrown from main script body'
     460CONSOLE MESSAGE: line 139:       [ReferenceError] e.name = 'GetterErrorName: getter[1] Error thrown from main script body'
     461CONSOLE MESSAGE: line 140:       [ReferenceError] e.message = 'Error thrown from main script body'
    462462CONSOLE MESSAGE: line 67:    [case 18] in 'name' getter[2]: error.message = 'Error thrown from main script body'
    463463CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    464 CONSOLE MESSAGE: line 143:       [ReferenceError] e.toString() = 'GetterErrorName: getter[2] Error thrown from main script body: Error thrown from main script body'
    465 CONSOLE MESSAGE: line 144:
    466 CONSOLE MESSAGE: line 153:    [case 18] let caughtE; try { throw e } catch(err) { caughtE = err }
     464CONSOLE MESSAGE: line 141:       [ReferenceError] e.toString() = 'GetterErrorName: getter[2] Error thrown from main script body: Error thrown from main script body'
     465CONSOLE MESSAGE: line 142:
     466CONSOLE MESSAGE: line 151:    [case 18] let caughtE; try { throw e } catch(err) { caughtE = err }
    467467CONSOLE MESSAGE: line 67:    [case 18] in 'name' getter[3]: error.message = 'Error thrown from main script body'
    468468CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    469 CONSOLE MESSAGE: line 156:       [ReferenceError] caughtE = 'GetterErrorName: getter[3] Error thrown from main script body: Error thrown from main script body'
     469CONSOLE MESSAGE: line 154:       [ReferenceError] caughtE = 'GetterErrorName: getter[3] Error thrown from main script body: Error thrown from main script body'
    470470CONSOLE MESSAGE: line 67:    [case 18] in 'name' getter[4]: error.message = 'Error thrown from main script body'
    471471CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    472 CONSOLE MESSAGE: line 157:       [ReferenceError] caughtE.name = 'GetterErrorName: getter[4] Error thrown from main script body'
    473 CONSOLE MESSAGE: line 158:       [ReferenceError] caughtE.message = 'Error thrown from main script body'
     472CONSOLE MESSAGE: line 155:       [ReferenceError] caughtE.name = 'GetterErrorName: getter[4] Error thrown from main script body'
     473CONSOLE MESSAGE: line 156:       [ReferenceError] caughtE.message = 'Error thrown from main script body'
    474474CONSOLE MESSAGE: line 67:    [case 18] in 'name' getter[5]: error.message = 'Error thrown from main script body'
    475475CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    476 CONSOLE MESSAGE: line 159:       [ReferenceError] caughtE.toString() = 'GetterErrorName: getter[5] Error thrown from main script body: Error thrown from main script body'
    477 CONSOLE MESSAGE: line 160:
    478 CONSOLE MESSAGE: line 169:    throw e;
     476CONSOLE MESSAGE: line 157:       [ReferenceError] caughtE.toString() = 'GetterErrorName: getter[5] Error thrown from main script body: Error thrown from main script body'
     477CONSOLE MESSAGE: line 158:
     478CONSOLE MESSAGE: line 167:    throw e;
    479479CONSOLE MESSAGE: line 47:    [case 18] in window.onerror: err = Error: Error thrown from main script body
    480480CONSOLE MESSAGE: line 48:    [case 18] in window.onerror: err.name = undefined
     
    485485CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    486486CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    487 CONSOLE MESSAGE: line 170: Error: Error thrown from main script body
     487CONSOLE MESSAGE: line 168: Error: Error thrown from main script body
    488488CONSOLE MESSAGE: line 42:
    489489CONSOLE MESSAGE: line 43: Test [case 19]
    490 CONSOLE MESSAGE: line 133:    [case 19] let e = new SyntaxError('Error thrown from main script body');
     490CONSOLE MESSAGE: line 131:    [case 19] let e = new SyntaxError('Error thrown from main script body');
    491491CONSOLE MESSAGE: line 67:    [case 19] in 'name' getter[0]: error.message = 'Error thrown from main script body'
    492492CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    493 CONSOLE MESSAGE: line 140:       [SyntaxError] e = 'GetterErrorName: getter[0] Error thrown from main script body: Error thrown from main script body'
     493CONSOLE MESSAGE: line 138:       [SyntaxError] e = 'GetterErrorName: getter[0] Error thrown from main script body: Error thrown from main script body'
    494494CONSOLE MESSAGE: line 67:    [case 19] in 'name' getter[1]: error.message = 'Error thrown from main script body'
    495495CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    496 CONSOLE MESSAGE: line 141:       [SyntaxError] e.name = 'GetterErrorName: getter[1] Error thrown from main script body'
    497 CONSOLE MESSAGE: line 142:       [SyntaxError] e.message = 'Error thrown from main script body'
     496CONSOLE MESSAGE: line 139:       [SyntaxError] e.name = 'GetterErrorName: getter[1] Error thrown from main script body'
     497CONSOLE MESSAGE: line 140:       [SyntaxError] e.message = 'Error thrown from main script body'
    498498CONSOLE MESSAGE: line 67:    [case 19] in 'name' getter[2]: error.message = 'Error thrown from main script body'
    499499CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    500 CONSOLE MESSAGE: line 143:       [SyntaxError] e.toString() = 'GetterErrorName: getter[2] Error thrown from main script body: Error thrown from main script body'
    501 CONSOLE MESSAGE: line 144:
    502 CONSOLE MESSAGE: line 153:    [case 19] let caughtE; try { throw e } catch(err) { caughtE = err }
     500CONSOLE MESSAGE: line 141:       [SyntaxError] e.toString() = 'GetterErrorName: getter[2] Error thrown from main script body: Error thrown from main script body'
     501CONSOLE MESSAGE: line 142:
     502CONSOLE MESSAGE: line 151:    [case 19] let caughtE; try { throw e } catch(err) { caughtE = err }
    503503CONSOLE MESSAGE: line 67:    [case 19] in 'name' getter[3]: error.message = 'Error thrown from main script body'
    504504CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    505 CONSOLE MESSAGE: line 156:       [SyntaxError] caughtE = 'GetterErrorName: getter[3] Error thrown from main script body: Error thrown from main script body'
     505CONSOLE MESSAGE: line 154:       [SyntaxError] caughtE = 'GetterErrorName: getter[3] Error thrown from main script body: Error thrown from main script body'
    506506CONSOLE MESSAGE: line 67:    [case 19] in 'name' getter[4]: error.message = 'Error thrown from main script body'
    507507CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    508 CONSOLE MESSAGE: line 157:       [SyntaxError] caughtE.name = 'GetterErrorName: getter[4] Error thrown from main script body'
    509 CONSOLE MESSAGE: line 158:       [SyntaxError] caughtE.message = 'Error thrown from main script body'
     508CONSOLE MESSAGE: line 155:       [SyntaxError] caughtE.name = 'GetterErrorName: getter[4] Error thrown from main script body'
     509CONSOLE MESSAGE: line 156:       [SyntaxError] caughtE.message = 'Error thrown from main script body'
    510510CONSOLE MESSAGE: line 67:    [case 19] in 'name' getter[5]: error.message = 'Error thrown from main script body'
    511511CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    512 CONSOLE MESSAGE: line 159:       [SyntaxError] caughtE.toString() = 'GetterErrorName: getter[5] Error thrown from main script body: Error thrown from main script body'
    513 CONSOLE MESSAGE: line 160:
    514 CONSOLE MESSAGE: line 169:    throw e;
     512CONSOLE MESSAGE: line 157:       [SyntaxError] caughtE.toString() = 'GetterErrorName: getter[5] Error thrown from main script body: Error thrown from main script body'
     513CONSOLE MESSAGE: line 158:
     514CONSOLE MESSAGE: line 167:    throw e;
    515515CONSOLE MESSAGE: line 47:    [case 19] in window.onerror: err = Error: Error thrown from main script body
    516516CONSOLE MESSAGE: line 48:    [case 19] in window.onerror: err.name = undefined
     
    521521CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    522522CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    523 CONSOLE MESSAGE: line 170: Error: Error thrown from main script body
     523CONSOLE MESSAGE: line 168: Error: Error thrown from main script body
    524524CONSOLE MESSAGE: line 42:
    525525CONSOLE MESSAGE: line 43: Test [case 20]
    526 CONSOLE MESSAGE: line 133:    [case 20] let e = new TypeError('Error thrown from main script body');
     526CONSOLE MESSAGE: line 131:    [case 20] let e = new TypeError('Error thrown from main script body');
    527527CONSOLE MESSAGE: line 67:    [case 20] in 'name' getter[0]: error.message = 'Error thrown from main script body'
    528528CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    529 CONSOLE MESSAGE: line 140:       [TypeError] e = 'GetterErrorName: getter[0] Error thrown from main script body: Error thrown from main script body'
     529CONSOLE MESSAGE: line 138:       [TypeError] e = 'GetterErrorName: getter[0] Error thrown from main script body: Error thrown from main script body'
    530530CONSOLE MESSAGE: line 67:    [case 20] in 'name' getter[1]: error.message = 'Error thrown from main script body'
    531531CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    532 CONSOLE MESSAGE: line 141:       [TypeError] e.name = 'GetterErrorName: getter[1] Error thrown from main script body'
    533 CONSOLE MESSAGE: line 142:       [TypeError] e.message = 'Error thrown from main script body'
     532CONSOLE MESSAGE: line 139:       [TypeError] e.name = 'GetterErrorName: getter[1] Error thrown from main script body'
     533CONSOLE MESSAGE: line 140:       [TypeError] e.message = 'Error thrown from main script body'
    534534CONSOLE MESSAGE: line 67:    [case 20] in 'name' getter[2]: error.message = 'Error thrown from main script body'
    535535CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    536 CONSOLE MESSAGE: line 143:       [TypeError] e.toString() = 'GetterErrorName: getter[2] Error thrown from main script body: Error thrown from main script body'
    537 CONSOLE MESSAGE: line 144:
    538 CONSOLE MESSAGE: line 153:    [case 20] let caughtE; try { throw e } catch(err) { caughtE = err }
     536CONSOLE MESSAGE: line 141:       [TypeError] e.toString() = 'GetterErrorName: getter[2] Error thrown from main script body: Error thrown from main script body'
     537CONSOLE MESSAGE: line 142:
     538CONSOLE MESSAGE: line 151:    [case 20] let caughtE; try { throw e } catch(err) { caughtE = err }
    539539CONSOLE MESSAGE: line 67:    [case 20] in 'name' getter[3]: error.message = 'Error thrown from main script body'
    540540CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    541 CONSOLE MESSAGE: line 156:       [TypeError] caughtE = 'GetterErrorName: getter[3] Error thrown from main script body: Error thrown from main script body'
     541CONSOLE MESSAGE: line 154:       [TypeError] caughtE = 'GetterErrorName: getter[3] Error thrown from main script body: Error thrown from main script body'
    542542CONSOLE MESSAGE: line 67:    [case 20] in 'name' getter[4]: error.message = 'Error thrown from main script body'
    543543CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    544 CONSOLE MESSAGE: line 157:       [TypeError] caughtE.name = 'GetterErrorName: getter[4] Error thrown from main script body'
    545 CONSOLE MESSAGE: line 158:       [TypeError] caughtE.message = 'Error thrown from main script body'
     544CONSOLE MESSAGE: line 155:       [TypeError] caughtE.name = 'GetterErrorName: getter[4] Error thrown from main script body'
     545CONSOLE MESSAGE: line 156:       [TypeError] caughtE.message = 'Error thrown from main script body'
    546546CONSOLE MESSAGE: line 67:    [case 20] in 'name' getter[5]: error.message = 'Error thrown from main script body'
    547547CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    548 CONSOLE MESSAGE: line 159:       [TypeError] caughtE.toString() = 'GetterErrorName: getter[5] Error thrown from main script body: Error thrown from main script body'
    549 CONSOLE MESSAGE: line 160:
    550 CONSOLE MESSAGE: line 169:    throw e;
     548CONSOLE MESSAGE: line 157:       [TypeError] caughtE.toString() = 'GetterErrorName: getter[5] Error thrown from main script body: Error thrown from main script body'
     549CONSOLE MESSAGE: line 158:
     550CONSOLE MESSAGE: line 167:    throw e;
    551551CONSOLE MESSAGE: line 47:    [case 20] in window.onerror: err = Error: Error thrown from main script body
    552552CONSOLE MESSAGE: line 48:    [case 20] in window.onerror: err.name = undefined
     
    557557CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    558558CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    559 CONSOLE MESSAGE: line 170: Error: Error thrown from main script body
     559CONSOLE MESSAGE: line 168: Error: Error thrown from main script body
    560560CONSOLE MESSAGE: line 42:
    561561CONSOLE MESSAGE: line 43: Test [case 21]
    562 CONSOLE MESSAGE: line 133:    [case 21] let e = new URIError('Error thrown from main script body');
     562CONSOLE MESSAGE: line 131:    [case 21] let e = new URIError('Error thrown from main script body');
    563563CONSOLE MESSAGE: line 67:    [case 21] in 'name' getter[0]: error.message = 'Error thrown from main script body'
    564564CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    565 CONSOLE MESSAGE: line 140:       [URIError] e = 'GetterErrorName: getter[0] Error thrown from main script body: Error thrown from main script body'
     565CONSOLE MESSAGE: line 138:       [URIError] e = 'GetterErrorName: getter[0] Error thrown from main script body: Error thrown from main script body'
    566566CONSOLE MESSAGE: line 67:    [case 21] in 'name' getter[1]: error.message = 'Error thrown from main script body'
    567567CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    568 CONSOLE MESSAGE: line 141:       [URIError] e.name = 'GetterErrorName: getter[1] Error thrown from main script body'
    569 CONSOLE MESSAGE: line 142:       [URIError] e.message = 'Error thrown from main script body'
     568CONSOLE MESSAGE: line 139:       [URIError] e.name = 'GetterErrorName: getter[1] Error thrown from main script body'
     569CONSOLE MESSAGE: line 140:       [URIError] e.message = 'Error thrown from main script body'
    570570CONSOLE MESSAGE: line 67:    [case 21] in 'name' getter[2]: error.message = 'Error thrown from main script body'
    571571CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    572 CONSOLE MESSAGE: line 143:       [URIError] e.toString() = 'GetterErrorName: getter[2] Error thrown from main script body: Error thrown from main script body'
    573 CONSOLE MESSAGE: line 144:
    574 CONSOLE MESSAGE: line 153:    [case 21] let caughtE; try { throw e } catch(err) { caughtE = err }
     572CONSOLE MESSAGE: line 141:       [URIError] e.toString() = 'GetterErrorName: getter[2] Error thrown from main script body: Error thrown from main script body'
     573CONSOLE MESSAGE: line 142:
     574CONSOLE MESSAGE: line 151:    [case 21] let caughtE; try { throw e } catch(err) { caughtE = err }
    575575CONSOLE MESSAGE: line 67:    [case 21] in 'name' getter[3]: error.message = 'Error thrown from main script body'
    576576CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    577 CONSOLE MESSAGE: line 156:       [URIError] caughtE = 'GetterErrorName: getter[3] Error thrown from main script body: Error thrown from main script body'
     577CONSOLE MESSAGE: line 154:       [URIError] caughtE = 'GetterErrorName: getter[3] Error thrown from main script body: Error thrown from main script body'
    578578CONSOLE MESSAGE: line 67:    [case 21] in 'name' getter[4]: error.message = 'Error thrown from main script body'
    579579CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    580 CONSOLE MESSAGE: line 157:       [URIError] caughtE.name = 'GetterErrorName: getter[4] Error thrown from main script body'
    581 CONSOLE MESSAGE: line 158:       [URIError] caughtE.message = 'Error thrown from main script body'
     580CONSOLE MESSAGE: line 155:       [URIError] caughtE.name = 'GetterErrorName: getter[4] Error thrown from main script body'
     581CONSOLE MESSAGE: line 156:       [URIError] caughtE.message = 'Error thrown from main script body'
    582582CONSOLE MESSAGE: line 67:    [case 21] in 'name' getter[5]: error.message = 'Error thrown from main script body'
    583583CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    584 CONSOLE MESSAGE: line 159:       [URIError] caughtE.toString() = 'GetterErrorName: getter[5] Error thrown from main script body: Error thrown from main script body'
    585 CONSOLE MESSAGE: line 160:
    586 CONSOLE MESSAGE: line 169:    throw e;
     584CONSOLE MESSAGE: line 157:       [URIError] caughtE.toString() = 'GetterErrorName: getter[5] Error thrown from main script body: Error thrown from main script body'
     585CONSOLE MESSAGE: line 158:
     586CONSOLE MESSAGE: line 167:    throw e;
    587587CONSOLE MESSAGE: line 47:    [case 21] in window.onerror: err = Error: Error thrown from main script body
    588588CONSOLE MESSAGE: line 48:    [case 21] in window.onerror: err.name = undefined
     
    593593CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    594594CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    595 CONSOLE MESSAGE: line 170: Error: Error thrown from main script body
     595CONSOLE MESSAGE: line 168: Error: Error thrown from main script body
    596596CONSOLE MESSAGE: line 42:
    597597CONSOLE MESSAGE: line 43: Test [case 22]
    598 CONSOLE MESSAGE: line 133:    [case 22] let e = new Error('Error thrown from main script body');
    599 CONSOLE MESSAGE: line 95:    [case 22] in 'toString' getter[0]: error.message = 'Error thrown from main script body'
    600 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    601 CONSOLE MESSAGE: line 140:       [Error] e = 'GetterErrorToString: getter[0] Error thrown from main script body'
    602 CONSOLE MESSAGE: line 141:       [Error] e.name = 'Error'
    603 CONSOLE MESSAGE: line 142:       [Error] e.message = 'Error thrown from main script body'
    604 CONSOLE MESSAGE: line 95:    [case 22] in 'toString' getter[1]: error.message = 'Error thrown from main script body'
    605 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    606 CONSOLE MESSAGE: line 143:       [Error] e.toString() = 'GetterErrorToString: getter[1] Error thrown from main script body'
    607 CONSOLE MESSAGE: line 144:
    608 CONSOLE MESSAGE: line 153:    [case 22] let caughtE; try { throw e } catch(err) { caughtE = err }
    609 CONSOLE MESSAGE: line 95:    [case 22] in 'toString' getter[2]: error.message = 'Error thrown from main script body'
    610 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    611 CONSOLE MESSAGE: line 156:       [Error] caughtE = 'GetterErrorToString: getter[2] Error thrown from main script body'
    612 CONSOLE MESSAGE: line 157:       [Error] caughtE.name = 'Error'
    613 CONSOLE MESSAGE: line 158:       [Error] caughtE.message = 'Error thrown from main script body'
    614 CONSOLE MESSAGE: line 95:    [case 22] in 'toString' getter[3]: error.message = 'Error thrown from main script body'
    615 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    616 CONSOLE MESSAGE: line 159:       [Error] caughtE.toString() = 'GetterErrorToString: getter[3] Error thrown from main script body'
    617 CONSOLE MESSAGE: line 160:
    618 CONSOLE MESSAGE: line 169:    throw e;
     598CONSOLE MESSAGE: line 131:    [case 22] let e = new Error('Error thrown from main script body');
     599CONSOLE MESSAGE: line 92:    [case 22] in 'toString' getter[0]: error.message = 'Error thrown from main script body'
     600CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     601CONSOLE MESSAGE: line 138:       [Error] e = 'GetterErrorToString: getter[0] Error thrown from main script body'
     602CONSOLE MESSAGE: line 139:       [Error] e.name = 'Error'
     603CONSOLE MESSAGE: line 140:       [Error] e.message = 'Error thrown from main script body'
     604CONSOLE MESSAGE: line 92:    [case 22] in 'toString' getter[1]: error.message = 'Error thrown from main script body'
     605CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     606CONSOLE MESSAGE: line 141:       [Error] e.toString() = 'GetterErrorToString: getter[1] Error thrown from main script body'
     607CONSOLE MESSAGE: line 142:
     608CONSOLE MESSAGE: line 151:    [case 22] let caughtE; try { throw e } catch(err) { caughtE = err }
     609CONSOLE MESSAGE: line 92:    [case 22] in 'toString' getter[2]: error.message = 'Error thrown from main script body'
     610CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     611CONSOLE MESSAGE: line 154:       [Error] caughtE = 'GetterErrorToString: getter[2] Error thrown from main script body'
     612CONSOLE MESSAGE: line 155:       [Error] caughtE.name = 'Error'
     613CONSOLE MESSAGE: line 156:       [Error] caughtE.message = 'Error thrown from main script body'
     614CONSOLE MESSAGE: line 92:    [case 22] in 'toString' getter[3]: error.message = 'Error thrown from main script body'
     615CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     616CONSOLE MESSAGE: line 157:       [Error] caughtE.toString() = 'GetterErrorToString: getter[3] Error thrown from main script body'
     617CONSOLE MESSAGE: line 158:
     618CONSOLE MESSAGE: line 167:    throw e;
    619619CONSOLE MESSAGE: line 47:    [case 22] in window.onerror: err = Error: Error thrown from main script body
    620620CONSOLE MESSAGE: line 48:    [case 22] in window.onerror: err.name = undefined
     
    625625CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    626626CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    627 CONSOLE MESSAGE: line 170: Error: Error thrown from main script body
     627CONSOLE MESSAGE: line 168: Error: Error thrown from main script body
    628628CONSOLE MESSAGE: line 42:
    629629CONSOLE MESSAGE: line 43: Test [case 23]
    630 CONSOLE MESSAGE: line 133:    [case 23] let e = new EvalError('Error thrown from main script body');
    631 CONSOLE MESSAGE: line 95:    [case 23] in 'toString' getter[0]: error.message = 'Error thrown from main script body'
    632 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    633 CONSOLE MESSAGE: line 140:       [EvalError] e = 'GetterErrorToString: getter[0] Error thrown from main script body'
    634 CONSOLE MESSAGE: line 141:       [EvalError] e.name = 'EvalError'
    635 CONSOLE MESSAGE: line 142:       [EvalError] e.message = 'Error thrown from main script body'
    636 CONSOLE MESSAGE: line 95:    [case 23] in 'toString' getter[1]: error.message = 'Error thrown from main script body'
    637 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    638 CONSOLE MESSAGE: line 143:       [EvalError] e.toString() = 'GetterErrorToString: getter[1] Error thrown from main script body'
    639 CONSOLE MESSAGE: line 144:
    640 CONSOLE MESSAGE: line 153:    [case 23] let caughtE; try { throw e } catch(err) { caughtE = err }
    641 CONSOLE MESSAGE: line 95:    [case 23] in 'toString' getter[2]: error.message = 'Error thrown from main script body'
    642 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    643 CONSOLE MESSAGE: line 156:       [EvalError] caughtE = 'GetterErrorToString: getter[2] Error thrown from main script body'
    644 CONSOLE MESSAGE: line 157:       [EvalError] caughtE.name = 'EvalError'
    645 CONSOLE MESSAGE: line 158:       [EvalError] caughtE.message = 'Error thrown from main script body'
    646 CONSOLE MESSAGE: line 95:    [case 23] in 'toString' getter[3]: error.message = 'Error thrown from main script body'
    647 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    648 CONSOLE MESSAGE: line 159:       [EvalError] caughtE.toString() = 'GetterErrorToString: getter[3] Error thrown from main script body'
    649 CONSOLE MESSAGE: line 160:
    650 CONSOLE MESSAGE: line 169:    throw e;
     630CONSOLE MESSAGE: line 131:    [case 23] let e = new EvalError('Error thrown from main script body');
     631CONSOLE MESSAGE: line 92:    [case 23] in 'toString' getter[0]: error.message = 'Error thrown from main script body'
     632CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     633CONSOLE MESSAGE: line 138:       [EvalError] e = 'GetterErrorToString: getter[0] Error thrown from main script body'
     634CONSOLE MESSAGE: line 139:       [EvalError] e.name = 'EvalError'
     635CONSOLE MESSAGE: line 140:       [EvalError] e.message = 'Error thrown from main script body'
     636CONSOLE MESSAGE: line 92:    [case 23] in 'toString' getter[1]: error.message = 'Error thrown from main script body'
     637CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     638CONSOLE MESSAGE: line 141:       [EvalError] e.toString() = 'GetterErrorToString: getter[1] Error thrown from main script body'
     639CONSOLE MESSAGE: line 142:
     640CONSOLE MESSAGE: line 151:    [case 23] let caughtE; try { throw e } catch(err) { caughtE = err }
     641CONSOLE MESSAGE: line 92:    [case 23] in 'toString' getter[2]: error.message = 'Error thrown from main script body'
     642CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     643CONSOLE MESSAGE: line 154:       [EvalError] caughtE = 'GetterErrorToString: getter[2] Error thrown from main script body'
     644CONSOLE MESSAGE: line 155:       [EvalError] caughtE.name = 'EvalError'
     645CONSOLE MESSAGE: line 156:       [EvalError] caughtE.message = 'Error thrown from main script body'
     646CONSOLE MESSAGE: line 92:    [case 23] in 'toString' getter[3]: error.message = 'Error thrown from main script body'
     647CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     648CONSOLE MESSAGE: line 157:       [EvalError] caughtE.toString() = 'GetterErrorToString: getter[3] Error thrown from main script body'
     649CONSOLE MESSAGE: line 158:
     650CONSOLE MESSAGE: line 167:    throw e;
    651651CONSOLE MESSAGE: line 47:    [case 23] in window.onerror: err = EvalError: Error thrown from main script body
    652652CONSOLE MESSAGE: line 48:    [case 23] in window.onerror: err.name = undefined
     
    657657CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    658658CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    659 CONSOLE MESSAGE: line 170: EvalError: Error thrown from main script body
     659CONSOLE MESSAGE: line 168: EvalError: Error thrown from main script body
    660660CONSOLE MESSAGE: line 42:
    661661CONSOLE MESSAGE: line 43: Test [case 24]
    662 CONSOLE MESSAGE: line 133:    [case 24] let e = new RangeError('Error thrown from main script body');
    663 CONSOLE MESSAGE: line 95:    [case 24] in 'toString' getter[0]: error.message = 'Error thrown from main script body'
    664 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    665 CONSOLE MESSAGE: line 140:       [RangeError] e = 'GetterErrorToString: getter[0] Error thrown from main script body'
    666 CONSOLE MESSAGE: line 141:       [RangeError] e.name = 'RangeError'
    667 CONSOLE MESSAGE: line 142:       [RangeError] e.message = 'Error thrown from main script body'
    668 CONSOLE MESSAGE: line 95:    [case 24] in 'toString' getter[1]: error.message = 'Error thrown from main script body'
    669 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    670 CONSOLE MESSAGE: line 143:       [RangeError] e.toString() = 'GetterErrorToString: getter[1] Error thrown from main script body'
    671 CONSOLE MESSAGE: line 144:
    672 CONSOLE MESSAGE: line 153:    [case 24] let caughtE; try { throw e } catch(err) { caughtE = err }
    673 CONSOLE MESSAGE: line 95:    [case 24] in 'toString' getter[2]: error.message = 'Error thrown from main script body'
    674 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    675 CONSOLE MESSAGE: line 156:       [RangeError] caughtE = 'GetterErrorToString: getter[2] Error thrown from main script body'
    676 CONSOLE MESSAGE: line 157:       [RangeError] caughtE.name = 'RangeError'
    677 CONSOLE MESSAGE: line 158:       [RangeError] caughtE.message = 'Error thrown from main script body'
    678 CONSOLE MESSAGE: line 95:    [case 24] in 'toString' getter[3]: error.message = 'Error thrown from main script body'
    679 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    680 CONSOLE MESSAGE: line 159:       [RangeError] caughtE.toString() = 'GetterErrorToString: getter[3] Error thrown from main script body'
    681 CONSOLE MESSAGE: line 160:
    682 CONSOLE MESSAGE: line 169:    throw e;
     662CONSOLE MESSAGE: line 131:    [case 24] let e = new RangeError('Error thrown from main script body');
     663CONSOLE MESSAGE: line 92:    [case 24] in 'toString' getter[0]: error.message = 'Error thrown from main script body'
     664CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     665CONSOLE MESSAGE: line 138:       [RangeError] e = 'GetterErrorToString: getter[0] Error thrown from main script body'
     666CONSOLE MESSAGE: line 139:       [RangeError] e.name = 'RangeError'
     667CONSOLE MESSAGE: line 140:       [RangeError] e.message = 'Error thrown from main script body'
     668CONSOLE MESSAGE: line 92:    [case 24] in 'toString' getter[1]: error.message = 'Error thrown from main script body'
     669CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     670CONSOLE MESSAGE: line 141:       [RangeError] e.toString() = 'GetterErrorToString: getter[1] Error thrown from main script body'
     671CONSOLE MESSAGE: line 142:
     672CONSOLE MESSAGE: line 151:    [case 24] let caughtE; try { throw e } catch(err) { caughtE = err }
     673CONSOLE MESSAGE: line 92:    [case 24] in 'toString' getter[2]: error.message = 'Error thrown from main script body'
     674CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     675CONSOLE MESSAGE: line 154:       [RangeError] caughtE = 'GetterErrorToString: getter[2] Error thrown from main script body'
     676CONSOLE MESSAGE: line 155:       [RangeError] caughtE.name = 'RangeError'
     677CONSOLE MESSAGE: line 156:       [RangeError] caughtE.message = 'Error thrown from main script body'
     678CONSOLE MESSAGE: line 92:    [case 24] in 'toString' getter[3]: error.message = 'Error thrown from main script body'
     679CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     680CONSOLE MESSAGE: line 157:       [RangeError] caughtE.toString() = 'GetterErrorToString: getter[3] Error thrown from main script body'
     681CONSOLE MESSAGE: line 158:
     682CONSOLE MESSAGE: line 167:    throw e;
    683683CONSOLE MESSAGE: line 47:    [case 24] in window.onerror: err = RangeError: Error thrown from main script body
    684684CONSOLE MESSAGE: line 48:    [case 24] in window.onerror: err.name = undefined
     
    689689CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    690690CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    691 CONSOLE MESSAGE: line 170: RangeError: Error thrown from main script body
     691CONSOLE MESSAGE: line 168: RangeError: Error thrown from main script body
    692692CONSOLE MESSAGE: line 42:
    693693CONSOLE MESSAGE: line 43: Test [case 25]
    694 CONSOLE MESSAGE: line 133:    [case 25] let e = new ReferenceError('Error thrown from main script body');
    695 CONSOLE MESSAGE: line 95:    [case 25] in 'toString' getter[0]: error.message = 'Error thrown from main script body'
    696 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    697 CONSOLE MESSAGE: line 140:       [ReferenceError] e = 'GetterErrorToString: getter[0] Error thrown from main script body'
    698 CONSOLE MESSAGE: line 141:       [ReferenceError] e.name = 'ReferenceError'
    699 CONSOLE MESSAGE: line 142:       [ReferenceError] e.message = 'Error thrown from main script body'
    700 CONSOLE MESSAGE: line 95:    [case 25] in 'toString' getter[1]: error.message = 'Error thrown from main script body'
    701 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    702 CONSOLE MESSAGE: line 143:       [ReferenceError] e.toString() = 'GetterErrorToString: getter[1] Error thrown from main script body'
    703 CONSOLE MESSAGE: line 144:
    704 CONSOLE MESSAGE: line 153:    [case 25] let caughtE; try { throw e } catch(err) { caughtE = err }
    705 CONSOLE MESSAGE: line 95:    [case 25] in 'toString' getter[2]: error.message = 'Error thrown from main script body'
    706 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    707 CONSOLE MESSAGE: line 156:       [ReferenceError] caughtE = 'GetterErrorToString: getter[2] Error thrown from main script body'
    708 CONSOLE MESSAGE: line 157:       [ReferenceError] caughtE.name = 'ReferenceError'
    709 CONSOLE MESSAGE: line 158:       [ReferenceError] caughtE.message = 'Error thrown from main script body'
    710 CONSOLE MESSAGE: line 95:    [case 25] in 'toString' getter[3]: error.message = 'Error thrown from main script body'
    711 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    712 CONSOLE MESSAGE: line 159:       [ReferenceError] caughtE.toString() = 'GetterErrorToString: getter[3] Error thrown from main script body'
    713 CONSOLE MESSAGE: line 160:
    714 CONSOLE MESSAGE: line 169:    throw e;
     694CONSOLE MESSAGE: line 131:    [case 25] let e = new ReferenceError('Error thrown from main script body');
     695CONSOLE MESSAGE: line 92:    [case 25] in 'toString' getter[0]: error.message = 'Error thrown from main script body'
     696CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     697CONSOLE MESSAGE: line 138:       [ReferenceError] e = 'GetterErrorToString: getter[0] Error thrown from main script body'
     698CONSOLE MESSAGE: line 139:       [ReferenceError] e.name = 'ReferenceError'
     699CONSOLE MESSAGE: line 140:       [ReferenceError] e.message = 'Error thrown from main script body'
     700CONSOLE MESSAGE: line 92:    [case 25] in 'toString' getter[1]: error.message = 'Error thrown from main script body'
     701CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     702CONSOLE MESSAGE: line 141:       [ReferenceError] e.toString() = 'GetterErrorToString: getter[1] Error thrown from main script body'
     703CONSOLE MESSAGE: line 142:
     704CONSOLE MESSAGE: line 151:    [case 25] let caughtE; try { throw e } catch(err) { caughtE = err }
     705CONSOLE MESSAGE: line 92:    [case 25] in 'toString' getter[2]: error.message = 'Error thrown from main script body'
     706CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     707CONSOLE MESSAGE: line 154:       [ReferenceError] caughtE = 'GetterErrorToString: getter[2] Error thrown from main script body'
     708CONSOLE MESSAGE: line 155:       [ReferenceError] caughtE.name = 'ReferenceError'
     709CONSOLE MESSAGE: line 156:       [ReferenceError] caughtE.message = 'Error thrown from main script body'
     710CONSOLE MESSAGE: line 92:    [case 25] in 'toString' getter[3]: error.message = 'Error thrown from main script body'
     711CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     712CONSOLE MESSAGE: line 157:       [ReferenceError] caughtE.toString() = 'GetterErrorToString: getter[3] Error thrown from main script body'
     713CONSOLE MESSAGE: line 158:
     714CONSOLE MESSAGE: line 167:    throw e;
    715715CONSOLE MESSAGE: line 47:    [case 25] in window.onerror: err = ReferenceError: Error thrown from main script body
    716716CONSOLE MESSAGE: line 48:    [case 25] in window.onerror: err.name = undefined
     
    721721CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    722722CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    723 CONSOLE MESSAGE: line 170: ReferenceError: Error thrown from main script body
     723CONSOLE MESSAGE: line 168: ReferenceError: Error thrown from main script body
    724724CONSOLE MESSAGE: line 42:
    725725CONSOLE MESSAGE: line 43: Test [case 26]
    726 CONSOLE MESSAGE: line 133:    [case 26] let e = new SyntaxError('Error thrown from main script body');
    727 CONSOLE MESSAGE: line 95:    [case 26] in 'toString' getter[0]: error.message = 'Error thrown from main script body'
    728 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    729 CONSOLE MESSAGE: line 140:       [SyntaxError] e = 'GetterErrorToString: getter[0] Error thrown from main script body'
    730 CONSOLE MESSAGE: line 141:       [SyntaxError] e.name = 'SyntaxError'
    731 CONSOLE MESSAGE: line 142:       [SyntaxError] e.message = 'Error thrown from main script body'
    732 CONSOLE MESSAGE: line 95:    [case 26] in 'toString' getter[1]: error.message = 'Error thrown from main script body'
    733 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    734 CONSOLE MESSAGE: line 143:       [SyntaxError] e.toString() = 'GetterErrorToString: getter[1] Error thrown from main script body'
    735 CONSOLE MESSAGE: line 144:
    736 CONSOLE MESSAGE: line 153:    [case 26] let caughtE; try { throw e } catch(err) { caughtE = err }
    737 CONSOLE MESSAGE: line 95:    [case 26] in 'toString' getter[2]: error.message = 'Error thrown from main script body'
    738 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    739 CONSOLE MESSAGE: line 156:       [SyntaxError] caughtE = 'GetterErrorToString: getter[2] Error thrown from main script body'
    740 CONSOLE MESSAGE: line 157:       [SyntaxError] caughtE.name = 'SyntaxError'
    741 CONSOLE MESSAGE: line 158:       [SyntaxError] caughtE.message = 'Error thrown from main script body'
    742 CONSOLE MESSAGE: line 95:    [case 26] in 'toString' getter[3]: error.message = 'Error thrown from main script body'
    743 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    744 CONSOLE MESSAGE: line 159:       [SyntaxError] caughtE.toString() = 'GetterErrorToString: getter[3] Error thrown from main script body'
    745 CONSOLE MESSAGE: line 160:
    746 CONSOLE MESSAGE: line 169:    throw e;
     726CONSOLE MESSAGE: line 131:    [case 26] let e = new SyntaxError('Error thrown from main script body');
     727CONSOLE MESSAGE: line 92:    [case 26] in 'toString' getter[0]: error.message = 'Error thrown from main script body'
     728CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     729CONSOLE MESSAGE: line 138:       [SyntaxError] e = 'GetterErrorToString: getter[0] Error thrown from main script body'
     730CONSOLE MESSAGE: line 139:       [SyntaxError] e.name = 'SyntaxError'
     731CONSOLE MESSAGE: line 140:       [SyntaxError] e.message = 'Error thrown from main script body'
     732CONSOLE MESSAGE: line 92:    [case 26] in 'toString' getter[1]: error.message = 'Error thrown from main script body'
     733CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     734CONSOLE MESSAGE: line 141:       [SyntaxError] e.toString() = 'GetterErrorToString: getter[1] Error thrown from main script body'
     735CONSOLE MESSAGE: line 142:
     736CONSOLE MESSAGE: line 151:    [case 26] let caughtE; try { throw e } catch(err) { caughtE = err }
     737CONSOLE MESSAGE: line 92:    [case 26] in 'toString' getter[2]: error.message = 'Error thrown from main script body'
     738CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     739CONSOLE MESSAGE: line 154:       [SyntaxError] caughtE = 'GetterErrorToString: getter[2] Error thrown from main script body'
     740CONSOLE MESSAGE: line 155:       [SyntaxError] caughtE.name = 'SyntaxError'
     741CONSOLE MESSAGE: line 156:       [SyntaxError] caughtE.message = 'Error thrown from main script body'
     742CONSOLE MESSAGE: line 92:    [case 26] in 'toString' getter[3]: error.message = 'Error thrown from main script body'
     743CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     744CONSOLE MESSAGE: line 157:       [SyntaxError] caughtE.toString() = 'GetterErrorToString: getter[3] Error thrown from main script body'
     745CONSOLE MESSAGE: line 158:
     746CONSOLE MESSAGE: line 167:    throw e;
    747747CONSOLE MESSAGE: line 47:    [case 26] in window.onerror: err = SyntaxError: Error thrown from main script body
    748748CONSOLE MESSAGE: line 48:    [case 26] in window.onerror: err.name = undefined
     
    753753CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    754754CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    755 CONSOLE MESSAGE: line 170: SyntaxError: Error thrown from main script body
     755CONSOLE MESSAGE: line 168: SyntaxError: Error thrown from main script body
    756756CONSOLE MESSAGE: line 42:
    757757CONSOLE MESSAGE: line 43: Test [case 27]
    758 CONSOLE MESSAGE: line 133:    [case 27] let e = new TypeError('Error thrown from main script body');
    759 CONSOLE MESSAGE: line 95:    [case 27] in 'toString' getter[0]: error.message = 'Error thrown from main script body'
    760 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    761 CONSOLE MESSAGE: line 140:       [TypeError] e = 'GetterErrorToString: getter[0] Error thrown from main script body'
    762 CONSOLE MESSAGE: line 141:       [TypeError] e.name = 'TypeError'
    763 CONSOLE MESSAGE: line 142:       [TypeError] e.message = 'Error thrown from main script body'
    764 CONSOLE MESSAGE: line 95:    [case 27] in 'toString' getter[1]: error.message = 'Error thrown from main script body'
    765 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    766 CONSOLE MESSAGE: line 143:       [TypeError] e.toString() = 'GetterErrorToString: getter[1] Error thrown from main script body'
    767 CONSOLE MESSAGE: line 144:
    768 CONSOLE MESSAGE: line 153:    [case 27] let caughtE; try { throw e } catch(err) { caughtE = err }
    769 CONSOLE MESSAGE: line 95:    [case 27] in 'toString' getter[2]: error.message = 'Error thrown from main script body'
    770 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    771 CONSOLE MESSAGE: line 156:       [TypeError] caughtE = 'GetterErrorToString: getter[2] Error thrown from main script body'
    772 CONSOLE MESSAGE: line 157:       [TypeError] caughtE.name = 'TypeError'
    773 CONSOLE MESSAGE: line 158:       [TypeError] caughtE.message = 'Error thrown from main script body'
    774 CONSOLE MESSAGE: line 95:    [case 27] in 'toString' getter[3]: error.message = 'Error thrown from main script body'
    775 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    776 CONSOLE MESSAGE: line 159:       [TypeError] caughtE.toString() = 'GetterErrorToString: getter[3] Error thrown from main script body'
    777 CONSOLE MESSAGE: line 160:
    778 CONSOLE MESSAGE: line 169:    throw e;
     758CONSOLE MESSAGE: line 131:    [case 27] let e = new TypeError('Error thrown from main script body');
     759CONSOLE MESSAGE: line 92:    [case 27] in 'toString' getter[0]: error.message = 'Error thrown from main script body'
     760CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     761CONSOLE MESSAGE: line 138:       [TypeError] e = 'GetterErrorToString: getter[0] Error thrown from main script body'
     762CONSOLE MESSAGE: line 139:       [TypeError] e.name = 'TypeError'
     763CONSOLE MESSAGE: line 140:       [TypeError] e.message = 'Error thrown from main script body'
     764CONSOLE MESSAGE: line 92:    [case 27] in 'toString' getter[1]: error.message = 'Error thrown from main script body'
     765CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     766CONSOLE MESSAGE: line 141:       [TypeError] e.toString() = 'GetterErrorToString: getter[1] Error thrown from main script body'
     767CONSOLE MESSAGE: line 142:
     768CONSOLE MESSAGE: line 151:    [case 27] let caughtE; try { throw e } catch(err) { caughtE = err }
     769CONSOLE MESSAGE: line 92:    [case 27] in 'toString' getter[2]: error.message = 'Error thrown from main script body'
     770CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     771CONSOLE MESSAGE: line 154:       [TypeError] caughtE = 'GetterErrorToString: getter[2] Error thrown from main script body'
     772CONSOLE MESSAGE: line 155:       [TypeError] caughtE.name = 'TypeError'
     773CONSOLE MESSAGE: line 156:       [TypeError] caughtE.message = 'Error thrown from main script body'
     774CONSOLE MESSAGE: line 92:    [case 27] in 'toString' getter[3]: error.message = 'Error thrown from main script body'
     775CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     776CONSOLE MESSAGE: line 157:       [TypeError] caughtE.toString() = 'GetterErrorToString: getter[3] Error thrown from main script body'
     777CONSOLE MESSAGE: line 158:
     778CONSOLE MESSAGE: line 167:    throw e;
    779779CONSOLE MESSAGE: line 47:    [case 27] in window.onerror: err = TypeError: Error thrown from main script body
    780780CONSOLE MESSAGE: line 48:    [case 27] in window.onerror: err.name = undefined
     
    785785CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    786786CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    787 CONSOLE MESSAGE: line 170: TypeError: Error thrown from main script body
     787CONSOLE MESSAGE: line 168: TypeError: Error thrown from main script body
    788788CONSOLE MESSAGE: line 42:
    789789CONSOLE MESSAGE: line 43: Test [case 28]
    790 CONSOLE MESSAGE: line 133:    [case 28] let e = new URIError('Error thrown from main script body');
    791 CONSOLE MESSAGE: line 95:    [case 28] in 'toString' getter[0]: error.message = 'Error thrown from main script body'
    792 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    793 CONSOLE MESSAGE: line 140:       [URIError] e = 'GetterErrorToString: getter[0] Error thrown from main script body'
    794 CONSOLE MESSAGE: line 141:       [URIError] e.name = 'URIError'
    795 CONSOLE MESSAGE: line 142:       [URIError] e.message = 'Error thrown from main script body'
    796 CONSOLE MESSAGE: line 95:    [case 28] in 'toString' getter[1]: error.message = 'Error thrown from main script body'
    797 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    798 CONSOLE MESSAGE: line 143:       [URIError] e.toString() = 'GetterErrorToString: getter[1] Error thrown from main script body'
    799 CONSOLE MESSAGE: line 144:
    800 CONSOLE MESSAGE: line 153:    [case 28] let caughtE; try { throw e } catch(err) { caughtE = err }
    801 CONSOLE MESSAGE: line 95:    [case 28] in 'toString' getter[2]: error.message = 'Error thrown from main script body'
    802 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    803 CONSOLE MESSAGE: line 156:       [URIError] caughtE = 'GetterErrorToString: getter[2] Error thrown from main script body'
    804 CONSOLE MESSAGE: line 157:       [URIError] caughtE.name = 'URIError'
    805 CONSOLE MESSAGE: line 158:       [URIError] caughtE.message = 'Error thrown from main script body'
    806 CONSOLE MESSAGE: line 95:    [case 28] in 'toString' getter[3]: error.message = 'Error thrown from main script body'
    807 CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    808 CONSOLE MESSAGE: line 159:       [URIError] caughtE.toString() = 'GetterErrorToString: getter[3] Error thrown from main script body'
    809 CONSOLE MESSAGE: line 160:
    810 CONSOLE MESSAGE: line 169:    throw e;
     790CONSOLE MESSAGE: line 131:    [case 28] let e = new URIError('Error thrown from main script body');
     791CONSOLE MESSAGE: line 92:    [case 28] in 'toString' getter[0]: error.message = 'Error thrown from main script body'
     792CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     793CONSOLE MESSAGE: line 138:       [URIError] e = 'GetterErrorToString: getter[0] Error thrown from main script body'
     794CONSOLE MESSAGE: line 139:       [URIError] e.name = 'URIError'
     795CONSOLE MESSAGE: line 140:       [URIError] e.message = 'Error thrown from main script body'
     796CONSOLE MESSAGE: line 92:    [case 28] in 'toString' getter[1]: error.message = 'Error thrown from main script body'
     797CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     798CONSOLE MESSAGE: line 141:       [URIError] e.toString() = 'GetterErrorToString: getter[1] Error thrown from main script body'
     799CONSOLE MESSAGE: line 142:
     800CONSOLE MESSAGE: line 151:    [case 28] let caughtE; try { throw e } catch(err) { caughtE = err }
     801CONSOLE MESSAGE: line 92:    [case 28] in 'toString' getter[2]: error.message = 'Error thrown from main script body'
     802CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     803CONSOLE MESSAGE: line 154:       [URIError] caughtE = 'GetterErrorToString: getter[2] Error thrown from main script body'
     804CONSOLE MESSAGE: line 155:       [URIError] caughtE.name = 'URIError'
     805CONSOLE MESSAGE: line 156:       [URIError] caughtE.message = 'Error thrown from main script body'
     806CONSOLE MESSAGE: line 92:    [case 28] in 'toString' getter[3]: error.message = 'Error thrown from main script body'
     807CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
     808CONSOLE MESSAGE: line 157:       [URIError] caughtE.toString() = 'GetterErrorToString: getter[3] Error thrown from main script body'
     809CONSOLE MESSAGE: line 158:
     810CONSOLE MESSAGE: line 167:    throw e;
    811811CONSOLE MESSAGE: line 47:    [case 28] in window.onerror: err = URIError: Error thrown from main script body
    812812CONSOLE MESSAGE: line 48:    [case 28] in window.onerror: err.name = undefined
     
    817817CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    818818CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    819 CONSOLE MESSAGE: line 170: URIError: Error thrown from main script body
     819CONSOLE MESSAGE: line 168: URIError: Error thrown from main script body
    820820CONSOLE MESSAGE: line 42:
    821821CONSOLE MESSAGE: line 43: Test uncaught error from a script from another domain
     
    11911191CONSOLE MESSAGE: line 9:    [case 46] var e = new Error('Error thrown from other script with Secret');
    11921192CONSOLE MESSAGE: line 11:    [case 46] e.name = 'OtherScriptError'
    1193 CONSOLE MESSAGE: line 95:    [case 46] in 'toString' getter[32]: error.message = 'Error thrown from other script with Secret'
     1193CONSOLE MESSAGE: line 92:    [case 46] in 'toString' getter[32]: error.message = 'Error thrown from other script with Secret'
    11941194CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    11951195CONSOLE MESSAGE: line 17:       [Error] e = 'GetterErrorToString: getter[32] Error thrown from other script with Secret'
    11961196CONSOLE MESSAGE: line 18:       [Error] e.name = 'OtherScriptError'
    11971197CONSOLE MESSAGE: line 19:       [Error] e.message = 'Error thrown from other script with Secret'
    1198 CONSOLE MESSAGE: line 95:    [case 46] in 'toString' getter[33]: error.message = 'Error thrown from other script with Secret'
     1198CONSOLE MESSAGE: line 92:    [case 46] in 'toString' getter[33]: error.message = 'Error thrown from other script with Secret'
    11991199CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    12001200CONSOLE MESSAGE: line 20:       [Error] e.toString() = 'GetterErrorToString: getter[33] Error thrown from other script with Secret'
    12011201CONSOLE MESSAGE: line 24:    [case 46] throw e;
    1202 CONSOLE MESSAGE: line 95:    [case 46] in 'toString' getter[34]: error.message = 'Error thrown from other script with Secret'
     1202CONSOLE MESSAGE: line 92:    [case 46] in 'toString' getter[34]: error.message = 'Error thrown from other script with Secret'
    12031203CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    12041204CONSOLE MESSAGE: line 31:    [case 46] Caught: GetterErrorToString: getter[34] Error thrown from other script with Secret
     
    12171217CONSOLE MESSAGE: line 9:    [case 47] var e = new EvalError('Error thrown from other script with Secret');
    12181218CONSOLE MESSAGE: line 11:    [case 47] e.name = 'OtherScriptEvalError'
    1219 CONSOLE MESSAGE: line 95:    [case 47] in 'toString' getter[35]: error.message = 'Error thrown from other script with Secret'
     1219CONSOLE MESSAGE: line 92:    [case 47] in 'toString' getter[35]: error.message = 'Error thrown from other script with Secret'
    12201220CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    12211221CONSOLE MESSAGE: line 17:       [EvalError] e = 'GetterErrorToString: getter[35] Error thrown from other script with Secret'
    12221222CONSOLE MESSAGE: line 18:       [EvalError] e.name = 'OtherScriptEvalError'
    12231223CONSOLE MESSAGE: line 19:       [EvalError] e.message = 'Error thrown from other script with Secret'
    1224 CONSOLE MESSAGE: line 95:    [case 47] in 'toString' getter[36]: error.message = 'Error thrown from other script with Secret'
     1224CONSOLE MESSAGE: line 92:    [case 47] in 'toString' getter[36]: error.message = 'Error thrown from other script with Secret'
    12251225CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    12261226CONSOLE MESSAGE: line 20:       [EvalError] e.toString() = 'GetterErrorToString: getter[36] Error thrown from other script with Secret'
    12271227CONSOLE MESSAGE: line 24:    [case 47] throw e;
    1228 CONSOLE MESSAGE: line 95:    [case 47] in 'toString' getter[37]: error.message = 'Error thrown from other script with Secret'
     1228CONSOLE MESSAGE: line 92:    [case 47] in 'toString' getter[37]: error.message = 'Error thrown from other script with Secret'
    12291229CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    12301230CONSOLE MESSAGE: line 31:    [case 47] Caught: GetterErrorToString: getter[37] Error thrown from other script with Secret
     
    12431243CONSOLE MESSAGE: line 9:    [case 48] var e = new RangeError('Error thrown from other script with Secret');
    12441244CONSOLE MESSAGE: line 11:    [case 48] e.name = 'OtherScriptRangeError'
    1245 CONSOLE MESSAGE: line 95:    [case 48] in 'toString' getter[38]: error.message = 'Error thrown from other script with Secret'
     1245CONSOLE MESSAGE: line 92:    [case 48] in 'toString' getter[38]: error.message = 'Error thrown from other script with Secret'
    12461246CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    12471247CONSOLE MESSAGE: line 17:       [RangeError] e = 'GetterErrorToString: getter[38] Error thrown from other script with Secret'
    12481248CONSOLE MESSAGE: line 18:       [RangeError] e.name = 'OtherScriptRangeError'
    12491249CONSOLE MESSAGE: line 19:       [RangeError] e.message = 'Error thrown from other script with Secret'
    1250 CONSOLE MESSAGE: line 95:    [case 48] in 'toString' getter[39]: error.message = 'Error thrown from other script with Secret'
     1250CONSOLE MESSAGE: line 92:    [case 48] in 'toString' getter[39]: error.message = 'Error thrown from other script with Secret'
    12511251CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    12521252CONSOLE MESSAGE: line 20:       [RangeError] e.toString() = 'GetterErrorToString: getter[39] Error thrown from other script with Secret'
    12531253CONSOLE MESSAGE: line 24:    [case 48] throw e;
    1254 CONSOLE MESSAGE: line 95:    [case 48] in 'toString' getter[40]: error.message = 'Error thrown from other script with Secret'
     1254CONSOLE MESSAGE: line 92:    [case 48] in 'toString' getter[40]: error.message = 'Error thrown from other script with Secret'
    12551255CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    12561256CONSOLE MESSAGE: line 31:    [case 48] Caught: GetterErrorToString: getter[40] Error thrown from other script with Secret
     
    12691269CONSOLE MESSAGE: line 9:    [case 49] var e = new ReferenceError('Error thrown from other script with Secret');
    12701270CONSOLE MESSAGE: line 11:    [case 49] e.name = 'OtherScriptReferenceError'
    1271 CONSOLE MESSAGE: line 95:    [case 49] in 'toString' getter[41]: error.message = 'Error thrown from other script with Secret'
     1271CONSOLE MESSAGE: line 92:    [case 49] in 'toString' getter[41]: error.message = 'Error thrown from other script with Secret'
    12721272CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    12731273CONSOLE MESSAGE: line 17:       [ReferenceError] e = 'GetterErrorToString: getter[41] Error thrown from other script with Secret'
    12741274CONSOLE MESSAGE: line 18:       [ReferenceError] e.name = 'OtherScriptReferenceError'
    12751275CONSOLE MESSAGE: line 19:       [ReferenceError] e.message = 'Error thrown from other script with Secret'
    1276 CONSOLE MESSAGE: line 95:    [case 49] in 'toString' getter[42]: error.message = 'Error thrown from other script with Secret'
     1276CONSOLE MESSAGE: line 92:    [case 49] in 'toString' getter[42]: error.message = 'Error thrown from other script with Secret'
    12771277CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    12781278CONSOLE MESSAGE: line 20:       [ReferenceError] e.toString() = 'GetterErrorToString: getter[42] Error thrown from other script with Secret'
    12791279CONSOLE MESSAGE: line 24:    [case 49] throw e;
    1280 CONSOLE MESSAGE: line 95:    [case 49] in 'toString' getter[43]: error.message = 'Error thrown from other script with Secret'
     1280CONSOLE MESSAGE: line 92:    [case 49] in 'toString' getter[43]: error.message = 'Error thrown from other script with Secret'
    12811281CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    12821282CONSOLE MESSAGE: line 31:    [case 49] Caught: GetterErrorToString: getter[43] Error thrown from other script with Secret
     
    12951295CONSOLE MESSAGE: line 9:    [case 50] var e = new SyntaxError('Error thrown from other script with Secret');
    12961296CONSOLE MESSAGE: line 11:    [case 50] e.name = 'OtherScriptSyntaxError'
    1297 CONSOLE MESSAGE: line 95:    [case 50] in 'toString' getter[44]: error.message = 'Error thrown from other script with Secret'
     1297CONSOLE MESSAGE: line 92:    [case 50] in 'toString' getter[44]: error.message = 'Error thrown from other script with Secret'
    12981298CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    12991299CONSOLE MESSAGE: line 17:       [SyntaxError] e = 'GetterErrorToString: getter[44] Error thrown from other script with Secret'
    13001300CONSOLE MESSAGE: line 18:       [SyntaxError] e.name = 'OtherScriptSyntaxError'
    13011301CONSOLE MESSAGE: line 19:       [SyntaxError] e.message = 'Error thrown from other script with Secret'
    1302 CONSOLE MESSAGE: line 95:    [case 50] in 'toString' getter[45]: error.message = 'Error thrown from other script with Secret'
     1302CONSOLE MESSAGE: line 92:    [case 50] in 'toString' getter[45]: error.message = 'Error thrown from other script with Secret'
    13031303CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    13041304CONSOLE MESSAGE: line 20:       [SyntaxError] e.toString() = 'GetterErrorToString: getter[45] Error thrown from other script with Secret'
    13051305CONSOLE MESSAGE: line 24:    [case 50] throw e;
    1306 CONSOLE MESSAGE: line 95:    [case 50] in 'toString' getter[46]: error.message = 'Error thrown from other script with Secret'
     1306CONSOLE MESSAGE: line 92:    [case 50] in 'toString' getter[46]: error.message = 'Error thrown from other script with Secret'
    13071307CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    13081308CONSOLE MESSAGE: line 31:    [case 50] Caught: GetterErrorToString: getter[46] Error thrown from other script with Secret
     
    13211321CONSOLE MESSAGE: line 9:    [case 51] var e = new TypeError('Error thrown from other script with Secret');
    13221322CONSOLE MESSAGE: line 11:    [case 51] e.name = 'OtherScriptTypeError'
    1323 CONSOLE MESSAGE: line 95:    [case 51] in 'toString' getter[47]: error.message = 'Error thrown from other script with Secret'
     1323CONSOLE MESSAGE: line 92:    [case 51] in 'toString' getter[47]: error.message = 'Error thrown from other script with Secret'
    13241324CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    13251325CONSOLE MESSAGE: line 17:       [TypeError] e = 'GetterErrorToString: getter[47] Error thrown from other script with Secret'
    13261326CONSOLE MESSAGE: line 18:       [TypeError] e.name = 'OtherScriptTypeError'
    13271327CONSOLE MESSAGE: line 19:       [TypeError] e.message = 'Error thrown from other script with Secret'
    1328 CONSOLE MESSAGE: line 95:    [case 51] in 'toString' getter[48]: error.message = 'Error thrown from other script with Secret'
     1328CONSOLE MESSAGE: line 92:    [case 51] in 'toString' getter[48]: error.message = 'Error thrown from other script with Secret'
    13291329CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    13301330CONSOLE MESSAGE: line 20:       [TypeError] e.toString() = 'GetterErrorToString: getter[48] Error thrown from other script with Secret'
    13311331CONSOLE MESSAGE: line 24:    [case 51] throw e;
    1332 CONSOLE MESSAGE: line 95:    [case 51] in 'toString' getter[49]: error.message = 'Error thrown from other script with Secret'
     1332CONSOLE MESSAGE: line 92:    [case 51] in 'toString' getter[49]: error.message = 'Error thrown from other script with Secret'
    13331333CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    13341334CONSOLE MESSAGE: line 31:    [case 51] Caught: GetterErrorToString: getter[49] Error thrown from other script with Secret
     
    13471347CONSOLE MESSAGE: line 9:    [case 52] var e = new URIError('Error thrown from other script with Secret');
    13481348CONSOLE MESSAGE: line 11:    [case 52] e.name = 'OtherScriptURIError'
    1349 CONSOLE MESSAGE: line 95:    [case 52] in 'toString' getter[50]: error.message = 'Error thrown from other script with Secret'
     1349CONSOLE MESSAGE: line 92:    [case 52] in 'toString' getter[50]: error.message = 'Error thrown from other script with Secret'
    13501350CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    13511351CONSOLE MESSAGE: line 17:       [URIError] e = 'GetterErrorToString: getter[50] Error thrown from other script with Secret'
    13521352CONSOLE MESSAGE: line 18:       [URIError] e.name = 'OtherScriptURIError'
    13531353CONSOLE MESSAGE: line 19:       [URIError] e.message = 'Error thrown from other script with Secret'
    1354 CONSOLE MESSAGE: line 95:    [case 52] in 'toString' getter[51]: error.message = 'Error thrown from other script with Secret'
     1354CONSOLE MESSAGE: line 92:    [case 52] in 'toString' getter[51]: error.message = 'Error thrown from other script with Secret'
    13551355CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    13561356CONSOLE MESSAGE: line 20:       [URIError] e.toString() = 'GetterErrorToString: getter[51] Error thrown from other script with Secret'
    13571357CONSOLE MESSAGE: line 24:    [case 52] throw e;
    1358 CONSOLE MESSAGE: line 95:    [case 52] in 'toString' getter[52]: error.message = 'Error thrown from other script with Secret'
     1358CONSOLE MESSAGE: line 92:    [case 52] in 'toString' getter[52]: error.message = 'Error thrown from other script with Secret'
    13591359CONSOLE MESSAGE: line 38: PASSED: Did not see any Secret from another domain
    13601360CONSOLE MESSAGE: line 31:    [case 52] Caught: GetterErrorToString: getter[52] Error thrown from other script with Secret
  • trunk/LayoutTests/http/tests/security/regress-52192.html

    r202460 r254842  
    8484    }
    8585
    86     let savedToStringDescriptors = [];
     86    assert('errorTypes.every((errorType) => errorType.prototype.toString === Error.prototype.toString)');
     87    let originalToStringDescriptor = Object.getOwnPropertyDescriptor(Error.prototype, 'toString');
     88    let replacementToStringDescriptor = {
     89        get: function() {
     90            var getterEntry = timesInErrorGetter++;
     91            var error = this;
     92            console.log("   " + caseStr + " in 'toString' getter[" + getterEntry + "]: error.message = '" + error.message + "'");
     93
     94            shouldContainNoSecrets(error.message, inMainScript);
     95
     96            return function() {
     97                return "GetterErrorToString: getter[" + getterEntry + "] " + error.message;
     98            }
     99        }
     100    };
     101
    87102    function installToStringGettersToCheckErrorMessageForSecrets() {
    88103        assert("toStringGettersInstalled == false");
    89         for (var i in errorTypes) {
    90             let errorType = errorTypes[i];
    91             savedToStringDescriptors[i] = Object.getOwnPropertyDescriptor(errorType.prototype, 'toString');
    92             errorType.prototype.__defineGetter__('toString', function() {
    93                 var getterEntry = timesInErrorGetter++;
    94                 var error = this;
    95                 console.log("   " + caseStr + " in 'toString' getter[" + getterEntry + "]: error.message = '" + error.message + "'");
    96 
    97                 shouldContainNoSecrets(error.message, inMainScript);
    98 
    99                 return function() {
    100                     return "GetterErrorToString: getter[" + getterEntry + "] " + error.message;
    101                 }
    102             });
    103         }
     104        Object.defineProperty(Error.prototype, 'toString', replacementToStringDescriptor);
    104105        toStringGettersInstalled = true;
    105106    }
     
    107108    function resetToStringGetters() {
    108109        assert("toStringGettersInstalled == true");
    109         for (var i in errorTypes) {
    110             let errorType = errorTypes[i];
    111             Object.defineProperty(errorType.prototype, 'toString', savedToStringDescriptors[i]);
    112         }
     110        Object.defineProperty(Error.prototype, 'toString', originalToStringDescriptor);
    113111        toStringGettersInstalled = false;
    114112    }
  • trunk/Source/JavaScriptCore/ChangeLog

    r254832 r254842  
     12020-01-20  Gus Caplan  <me@gus.host>
     2
     3        Remove own toString from NativeError prototype
     4        https://bugs.webkit.org/show_bug.cgi?id=204629
     5
     6        Reviewed by Ross Kirsling.
     7
     8        NativeError prototypes are expected to inherit toString from
     9        Error.prototype. See https://github.com/tc39/ecma262/issues/1794
     10        for additional details.
     11
     12        * runtime/ErrorPrototype.cpp:
     13        (JSC::ErrorPrototypeBase::ErrorPrototypeBase):
     14        (JSC::ErrorPrototypeBase::finishCreation):
     15        (JSC::ErrorPrototype::ErrorPrototype):
     16        (JSC::ErrorPrototype::create): Deleted.
     17        (JSC::ErrorPrototype::finishCreation): Deleted.
     18        * runtime/ErrorPrototype.h:
     19        (JSC::ErrorPrototype::createStructure): Deleted.
     20        * runtime/NativeErrorPrototype.cpp:
     21        (JSC::NativeErrorPrototype::NativeErrorPrototype):
     22        * runtime/NativeErrorPrototype.h:
     23
    1242020-01-20  David Kilzer  <ddkilzer@apple.com>
    225
  • trunk/Source/JavaScriptCore/runtime/ErrorPrototype.cpp

    r251425 r254842  
    3131namespace JSC {
    3232
     33STATIC_ASSERT_IS_TRIVIALLY_DESTRUCTIBLE(ErrorPrototypeBase);
    3334STATIC_ASSERT_IS_TRIVIALLY_DESTRUCTIBLE(ErrorPrototype);
    3435
     
    4950*/
    5051
    51 ErrorPrototype::ErrorPrototype(VM& vm, Structure* structure)
    52     : JSNonFinalObject(vm, structure)
     52ErrorPrototypeBase::ErrorPrototypeBase(VM& vm, Structure* structure)
     53    : Base(vm, structure)
    5354{
    5455}
    5556
    56 ErrorPrototype* ErrorPrototype::create(VM& vm, JSGlobalObject*, Structure* structure)
    57 {
    58     ErrorPrototype* prototype = new (NotNull, allocateCell<ErrorPrototype>(vm.heap)) ErrorPrototype(vm, structure);
    59     prototype->finishCreation(vm, "Error"_s);
    60     return prototype;
    61 }
    62 
    63 void ErrorPrototype::finishCreation(VM& vm, const String& name)
     57void ErrorPrototypeBase::finishCreation(VM& vm, const String& name)
    6458{
    6559    Base::finishCreation(vm);
     
    6761    putDirectWithoutTransition(vm, vm.propertyNames->name, jsString(vm, name), static_cast<unsigned>(PropertyAttribute::DontEnum));
    6862    putDirectWithoutTransition(vm, vm.propertyNames->message, jsEmptyString(vm), static_cast<unsigned>(PropertyAttribute::DontEnum));
     63}
     64
     65ErrorPrototype::ErrorPrototype(VM& vm, Structure* structure)
     66    : Base(vm, structure)
     67{
    6968}
    7069
  • trunk/Source/JavaScriptCore/runtime/ErrorPrototype.h

    r250005 r254842  
    2727class ObjectPrototype;
    2828
    29 class ErrorPrototype : public JSNonFinalObject {
     29// Superclass for ErrorPrototype and NativeErrorPrototype.
     30class ErrorPrototypeBase : public JSNonFinalObject {
    3031public:
    3132    typedef JSNonFinalObject Base;
     33
     34protected:
     35    ErrorPrototypeBase(VM&, Structure*);
     36    void finishCreation(VM&, const String&);
     37};
     38
     39class ErrorPrototype final : public ErrorPrototypeBase {
     40public:
     41    typedef ErrorPrototypeBase Base;
    3242    static constexpr unsigned StructureFlags = Base::StructureFlags | HasStaticPropertyTable;
    33 
    34     static ErrorPrototype* create(VM&, JSGlobalObject*, Structure*);
    3543
    3644    DECLARE_INFO;
     
    4149    }
    4250
     51    static ErrorPrototype* create(VM& vm, JSGlobalObject*, Structure* structure)
     52    {
     53        ErrorPrototype* prototype = new (NotNull, allocateCell<ErrorPrototype>(vm.heap)) ErrorPrototype(vm, structure);
     54        prototype->finishCreation(vm, "Error"_s);
     55        return prototype;
     56    }
     57
    4358protected:
    4459    ErrorPrototype(VM&, Structure*);
    45     void finishCreation(VM&, const String&);
    4660};
    4761
  • trunk/Source/JavaScriptCore/runtime/NativeErrorPrototype.cpp

    r240543 r254842  
    3030
    3131NativeErrorPrototype::NativeErrorPrototype(VM& vm, Structure* structure)
    32     : ErrorPrototype(vm, structure)
     32    : Base(vm, structure)
    3333{
    3434}
  • trunk/Source/JavaScriptCore/runtime/NativeErrorPrototype.h

    r240543 r254842  
    2525namespace JSC {
    2626
    27 class NativeErrorPrototype final : public ErrorPrototype {
     27class NativeErrorPrototype final : public ErrorPrototypeBase {
    2828private:
    2929    NativeErrorPrototype(VM&, Structure*);
    3030
    3131public:
    32     typedef ErrorPrototype Base;
     32    typedef ErrorPrototypeBase Base;
     33
     34    static Structure* createStructure(VM& vm, JSGlobalObject* globalObject, JSValue prototype)
     35    {
     36        return Structure::create(vm, globalObject, prototype, TypeInfo(ErrorInstanceType, StructureFlags), info());
     37    }
    3338
    3439    static NativeErrorPrototype* create(VM& vm, Structure* structure, const String& name)
Note: See TracChangeset for help on using the changeset viewer.