diff options
Diffstat (limited to 'js/src/tests/test262/language/eval-code/direct/strict-caller-global-strict.js')
-rw-r--r-- | js/src/tests/test262/language/eval-code/direct/strict-caller-global-strict.js | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/js/src/tests/test262/language/eval-code/direct/strict-caller-global-strict.js b/js/src/tests/test262/language/eval-code/direct/strict-caller-global-strict.js new file mode 100644 index 0000000000..0543362906 --- /dev/null +++ b/js/src/tests/test262/language/eval-code/direct/strict-caller-global-strict.js @@ -0,0 +1,25 @@ +// |reftest| error:SyntaxError +'use strict'; +// Copyright (C) 2020 Leo Balter. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. +/*--- +esid: sec-performeval +description: Script will be script if strictCaller is true +info: | + ... + 10. If strictCaller is true, let strictEval be true. + ... + 12. Let runningContext be the running execution context. + ... +negative: + phase: runtime + type: SyntaxError +flags: [onlyStrict] +---*/ + +// Although the `try` statement is a more precise mechanism for detecting +// runtime errors, the behavior under test is only observable for a direct eval +// call when the call is made from the global scope. This forces the use of +// the more coarse-grained `negative` frontmatter to assert the expected error. + +eval('var public = 1;'); |