aboutsummaryrefslogtreecommitdiffstats
path: root/external/contributions/Microsoft/ietcLatest/TestCases/ch10
diff options
context:
space:
mode:
Diffstat (limited to 'external/contributions/Microsoft/ietcLatest/TestCases/ch10')
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-1-s.js33
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-10-s.js33
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-11-s.js38
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-12-s.js32
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-13-s.js32
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-14-s.js37
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-15-s.js41
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-16-s.js39
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-17-s.js45
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-18-s.js46
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-19-s.js40
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-2-s.js38
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-20-s.js36
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-21-s.js36
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-22-s.js39
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-23-s.js35
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-24-s.js35
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-25-s.js44
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-26-s.js47
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-27-s.js39
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-28-s.js42
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-29-s.js34
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-2gs.js12
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-3-s.js34
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-30-s.js37
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-31-s.js33
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-32-s.js33
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-4-s.js33
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-5-s.js38
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-5gs.js12
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-6-s.js34
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-7-s.js33
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-8-s.js38
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-8gs.js13
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-9-s.js33
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-16-s.js38
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-18-s.js37
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-22-s.js39
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-27-s.js39
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-1-1.js41
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-1-2.js46
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-1-3.js49
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-1-4.js44
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-1-5.js42
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-2-c-1.js35
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-2-s.js33
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-3-c-1-s.js36
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-3-c-2-s.js37
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2.1-1gs.js13
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2.1-2-s.js34
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2.1-4-s.js33
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-1-s.js44
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-2-s.js44
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-3-s.js42
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-4-s.js44
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-5-s.js47
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-7-s.js35
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-7gs.js33
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-8-s.js35
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-8gs.js33
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-1-s.js39
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-1gs.js16
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-7-b-1-s.js38
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-7-b-2-s.js38
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-7-b-3-s.js38
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-7-b-4-s.js39
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-10-c-ii-1-s.js37
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-10-c-ii-1.js36
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-10-c-ii-2-s.js38
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-10-c-ii-2.js37
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-11-b-1.js69
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-12-1.js36
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-12-2.js37
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-1.js36
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-a-1.js60
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-b-1-s.js39
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-b-2-s.js34
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-b-3-s.js41
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-c-1-s.js39
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-c-2-s.js34
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-c-3-s.js39
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-14-1-s.js35
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-14-b-1-s.js43
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-14-b-4-s.js42
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-14-c-1-s.js43
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-14-c-4-s.js42
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-1gs.js13
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-2gs.js15
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-5-1.js31
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-6-1.js32
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-6-2.js35
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-6-3.js31
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-6-4.js31
-rw-r--r--external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-7-1.js68
94 files changed, 3458 insertions, 0 deletions
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-1-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-1-s.js
new file mode 100644
index 000000000..432ef9828
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-1-s.js
@@ -0,0 +1,33 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-1-s.js
+ * @description Strict Mode - Use Strict Directive Prologue is 'use strict'; which contains two space between 'use' and 'strict'
+ * @noStrict
+ */
+
+
+function testcase() {
+ "use strict";
+ var public = 1;
+ return public === 1;
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-10-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-10-s.js
new file mode 100644
index 000000000..8d9c702a6
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-10-s.js
@@ -0,0 +1,33 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-10-s.js
+ * @description Strict Mode - Use Strict Directive Prologue is ''USE STRICT';' in which all characters are uppercase
+ * @noStrict
+ */
+
+
+function testcase() {
+ "USE STRICT";
+ var public = 1;
+ return public === 1;
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-11-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-11-s.js
new file mode 100644
index 000000000..f99f4579d
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-11-s.js
@@ -0,0 +1,38 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-11-s.js
+ * @description Strict Mode - Eval code is strict code with a Use Strict Directive at the beginning of the block
+ * @noStrict
+ */
+
+
+function testcase() {
+ try {
+ eval("'use strict'; var public = 1; var anotherVariableNotReserveWord = 2;");
+
+ return false;
+ } catch (e) {
+ return e instanceof SyntaxError && typeof public === "undefined" &&
+ typeof anotherVariableNotReserveWord === "undefined";
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-12-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-12-s.js
new file mode 100644
index 000000000..8fe7bc3a4
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-12-s.js
@@ -0,0 +1,32 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-12-s.js
+ * @description Strict Mode - Eval code is strict eval code with a Use Strict Directive in the middle of the block
+ * @noStrict
+ */
+
+
+function testcase() {
+ eval("var public = 1; 'use strict'; var anotherVariableNotReserveWord = 2;");
+ return public === 1 && anotherVariableNotReserveWord === 2;
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-13-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-13-s.js
new file mode 100644
index 000000000..ab6b33c55
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-13-s.js
@@ -0,0 +1,32 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-13-s.js
+ * @description Strict Mode - Eval code is strict eval code with a Use Strict Directive at the end of the block
+ * @noStrict
+ */
+
+
+function testcase() {
+ eval("var public = 1; var anotherVariableNotReserveWord = 2; 'use strict';");
+ return public === 1 && anotherVariableNotReserveWord === 2;
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-14-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-14-s.js
new file mode 100644
index 000000000..627387cbc
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-14-s.js
@@ -0,0 +1,37 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-14-s.js
+ * @description Strict Mode - The call to eval function is contained in a Strict Mode block
+ * @noStrict
+ */
+
+
+function testcase() {
+ 'use strict';
+ try {
+ eval("var public = 1;");
+ return false;
+ } catch (e) {
+ return true;
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-15-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-15-s.js
new file mode 100644
index 000000000..07c080f14
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-15-s.js
@@ -0,0 +1,41 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-15-s.js
+ * @description Strict Mode - Function code that is part of a FunctionDeclaration is strict function code if FunctionDeclaration is contained in use strict
+ * @noStrict
+ */
+
+
+function testcase() {
+ "use strict";
+ function fun() {
+ try {
+ eval("var public = 1;");
+ return false;
+ } catch (e) {
+ return e instanceof SyntaxError;
+ }
+ }
+
+ return fun();
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-16-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-16-s.js
new file mode 100644
index 000000000..40a22ea9f
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-16-s.js
@@ -0,0 +1,39 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-16-s.js
+ * @description Strict Mode - Function code that is part of a FunctionExpression is strict function code if FunctionExpression is contained in use strict
+ * @noStrict
+ */
+
+
+function testcase() {
+ "use strict";
+ return function () {
+ try {
+ eval("var public = 1;");
+ return false;
+ } catch (e) {
+ return e instanceof SyntaxError;
+ }
+ } ();
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-17-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-17-s.js
new file mode 100644
index 000000000..fdaead37a
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-17-s.js
@@ -0,0 +1,45 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-17-s.js
+ * @description Strict Mode - Function code that is part of a Accessor PropertyAssignment is in Strict Mode if Accessor PropertyAssignment is contained in use strict(getter)
+ * @noStrict
+ */
+
+
+function testcase() {
+ "use strict";
+ try {
+ var obj = {};
+ Object.defineProperty(obj, "accProperty", {
+ get: function () {
+ eval("public = 1;");
+ return 11;
+ }
+ });
+
+ var temp = obj.accProperty === 11;
+ return false;
+ } catch (e) {
+ return e instanceof SyntaxError;
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-18-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-18-s.js
new file mode 100644
index 000000000..9e19503e0
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-18-s.js
@@ -0,0 +1,46 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-18-s.js
+ * @description Strict Mode - Function code that is part of a Accessor PropertyAssignment is in Strict Mode if Accessor PropertyAssignment is contained in use strict(setter)
+ * @noStrict
+ */
+
+
+function testcase() {
+ "use strict";
+ try {
+ var obj = {};
+ var data = "data";
+ Object.defineProperty(obj, "accProperty", {
+ set: function (value) {
+ eval("var public = 1;");
+ data = value;
+ }
+ });
+
+ obj.accProperty = "overrideData";
+ return false;
+ } catch (e) {
+ return e instanceof SyntaxError && data === "data";
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-19-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-19-s.js
new file mode 100644
index 000000000..7b7a3662c
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-19-s.js
@@ -0,0 +1,40 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-19-s.js
+ * @description Strict Mode - Function code of a FunctionDeclaration contains Use Strict Directive which appears at the start of the block
+ * @noStrict
+ */
+
+
+function testcase() {
+ function fun() {
+ "use strict";
+ try {
+ eval("var public = 1;");
+ return false;
+ } catch (e) {
+ return e instanceof SyntaxError;
+ }
+ }
+ return fun();
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-2-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-2-s.js
new file mode 100644
index 000000000..b89f5cf51
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-2-s.js
@@ -0,0 +1,38 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-2-s.js
+ * @description Strict Mode - Use Strict Directive Prologue is ''use strict'' which lost the last character ';'
+ * @noStrict
+ */
+
+
+function testcase() {
+ "use strict"
+ try {
+ eval("var public = 1;");
+ return false;
+ } catch (e) {
+ return e instanceof SyntaxError;
+ }
+
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-20-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-20-s.js
new file mode 100644
index 000000000..b2f344350
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-20-s.js
@@ -0,0 +1,36 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-20-s.js
+ * @description Strict Mode - Function code of a FunctionDeclaration contains Use Strict Directive which appears in the middle of the block
+ * @noStrict
+ */
+
+
+function testcase() {
+ function fun() {
+ eval("var public = 1;");
+ "use strict";
+ return public === 1;
+ }
+ return fun();
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-21-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-21-s.js
new file mode 100644
index 000000000..5c86c5965
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-21-s.js
@@ -0,0 +1,36 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-21-s.js
+ * @description Strict Mode - Function code of a FunctionDeclaration contains Use Strict Directive which appears at the end of the block
+ * @noStrict
+ */
+
+
+function testcase() {
+ function fun() {
+ eval("var public = 1;");
+ return public === 1;
+ "use strict";
+ }
+ return fun();
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-22-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-22-s.js
new file mode 100644
index 000000000..0e97653fc
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-22-s.js
@@ -0,0 +1,39 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-22-s.js
+ * @description Strict Mode - Function code of a FunctionExpression contains Use Strict Directive which appears at the start of the block
+ * @noStrict
+ */
+
+
+function testcase() {
+ return function () {
+ "use strict";
+ try {
+ eval("var public = 1;");
+ return false;
+ } catch (e) {
+ return e instanceof SyntaxError;
+ }
+ } ();
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-23-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-23-s.js
new file mode 100644
index 000000000..c2df83a86
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-23-s.js
@@ -0,0 +1,35 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-23-s.js
+ * @description Strict Mode - Function code of a FunctionExpression contains Use Strict Directive which appears in the middle of the block
+ * @noStrict
+ */
+
+
+function testcase() {
+ return function () {
+ eval("var public = 1;");
+ return public === 1;
+ "use strict";
+ } ();
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-24-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-24-s.js
new file mode 100644
index 000000000..7267dd6c3
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-24-s.js
@@ -0,0 +1,35 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-24-s.js
+ * @description Strict Mode - Function code of a FunctionExpression contains Use Strict Directive which appears at the end of the block
+ * @noStrict
+ */
+
+
+function testcase() {
+ return function () {
+ eval("var public = 1;");
+ "use strict";
+ return public === 1;
+ } ();
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-25-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-25-s.js
new file mode 100644
index 000000000..5e8ec30f8
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-25-s.js
@@ -0,0 +1,44 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-25-s.js
+ * @description Strict Mode - Function code of Accessor PropertyAssignment contains Use Strict Directive which appears at the start of the block(getter)
+ * @noStrict
+ */
+
+
+function testcase() {
+ try {
+ var obj = {};
+ Object.defineProperty(obj, "accProperty", {
+ get: function () {
+ "use strict";
+ eval("var public = 1;");
+ return 11;
+ }
+ });
+ var temp = obj.accProperty === 11;
+ return false;
+ } catch (e) {
+ return e instanceof SyntaxError;
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-26-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-26-s.js
new file mode 100644
index 000000000..095b1ad18
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-26-s.js
@@ -0,0 +1,47 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-26-s.js
+ * @description Strict Mode - Function code of Accessor PropertyAssignment contains Use Strict Directive which appears at the start of the block(setter)
+ * @noStrict
+ */
+
+
+function testcase() {
+ try {
+ var obj = {};
+ var data = "data";
+ Object.defineProperty(obj, "accProperty", {
+ set: function (value) {
+ "use strict";
+ eval("var public = 1;");
+ data = value;
+ }
+ });
+
+ obj.accProperty = "overrideData";
+
+ return false;
+ } catch (e) {
+ return e instanceof SyntaxError && data === "data";
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-27-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-27-s.js
new file mode 100644
index 000000000..5dea941ed
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-27-s.js
@@ -0,0 +1,39 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-27-s.js
+ * @description Strict Mode - Function code of Accessor PropertyAssignment contains Use Strict Directive which appears in the middle of the block(getter)
+ * @noStrict
+ */
+
+
+function testcase() {
+ var obj = {};
+ Object.defineProperty(obj, "accProperty", {
+ get: function () {
+ eval("public = 1;");
+ "use strict";
+ return 11;
+ }
+ });
+ return obj.accProperty === 11 && public === 1;
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-28-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-28-s.js
new file mode 100644
index 000000000..87d571b6e
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-28-s.js
@@ -0,0 +1,42 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-28-s.js
+ * @description Strict Mode - Function code of Accessor PropertyAssignment contains Use Strict Directive which appears at the end of the block(setter)
+ * @noStrict
+ */
+
+
+function testcase() {
+ var obj = {};
+ var data;
+
+ Object.defineProperty(obj, "accProperty", {
+ set: function (value) {
+ var _10_1_1_28_s = {a:1, a:2};
+ data = value;
+ "use strict";
+ }
+ });
+ obj.accProperty = "overrideData";
+ return data==="overrideData";
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-29-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-29-s.js
new file mode 100644
index 000000000..461a2e9f9
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-29-s.js
@@ -0,0 +1,34 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-29-s.js
+ * @description Strict Mode - The built-in Function constructor is contained in use strict code
+ * @noStrict
+ */
+
+
+function testcase() {
+ "use strict";
+ var funObj = new Function("a", "eval('public = 1;');");
+ funObj();
+ return true;
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-2gs.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-2gs.js
new file mode 100644
index 000000000..037960721
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-2gs.js
@@ -0,0 +1,12 @@
+
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-2gs.js
+ * @description Strict Mode - Use Strict Directive Prologue is ''use strict'' which lost the last character ';'
+ * @noStrict
+ * @negative ^((?!NotEarlyError).)*$
+ */
+
+"use strict"
+throw NotEarlyError;
+var public = 1;
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-3-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-3-s.js
new file mode 100644
index 000000000..0a53fb51c
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-3-s.js
@@ -0,0 +1,34 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-3-s.js
+ * @description Strict Mode - Use Strict Directive Prologue is '' use strict';' which the first character is space
+ * @noStrict
+ */
+
+
+function testcase() {
+ " use strict";
+ var public = 1;
+
+ return public === 1;
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-30-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-30-s.js
new file mode 100644
index 000000000..9e51634e2
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-30-s.js
@@ -0,0 +1,37 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-30-s.js
+ * @description Strict Mode - Function code of built-in Function constructor contains Use Strict Directive which appears at the start of the block
+ * @noStrict
+ */
+
+
+function testcase() {
+ try {
+ var funObj = new Function("a", "'use strict'; eval('public = 1;');");
+ funObj();
+ return false;
+ } catch (e) {
+ return e instanceof SyntaxError;
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-31-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-31-s.js
new file mode 100644
index 000000000..d449c822f
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-31-s.js
@@ -0,0 +1,33 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-31-s.js
+ * @description Strict Mode - Function code of built-in Function constructor contains Use Strict Directive which appears in the middle of the block
+ * @noStrict
+ */
+
+
+function testcase() {
+ var funObj = new Function("a", "eval('public = 1;'); 'use strict'; anotherVariable = 2;");
+ funObj();
+ return public === 1 && anotherVariable === 2;
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-32-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-32-s.js
new file mode 100644
index 000000000..477a082ab
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-32-s.js
@@ -0,0 +1,33 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-32-s.js
+ * @description Strict Mode - Function code of built-in Function constructor contains Use Strict Directive which appears at the end of the block
+ * @noStrict
+ */
+
+
+function testcase() {
+ var funObj = new Function("a", "eval('public = 1;'); anotherVariable = 2; 'use strict';");
+ funObj();
+ return public === 1 && anotherVariable === 2;
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-4-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-4-s.js
new file mode 100644
index 000000000..c49e0c693
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-4-s.js
@@ -0,0 +1,33 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-4-s.js
+ * @description Strict Mode - Use Strict Directive Prologue is ''use strict ';' which the last character is space
+ * @noStrict
+ */
+
+
+function testcase() {
+ "use strict ";
+ var public = 1;
+ return public === 1;
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-5-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-5-s.js
new file mode 100644
index 000000000..7d8461bca
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-5-s.js
@@ -0,0 +1,38 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-5-s.js
+ * @description Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears at the beginning of the block
+ * @noStrict
+ */
+
+
+function testcase() {
+ "use strict";
+ try {
+ eval("var public = 1;");
+ return false;
+ } catch (e) {
+ return e instanceof SyntaxError;
+ }
+
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-5gs.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-5gs.js
new file mode 100644
index 000000000..a3b27fa1a
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-5gs.js
@@ -0,0 +1,12 @@
+
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-5gs.js
+ * @description Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears at the start of the code
+ * @noStrict
+ * @negative ^((?!NotEarlyError).)*$
+ */
+
+"use strict";
+throw NotEarlyError;
+var public = 1;
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-6-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-6-s.js
new file mode 100644
index 000000000..a44e7efa2
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-6-s.js
@@ -0,0 +1,34 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-6-s.js
+ * @description Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears in the middle of the block
+ * @noStrict
+ */
+
+
+function testcase() {
+ var interface = 2;
+ "use strict";
+ var public = 1;
+ return public === 1 && interface === 2;
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-7-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-7-s.js
new file mode 100644
index 000000000..753cf8c77
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-7-s.js
@@ -0,0 +1,33 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-7-s.js
+ * @description Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears at the end of the block
+ * @noStrict
+ */
+
+
+function testcase() {
+ var public = 1;
+ return public === 1;
+ "use strict";
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-8-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-8-s.js
new file mode 100644
index 000000000..5b3a0eb46
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-8-s.js
@@ -0,0 +1,38 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-8-s.js
+ * @description Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears twice in the directive prologue
+ * @noStrict
+ */
+
+
+function testcase() {
+ "use strict";
+ "use strict";
+ try {
+ eval("var public = 1;");
+ return false;
+ } catch (e) {
+ return e instanceof SyntaxError;
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-8gs.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-8gs.js
new file mode 100644
index 000000000..9b942759a
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-8gs.js
@@ -0,0 +1,13 @@
+
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-8gs.js
+ * @description Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears twice in the code
+ * @noStrict
+ * @negative ^((?!NotEarlyError).)*$
+ */
+
+"use strict";
+"use strict";
+throw NotEarlyError;
+var public = 1;
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-9-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-9-s.js
new file mode 100644
index 000000000..050069cae
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.1/10.1.1/10.1.1-9-s.js
@@ -0,0 +1,33 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.1/10.1.1/10.1.1-9-s.js
+ * @description Strict Mode - Use Strict Directive Prologue is ''Use strict';' in which the first character is uppercase
+ * @noStrict
+ */
+
+
+function testcase() {
+ "Use strict";
+ var public = 1;
+ return public === 1;
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-16-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-16-s.js
new file mode 100644
index 000000000..75ef8d234
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-16-s.js
@@ -0,0 +1,38 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-16-s.js
+ * @description Strict Mode - TypeError is thrown when changing the value of a Value Property of the Global Object under strict mode (NaN)
+ * @onlyStrict
+ */
+
+
+function testcase() {
+ "use strict";
+
+ try {
+ NaN = 12;
+ return false;
+ } catch (e) {
+ return e instanceof TypeError;
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-18-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-18-s.js
new file mode 100644
index 000000000..9d60d0c63
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-18-s.js
@@ -0,0 +1,37 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-18-s.js
+ * @description Strict Mode - TypeError is thrown when changing the value of a Value Property of the Global Object under strict mode (undefined)
+ * @onlyStrict
+ */
+
+
+function testcase() {
+ "use strict";
+ try {
+ undefined = 12;
+ return false;
+ } catch (e) {
+ return e instanceof TypeError;
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-22-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-22-s.js
new file mode 100644
index 000000000..d5c0e0f77
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-22-s.js
@@ -0,0 +1,39 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-22-s.js
+ * @description Strict Mode - TypeError is not thrown when changing the value of the Constructor Properties of the Global Object under strict mode (Object)
+ * @onlyStrict
+ */
+
+
+function testcase() {
+ "use strict";
+ var objBak = Object;
+
+ try {
+ Object = 12;
+ return true;
+ } finally {
+ Object = objBak;
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-27-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-27-s.js
new file mode 100644
index 000000000..715d223fa
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-27-s.js
@@ -0,0 +1,39 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-27-s.js
+ * @description Strict Mode - TypeError is not thrown when changing the value of the Constructor Properties of the Global Object under strict mode (Number)
+ * @onlyStrict
+ */
+
+
+function testcase() {
+ "use strict";
+
+ var numBak = Number;
+ try {
+ Number = 12;
+ return true;
+ } finally {
+ Number = numBak;
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-1-1.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-1-1.js
new file mode 100644
index 000000000..2def5b23b
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-1-1.js
@@ -0,0 +1,41 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.4/10.4.2/10.4.2-1-1.js
+ * @description Indirect call to eval has context set to global context
+ */
+
+var __10_4_2_1_1_1 = "str";
+function testcase() {
+ try {
+
+ var _eval = eval;
+ var __10_4_2_1_1_1 = "str1";
+ if(_eval("\'str\' === __10_4_2_1_1_1") === true && // indirect eval
+ eval("\'str1\' === __10_4_2_1_1_1") === true) { // direct eval
+ return true;
+ }
+ return false;
+ } finally {
+ delete this.__10_4_2_1_1_1;
+ }
+}
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-1-2.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-1-2.js
new file mode 100644
index 000000000..546d54764
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-1-2.js
@@ -0,0 +1,46 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.4/10.4.2/10.4.2-1-2.js
+ * @description Indirect call to eval has context set to global context (nested function)
+ */
+
+var __10_4_2_1_2 = "str";
+function testcase() {
+ try {
+
+ var _eval = eval;
+ var __10_4_2_1_2 = "str1";
+ function foo() {
+ var __10_4_2_1_2 = "str2";
+ if(_eval("\'str\' === __10_4_2_1_2") === true && // indirect eval
+ eval("\'str2\' === __10_4_2_1_2") === true) { // direct eval
+ return true;
+ } else {
+ return false;
+ }
+ }
+ return foo();
+ } finally {
+ delete this.__10_4_2_1_1_2;
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-1-3.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-1-3.js
new file mode 100644
index 000000000..15f043d79
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-1-3.js
@@ -0,0 +1,49 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.4/10.4.2/10.4.2-1-3.js
+ * @description Indirect call to eval has context set to global context (catch block)
+ */
+
+var __10_4_2_1_3 = "str";
+function testcase() {
+
+ try {
+
+ var _eval = eval;
+ var __10_4_2_1_3 = "str1";
+ try {
+ throw "error";
+ }
+ catch (e) {
+ var __10_4_2_1_3 = "str2";
+ if (_eval("\'str\' === __10_4_2_1_3") === true && // indirect eval
+ eval("\'str2\' === __10_4_2_1_3") === true) { // direct eval
+ return true;
+ } else {
+ return false;
+ }
+ }
+ } finally {
+ delete this.__10_4_2_1_3;
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-1-4.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-1-4.js
new file mode 100644
index 000000000..e49c2797b
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-1-4.js
@@ -0,0 +1,44 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.4/10.4.2/10.4.2-1-4.js
+ * @description Indirect call to eval has context set to global context (with block)
+ */
+
+var __10_4_2_1_4 = "str";
+function testcase() {
+ try {
+ var o = new Object();
+ o.__10_4_2_1_4 = "str2";
+ var _eval = eval;
+ var __10_4_2_1_4 = "str1";
+ with (o) {
+ if (_eval("\'str\' === __10_4_2_1_4") === true && // indirect eval
+ eval("\'str2\' === __10_4_2_1_4") === true) { // direct eval
+ return true;
+ }
+ }
+ return false;
+ } finally {
+ delete this.__10_4_2_1_4;
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-1-5.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-1-5.js
new file mode 100644
index 000000000..38f0c81d9
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-1-5.js
@@ -0,0 +1,42 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.4/10.4.2/10.4.2-1-5.js
+ * @description Indirect call to eval has context set to global context (inside another eval)
+ */
+
+var __10_4_2_1_5 = "str";
+function testcase() {
+ try {
+
+ var __10_4_2_1_5 = "str1";
+ var r = eval("\
+ var _eval = eval; \
+ var __10_4_2_1_5 = \'str2\'; \
+ _eval(\"\'str\' === __10_4_2_1_5 \") && \
+ eval(\"\'str2\' === __10_4_2_1_5\")\
+ ");
+ return r;
+ } finally {
+ delete this.__10_4_2_1_5;
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-2-c-1.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-2-c-1.js
new file mode 100644
index 000000000..c829fd0db
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-2-c-1.js
@@ -0,0 +1,35 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.4/10.4.2/10.4.2-2-c-1.js
+ * @description Direct val code in non-strict mode - can instantiate variable in calling context
+ */
+
+
+function testcase() {
+ var x = 0;
+ return function inner() {
+ eval("var x = 1");
+ if (x === 1)
+ return true;
+ } ();
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-2-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-2-s.js
new file mode 100644
index 000000000..ae31ffd64
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-2-s.js
@@ -0,0 +1,33 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.4/10.4.2/10.4.2-2-s.js
+ * @description Strict Mode - Strict mode eval code cannot instantiate functions in the variable environment of the caller to eval
+ * @onlyStrict
+ */
+
+
+function testcase() {
+ "use strict";
+ eval("(function fun(x){ return x })(10)");
+ return typeof (fun) === "undefined";
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-3-c-1-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-3-c-1-s.js
new file mode 100644
index 000000000..c2a525420
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-3-c-1-s.js
@@ -0,0 +1,36 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.4/10.4.2/10.4.2-3-c-1-s.js
+ * @description Direct eval code in strict mode - cannot instantiate variable in the variable environment of the calling context
+ * @onlyStrict
+ */
+
+
+function testcase() {
+ var _10_4_2_3_c_1_s = 0;
+ function _10_4_2_3_c_1_sFunc() {
+ eval("'use strict';var _10_4_2_3_c_1_s = 1");
+ return _10_4_2_3_c_1_s===0;
+ }
+ return _10_4_2_3_c_1_sFunc();
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-3-c-2-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-3-c-2-s.js
new file mode 100644
index 000000000..139532f62
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2-3-c-2-s.js
@@ -0,0 +1,37 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.4/10.4.2/10.4.2-3-c-2-s.js
+ * @description Calling code in strict mode - eval cannot instantiate variable in the variable environment of the calling context
+ * @onlyStrict
+ */
+
+
+function testcase() {
+ var _10_4_2_3_c_2_s = 0;
+ function _10_4_2_3_c_2_sFunc() {
+ 'use strict';
+ eval("var _10_4_2_3_c_2_s = 1");
+ return _10_4_2_3_c_2_s===0;
+ }
+ return _10_4_2_3_c_2_sFunc();
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2.1-1gs.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2.1-1gs.js
new file mode 100644
index 000000000..dbf24666c
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2.1-1gs.js
@@ -0,0 +1,13 @@
+
+
+/**
+ * @path ch10/10.4/10.4.2/10.4.2.1-1gs.js
+ * @description Strict Mode - eval code cannot instantiate variable in the variable environment of the calling context that invoked the eval if the code of the calling context is strict code
+ * @onlyStrict
+ * @negative ^((?!NotEarlyError).)*$
+ */
+
+"use strict";
+eval("var x = 7;");
+x = 9;
+throw NotEarlyError;
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2.1-2-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2.1-2-s.js
new file mode 100644
index 000000000..1a800b6db
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2.1-2-s.js
@@ -0,0 +1,34 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.4/10.4.2/10.4.2.1-2-s.js
+ * @description Strict Mode - Strict mode eval code cannot instantiate functions in the variable environment of the caller to eval
+ * @onlyStrict
+ */
+
+
+function testcase() {
+ "use strict";
+
+ eval("function _10_4_2_1_2_fun(){}");
+ return typeof _10_4_2_1_2_fun === "undefined";
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2.1-4-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2.1-4-s.js
new file mode 100644
index 000000000..853623d72
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.2/10.4.2.1-4-s.js
@@ -0,0 +1,33 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.4/10.4.2/10.4.2.1-4-s.js
+ * @description Strict Mode - Strict mode eval code cannot instantiate functions in the variable environment of the caller to eval which is contained in strict mode code
+ * @onlyStrict
+ */
+
+
+function testcase() {
+
+ eval("'use strict'; function _10_4_2_1_4_fun(){}");
+ return typeof _10_4_2_1_4_fun === "undefined";
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-1-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-1-s.js
new file mode 100644
index 000000000..2ab09a020
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-1-s.js
@@ -0,0 +1,44 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.4/10.4.3/10.4.3-1-1-s.js
+ * @description this is not coerced to an object in strict mode (Number)
+ * @noStrict
+ */
+
+
+function testcase() {
+
+ function foo()
+ {
+ 'use strict';
+ return typeof(this);
+ }
+
+ function bar()
+ {
+ return typeof(this);
+ }
+
+
+ return foo.call(1) === 'number' && bar.call(1) === 'object';
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-2-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-2-s.js
new file mode 100644
index 000000000..02a6ea325
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-2-s.js
@@ -0,0 +1,44 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.4/10.4.3/10.4.3-1-2-s.js
+ * @description this is not coerced to an object in strict mode (string)
+ * @noStrict
+ */
+
+
+function testcase() {
+
+ function foo()
+ {
+ 'use strict';
+ return typeof(this);
+ }
+
+ function bar()
+ {
+ return typeof(this);
+ }
+
+
+ return foo.call('1') === 'string' && bar.call('1') === 'object';
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-3-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-3-s.js
new file mode 100644
index 000000000..b0401062d
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-3-s.js
@@ -0,0 +1,42 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.4/10.4.3/10.4.3-1-3-s.js
+ * @description this is not coerced to an object in strict mode (undefined)
+ * @noStrict
+ */
+
+
+function testcase() {
+
+ function foo()
+ {
+ 'use strict';
+ return typeof(this);
+ }
+
+ function bar()
+ {
+ return typeof(this);
+ }
+ return foo.call(undefined) === 'undefined' && bar.call() === 'object';
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-4-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-4-s.js
new file mode 100644
index 000000000..36b345d65
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-4-s.js
@@ -0,0 +1,44 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.4/10.4.3/10.4.3-1-4-s.js
+ * @description this is not coerced to an object in strict mode (boolean)
+ * @noStrict
+ */
+
+
+function testcase() {
+
+ function foo()
+ {
+ 'use strict';
+ return typeof(this);
+ }
+
+ function bar()
+ {
+ return typeof(this);
+ }
+
+
+ return foo.call(true) === 'boolean' && bar.call(true) === 'object';
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-5-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-5-s.js
new file mode 100644
index 000000000..2907c3756
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-5-s.js
@@ -0,0 +1,47 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.4/10.4.3/10.4.3-1-5-s.js
+ * @description this is not coerced to an object in strict mode (function)
+ * @onlyStrict
+ */
+
+
+function testcase() {
+
+ function foo()
+ {
+ 'use strict';
+ return typeof(this);
+ }
+
+ function bar()
+ {
+ return typeof(this);
+ }
+
+ function foobar()
+ {
+ }
+
+ return foo.call(foobar) === 'function' && bar.call(foobar) === 'function';
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-7-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-7-s.js
new file mode 100644
index 000000000..607c55ffc
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-7-s.js
@@ -0,0 +1,35 @@
+/// Copyright (c) 2011 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.4/10.4.3/10.4.3-1-7-s.js
+ * @description Strict Mode - checking 'this' (FunctionDeclaration defined within strict mode)
+ * @onlyStrict
+ */
+
+
+function testcase() {
+"use strict";
+function f() {
+ return typeof this;
+}
+return f() === "undefined";
+}
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-7gs.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-7gs.js
new file mode 100644
index 000000000..e3657274e
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-7gs.js
@@ -0,0 +1,33 @@
+/// Copyright (c) 2011 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.4/10.4.3/10.4.3-1-7gs.js
+ * @description Strict - checking 'this' from a global scope (FunctionDeclaration defined within strict mode)
+ * @onlyStrict
+ */
+
+"use strict";
+function f() {
+ return typeof this;
+}
+if (f() !== "undefined") {
+ throw "'this' had incorrect value!";
+}
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-8-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-8-s.js
new file mode 100644
index 000000000..a987a0e3d
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-8-s.js
@@ -0,0 +1,35 @@
+/// Copyright (c) 2011 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.4/10.4.3/10.4.3-1-8-s.js
+ * @description Strict Mode - checking 'this' (FunctionDeclaration includes strict directive prologue)
+ * @onlyStrict
+ */
+
+
+function testcase() {
+function f() {
+ "use strict";
+ return typeof this;
+}
+return f() === "undefined";
+}
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-8gs.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-8gs.js
new file mode 100644
index 000000000..4c3172c61
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.4/10.4.3/10.4.3-1-8gs.js
@@ -0,0 +1,33 @@
+/// Copyright (c) 2011 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.4/10.4.3/10.4.3-1-8gs.js
+ * @description Strict - checking 'this' from a global scope (FunctionDeclaration includes strict directive prologue)
+ * @onlyStrict
+ */
+
+function f() {
+ "use strict";
+ return typeof this;
+}
+if (f() !== "undefined") {
+ throw "'this' had incorrect value!";
+}
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-1-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-1-s.js
new file mode 100644
index 000000000..09a26e8b5
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-1-s.js
@@ -0,0 +1,39 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.5/10.5-1-s.js
+ * @description Strict Mode - arguments object is immutable
+ * @onlyStrict
+ */
+
+
+function testcase() {
+ "use strict";
+ try {
+ (function fun() {
+ eval("arguments = 10");
+ })(30);
+ return false;
+ } catch (e) {
+ return (e instanceof SyntaxError);
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-1gs.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-1gs.js
new file mode 100644
index 000000000..f0f671743
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-1gs.js
@@ -0,0 +1,16 @@
+
+
+/**
+ * @path ch10/10.5/10.5-1gs.js
+ * @description Strict Mode - arguments cannot be assigned to in a strict function
+ * @onlyStrict
+ * @negative ^((?!NotEarlyError).)*$
+ */
+
+"use strict";
+throw NotEarlyError;
+
+function f_10_5_1_gs(){
+ arguments = 7;
+}
+
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-7-b-1-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-7-b-1-s.js
new file mode 100644
index 000000000..5d3ffa0eb
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-7-b-1-s.js
@@ -0,0 +1,38 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.5/10.5-7-b-1-s.js
+ * @description Strict Mode - arguments object is immutable in eval'ed functions
+ * @onlyStrict
+ */
+
+
+function testcase() {
+ "use strict";
+
+ try {
+ eval("(function _10_5_7_b_1_fun() { arguments = 10;} ());");
+ return false;
+ } catch (e) {
+ return e instanceof SyntaxError;
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-7-b-2-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-7-b-2-s.js
new file mode 100644
index 000000000..4c68b8716
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-7-b-2-s.js
@@ -0,0 +1,38 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.5/10.5-7-b-2-s.js
+ * @description Strict Mode - arguments object index assignment is allowed
+ * @onlyStrict
+ */
+
+
+function testcase() {
+ "use strict";
+
+ function _10_5_7_b_2_fun() {
+ arguments[7] = 12;
+ return arguments[7] === 12;
+ };
+
+ return _10_5_7_b_2_fun(30);
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-7-b-3-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-7-b-3-s.js
new file mode 100644
index 000000000..28001f91b
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-7-b-3-s.js
@@ -0,0 +1,38 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.5/10.5-7-b-3-s.js
+ * @description Strict Mode - Adding property to the arguments object successful under strict mode
+ * @onlyStrict
+ */
+
+
+function testcase() {
+ "use strict";
+
+ function _10_5_7_b_3_fun() {
+ arguments[1] = 12;
+ return arguments[0] = 30 && arguments[1] === 12;
+ };
+
+ return _10_5_7_b_3_fun(30);
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-7-b-4-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-7-b-4-s.js
new file mode 100644
index 000000000..6e9803ea6
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.5/10.5-7-b-4-s.js
@@ -0,0 +1,39 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.5/10.5-7-b-4-s.js
+ * @description Strict Mode - Deleting property of the arguments object successful under strict mode
+ * @onlyStrict
+ */
+
+
+function testcase() {
+ "use strict";
+
+ function _10_5_7_b_4_fun() {
+ var _10_5_7_b_4_1 = arguments[0] === 30 && arguments[1] === 12;
+ delete arguments[1];
+ var _10_5_7_b_4_2 = arguments[0] === 30 && typeof arguments[1] === "undefined";
+ return _10_5_7_b_4_1 && _10_5_7_b_4_2;
+ };
+ return _10_5_7_b_4_fun(30, 12);
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-10-c-ii-1-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-10-c-ii-1-s.js
new file mode 100644
index 000000000..33d199f9e
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-10-c-ii-1-s.js
@@ -0,0 +1,37 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-10-c-ii-1-s.js
+ * @description arguments[i] remains same after changing actual parameters in strict mode
+ * @onlyStrict
+ */
+
+
+function testcase() {
+ function foo(a,b,c)
+ {
+ 'use strict';
+ a = 1; b = 'str'; c = 2.1;
+ return (arguments[0] === 10 && arguments[1] === 'sss' && arguments[2] === 1);
+ }
+ return foo(10, 'sss', 1);
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-10-c-ii-1.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-10-c-ii-1.js
new file mode 100644
index 000000000..9e24b15ea
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-10-c-ii-1.js
@@ -0,0 +1,36 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-10-c-ii-1.js
+ * @description arguments[i] change with actual parameters
+ */
+
+
+function testcase() {
+ function foo(a,b,c)
+ {
+ a = 1; b = 'str'; c = 2.1;
+ if(arguments[0] === 1 && arguments[1] === 'str' && arguments[2] === 2.1)
+ return true;
+ }
+ return foo(10,'sss',1);
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-10-c-ii-2-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-10-c-ii-2-s.js
new file mode 100644
index 000000000..1a3869536
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-10-c-ii-2-s.js
@@ -0,0 +1,38 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-10-c-ii-2-s.js
+ * @description arguments[i] doesn't map to actual parameters in strict mode
+ * @onlyStrict
+ */
+
+
+function testcase() {
+
+ function foo(a,b,c)
+ {
+ 'use strict';
+ arguments[0] = 1; arguments[1] = 'str'; arguments[2] = 2.1;
+ return 10 === a && 'sss' === b && 1 === c;
+ }
+ return foo(10,'sss',1);
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-10-c-ii-2.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-10-c-ii-2.js
new file mode 100644
index 000000000..f69c41d76
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-10-c-ii-2.js
@@ -0,0 +1,37 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-10-c-ii-2.js
+ * @description arguments[i] map to actual parameter
+ */
+
+
+function testcase() {
+
+ function foo(a,b,c)
+ {
+ arguments[0] = 1; arguments[1] = 'str'; arguments[2] = 2.1;
+ if(1 === a && 'str' === b && 2.1 === c)
+ return true;
+ }
+ return foo(10,'sss',1);
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-11-b-1.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-11-b-1.js
new file mode 100644
index 000000000..353312c49
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-11-b-1.js
@@ -0,0 +1,69 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-11-b-1.js
+ * @description Arguments Object has index property '0' as its own property, it shoulde be writable, enumerable, configurable and does not invoke the setter defined on Object.prototype[0] (Step 11.b)
+ */
+
+
+function testcase() {
+ try {
+ var data = "data";
+ var getFunc = function () {
+ return data;
+ };
+
+ var setFunc = function (value) {
+ data = value;
+ };
+
+ Object.defineProperty(Object.prototype, "0", {
+ get: getFunc,
+ set: setFunc,
+ configurable: true
+ });
+
+ var argObj = (function () { return arguments })(1);
+
+ var verifyValue = false;
+ verifyValue = (argObj[0] === 1);
+
+ var verifyEnumerable = false;
+ for (var p in argObj) {
+ if (p === "0" && argObj.hasOwnProperty("0")) {
+ verifyEnumerable = true;
+ }
+ }
+
+ var verifyWritable = false;
+ argObj[0] = 1001;
+ verifyWritable = (argObj[0] === 1001);
+
+ var verifyConfigurable = false;
+ delete argObj[0];
+ verifyConfigurable = argObj.hasOwnProperty("0");
+
+ return verifyValue && verifyWritable && verifyEnumerable && !verifyConfigurable && data === "data";
+ } finally {
+ delete Object.prototype[0];
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-12-1.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-12-1.js
new file mode 100644
index 000000000..af2ff5d28
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-12-1.js
@@ -0,0 +1,36 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-12-1.js
+ * @description Accessing callee property of Arguments object is allowed
+ */
+
+
+function testcase() {
+ try
+ {
+ arguments.callee;
+ return true;
+ }
+ catch (e) {
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-12-2.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-12-2.js
new file mode 100644
index 000000000..b5ca503bd
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-12-2.js
@@ -0,0 +1,37 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-12-2.js
+ * @description arguments.callee has correct attributes
+ */
+
+
+function testcase() {
+
+ var desc = Object.getOwnPropertyDescriptor(arguments,"callee");
+ if(desc.configurable === true &&
+ desc.enumerable === false &&
+ desc.writable === true &&
+ desc.hasOwnProperty('get') == false &&
+ desc.hasOwnProperty('put') == false)
+ return true;
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-1.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-1.js
new file mode 100644
index 000000000..cc1ddc888
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-1.js
@@ -0,0 +1,36 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-13-1.js
+ * @description Accessing caller property of Arguments object is allowed
+ */
+
+
+function testcase() {
+ try
+ {
+ arguments.caller;
+ return true;
+ }
+ catch (e) {
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-a-1.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-a-1.js
new file mode 100644
index 000000000..8d42f92ad
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-a-1.js
@@ -0,0 +1,60 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-13-a-1.js
+ * @description In non-strict mode, arguments object should have its own 'callee' property defined (Step 13.a)
+ */
+
+
+function testcase() {
+ try {
+ Object.defineProperty(Object.prototype, "callee", {
+ value: 1,
+ writable: false,
+ configurable: true
+ });
+
+ var argObj = (function () { return arguments })();
+
+ var verifyValue = false;
+ verifyValue = typeof argObj.callee === "function";
+
+ var verifyWritable = false;
+ argObj.callee = 1001;
+ verifyWritable = (argObj.callee === 1001);
+
+ var verifyEnumerable = false;
+ for (var p in argObj) {
+ if (p === "callee" && argObj.hasOwnProperty("callee")) {
+ verifyEnumerable = true;
+ }
+ }
+
+ var verifyConfigurable = false;
+ delete argObj.callee;
+ verifyConfigurable = argObj.hasOwnProperty("callee");
+
+ return verifyValue && verifyWritable && !verifyEnumerable && !verifyConfigurable;
+ } finally {
+ delete Object.prototype.callee;
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-b-1-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-b-1-s.js
new file mode 100644
index 000000000..ca593260a
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-b-1-s.js
@@ -0,0 +1,39 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-13-b-1-s.js
+ * @description Accessing caller property of Arguments object throws TypeError in strict mode
+ * @onlyStrict
+ */
+
+
+function testcase() {
+ 'use strict';
+ try
+ {
+ arguments.caller;
+ }
+ catch (e) {
+ if(e instanceof TypeError)
+ return true;
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-b-2-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-b-2-s.js
new file mode 100644
index 000000000..cc3dfc301
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-b-2-s.js
@@ -0,0 +1,34 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-13-b-2-s.js
+ * @description arguments.caller exists in strict mode
+ * @onlyStrict
+ */
+
+
+function testcase() {
+
+ 'use strict';
+ var desc = Object.getOwnPropertyDescriptor(arguments,"caller");
+ return desc!== undefined;
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-b-3-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-b-3-s.js
new file mode 100644
index 000000000..672f93c95
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-b-3-s.js
@@ -0,0 +1,41 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-13-b-3-s.js
+ * @description arguments.caller is non-configurable in strict mode
+ * @onlyStrict
+ */
+
+
+function testcase() {
+
+ 'use strict';
+ var desc = Object.getOwnPropertyDescriptor(arguments,"caller");
+
+ return (desc.configurable === false &&
+ desc.enumerable === false &&
+ desc.hasOwnProperty('value') == false &&
+ desc.hasOwnProperty('writable') == false &&
+ desc.hasOwnProperty('get') == true &&
+ desc.hasOwnProperty('set') == true);
+
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-c-1-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-c-1-s.js
new file mode 100644
index 000000000..5e4d6d24a
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-c-1-s.js
@@ -0,0 +1,39 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-13-c-1-s.js
+ * @description Accessing callee property of Arguments object throws TypeError in strict mode
+ * @onlyStrict
+ */
+
+
+function testcase() {
+ 'use strict';
+ try
+ {
+ arguments.callee;
+ return false;
+ }
+ catch (e) {
+ return (e instanceof TypeError);
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-c-2-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-c-2-s.js
new file mode 100644
index 000000000..b402eceab
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-c-2-s.js
@@ -0,0 +1,34 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-13-c-2-s.js
+ * @description arguments.callee is exists in strict mode
+ * @onlyStrict
+ */
+
+
+function testcase() {
+
+ 'use strict';
+ var desc = Object.getOwnPropertyDescriptor(arguments,"callee");
+ return desc !== undefined;
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-c-3-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-c-3-s.js
new file mode 100644
index 000000000..504b6aedb
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-13-c-3-s.js
@@ -0,0 +1,39 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-13-c-3-s.js
+ * @description arguments.callee is non-configurable in strict mode
+ * @onlyStrict
+ */
+
+
+function testcase() {
+
+ 'use strict';
+ var desc = Object.getOwnPropertyDescriptor(arguments,"callee");
+ return (desc.configurable === false &&
+ desc.enumerable === false &&
+ desc.hasOwnProperty('value') == false &&
+ desc.hasOwnProperty('writable') == false &&
+ desc.hasOwnProperty('get') == true &&
+ desc.hasOwnProperty('set') == true);
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-14-1-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-14-1-s.js
new file mode 100644
index 000000000..dbdf7bcdc
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-14-1-s.js
@@ -0,0 +1,35 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-14-1-s.js
+ * @description Strict Mode - 'callee' exists and 'caller' exists under strict mode
+ * @onlyStrict
+ */
+
+
+function testcase() {
+ "use strict";
+ var argObj = function () {
+ return arguments;
+ } ();
+ return argObj.hasOwnProperty("callee") && argObj.hasOwnProperty("caller");
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-14-b-1-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-14-b-1-s.js
new file mode 100644
index 000000000..03549a33b
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-14-b-1-s.js
@@ -0,0 +1,43 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-14-b-1-s.js
+ * @description Strict Mode - [[Enumerable]] attribute value in 'caller' is false under strict mode
+ * @onlyStrict
+ */
+
+
+function testcase() {
+ "use strict";
+
+ var argObj = function () {
+ return arguments;
+ } ();
+
+ var verifyEnumerable = false;
+ for (var _10_6_14_b_1 in argObj) {
+ if (argObj.hasOwnProperty(_10_6_14_b_1) && _10_6_14_b_1 === "caller") {
+ verifyEnumerable = true;
+ }
+ }
+ return !verifyEnumerable && argObj.hasOwnProperty("caller");
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-14-b-4-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-14-b-4-s.js
new file mode 100644
index 000000000..70c7d43b1
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-14-b-4-s.js
@@ -0,0 +1,42 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-14-b-4-s.js
+ * @description Strict Mode - TypeError is thrown when accessing the [[Set]] attribute in 'caller' under strict mode
+ * @onlyStrict
+ */
+
+
+function testcase() {
+ "use strict";
+
+ var argObj = function () {
+ return arguments;
+ } ();
+
+ try {
+ argObj.caller = {};
+ return false;
+ } catch (e) {
+ return e instanceof TypeError;
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-14-c-1-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-14-c-1-s.js
new file mode 100644
index 000000000..4977ee5ed
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-14-c-1-s.js
@@ -0,0 +1,43 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-14-c-1-s.js
+ * @description Strict Mode - [[Enumerable]] attribute value in 'callee' is false under strict mode
+ * @onlyStrict
+ */
+
+
+function testcase() {
+ "use strict";
+
+ var argObj = function () {
+ return arguments;
+ } ();
+
+ var verifyEnumerable = false;
+ for (var _10_6_14_c_1 in argObj) {
+ if (argObj.hasOwnProperty(_10_6_14_c_1) && _10_6_14_c_1 === "callee") {
+ verifyEnumerable = true;
+ }
+ }
+ return !verifyEnumerable && argObj.hasOwnProperty("callee");
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-14-c-4-s.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-14-c-4-s.js
new file mode 100644
index 000000000..78aff0441
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-14-c-4-s.js
@@ -0,0 +1,42 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-14-c-4-s.js
+ * @description Strict Mode - TypeError is thrown when accessing the [[Set]] attribute in 'callee' under strict mode
+ * @onlyStrict
+ */
+
+
+function testcase() {
+ "use strict";
+
+ var argObj = function () {
+ return arguments;
+ } ();
+
+ try {
+ argObj.callee = {};
+ return false;
+ } catch (e) {
+ return e instanceof TypeError;
+ }
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-1gs.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-1gs.js
new file mode 100644
index 000000000..03459bab8
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-1gs.js
@@ -0,0 +1,13 @@
+
+
+/**
+ * @path ch10/10.6/10.6-1gs.js
+ * @description Strict Mode - arguments.callee cannot be accessed in a strict function, but does not throw an early error
+ * @onlyStrict
+ */
+
+"use strict";
+function f_10_6_1_gs(){
+ return arguments.callee;
+}
+
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-2gs.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-2gs.js
new file mode 100644
index 000000000..6d5581c0d
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-2gs.js
@@ -0,0 +1,15 @@
+
+
+/**
+ * @path ch10/10.6/10.6-2gs.js
+ * @description Strict Mode - arguments.callee cannot be accessed in a strict function
+ * @onlyStrict
+ * @negative .
+ */
+
+"use strict";
+function f_10_6_1_gs(){
+ return arguments.callee;
+}
+f_10_6_1_gs();
+
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-5-1.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-5-1.js
new file mode 100644
index 000000000..f72199229
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-5-1.js
@@ -0,0 +1,31 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-5-1.js
+ * @description [[Prototype]] property of Arguments is set to Object prototype object
+ */
+
+
+function testcase() {
+ if(Object.getPrototypeOf(arguments) === Object.getPrototypeOf({}))
+ return true;
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-6-1.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-6-1.js
new file mode 100644
index 000000000..ab95dcfc5
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-6-1.js
@@ -0,0 +1,32 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-6-1.js
+ * @description 'length property of arguments object exists
+ */
+
+
+function testcase() {
+
+ var desc = Object.getOwnPropertyDescriptor(arguments,"length");
+ return desc !== undefined
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-6-2.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-6-2.js
new file mode 100644
index 000000000..bcb663d8b
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-6-2.js
@@ -0,0 +1,35 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-6-2.js
+ * @description 'length' property of arguments object has correct attributes
+ */
+
+
+function testcase() {
+
+ var desc = Object.getOwnPropertyDescriptor(arguments,"length");
+ if(desc.configurable === true &&
+ desc.enumerable === false &&
+ desc.writable === true )
+ return true;
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-6-3.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-6-3.js
new file mode 100644
index 000000000..1b10e7ae9
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-6-3.js
@@ -0,0 +1,31 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-6-3.js
+ * @description 'length' property of arguments object for 0 argument function exists
+ */
+
+
+function testcase() {
+ var arguments= undefined;
+ return (function () {return arguments.length !== undefined})();
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-6-4.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-6-4.js
new file mode 100644
index 000000000..d17079161
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-6-4.js
@@ -0,0 +1,31 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-6-4.js
+ * @description 'length' property of arguments object for 0 argument function call is 0 even with formal parameters
+ */
+
+
+function testcase() {
+ var arguments= undefined;
+ return (function (a,b,c) {return arguments.length === 0})();
+ }
+runTestCase(testcase);
diff --git a/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-7-1.js b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-7-1.js
new file mode 100644
index 000000000..f22ee31b5
--- /dev/null
+++ b/external/contributions/Microsoft/ietcLatest/TestCases/ch10/10.6/10.6-7-1.js
@@ -0,0 +1,68 @@
+/// Copyright (c) 2009 Microsoft Corporation
+///
+/// Redistribution and use in source and binary forms, with or without modification, are permitted provided
+/// that the following conditions are met:
+/// * Redistributions of source code must retain the above copyright notice, this list of conditions and
+/// the following disclaimer.
+/// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+/// the following disclaimer in the documentation and/or other materials provided with the distribution.
+/// * Neither the name of Microsoft nor the names of its contributors may be used to
+/// endorse or promote products derived from this software without specific prior written permission.
+///
+/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
+/// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+/// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+/// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+/// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+/// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+/**
+ * @path ch10/10.6/10.6-7-1.js
+ * @description Arguments Object has length as its own property and does not invoke the setter defined on Object.prototype.length (Step 7)
+ */
+
+
+function testcase() {
+ try {
+ var data = "data";
+ var getFunc = function () {
+ return 12;
+ };
+
+ var setFunc = function (value) {
+ data = value;
+ };
+
+ Object.defineProperty(Object.prototype, "length", {
+ get: getFunc,
+ set: setFunc,
+ configurable: true
+ });
+
+ var verifyValue = false;
+ var argObj = (function () { return arguments })();
+ verifyValue = (argObj.length === 0);
+
+ var verifyWritable = false;
+ argObj.length = 1001;
+ verifyWritable = (argObj.length === 1001);
+
+ var verifyEnumerable = false;
+ for (var p in argObj) {
+ if (p === "length") {
+ verifyEnumerable = true;
+ }
+ }
+
+ var verifyConfigurable = false;
+ delete argObj.length;
+ verifyConfigurable = argObj.hasOwnProperty("length");
+
+ return verifyValue && verifyWritable && !verifyEnumerable && !verifyConfigurable && data === "data";
+ } finally {
+ delete Object.prototype.length;
+ }
+ }
+runTestCase(testcase);