diff --git a/test/built-ins/Array/prototype/concat/S15.4.4.4_A4.1.js b/test/built-ins/Array/prototype/concat/S15.4.4.4_A4.1.js
index d318ec6c57..a0ab2f07d7 100644
--- a/test/built-ins/Array/prototype/concat/S15.4.4.4_A4.1.js
+++ b/test/built-ins/Array/prototype/concat/S15.4.4.4_A4.1.js
@@ -21,5 +21,5 @@ for (var p in Array.prototype.concat){
 }
 
 if (result !== true) {
-  $ERROR('#2: result = true; for (p in Array.concat) { if (p === "length") result = false; }  result === true;');
+  $ERROR('#2: result = true; for (p in Array.prototype.concat) { if (p === "length") result = false; }  result === true;');
 }
diff --git a/test/built-ins/Array/prototype/join/S15.4.4.5_A6.1.js b/test/built-ins/Array/prototype/join/S15.4.4.5_A6.1.js
index c573db571e..0980d2090f 100644
--- a/test/built-ins/Array/prototype/join/S15.4.4.5_A6.1.js
+++ b/test/built-ins/Array/prototype/join/S15.4.4.5_A6.1.js
@@ -14,12 +14,12 @@ if (Array.prototype.join.propertyIsEnumerable('length') !== false) {
 
 //CHECK#2
 var result = true;
-for (var p in Array.join){
+for (var p in Array.prototype.join){
   if (p === "length") {
     result = false;
   }  
 }
 
 if (result !== true) {
-  $ERROR('#2: result = true; for (p in Array.join) { if (p === "length") result = false; }  result === true;');
+  $ERROR('#2: result = true; for (p in Array.prototype.join) { if (p === "length") result = false; }  result === true;');
 }
diff --git a/test/built-ins/Array/prototype/pop/S15.4.4.6_A5.1.js b/test/built-ins/Array/prototype/pop/S15.4.4.6_A5.1.js
index 4fe253907c..9460c82c0a 100644
--- a/test/built-ins/Array/prototype/pop/S15.4.4.6_A5.1.js
+++ b/test/built-ins/Array/prototype/pop/S15.4.4.6_A5.1.js
@@ -14,12 +14,12 @@ if (Array.prototype.pop.propertyIsEnumerable('length') !== false) {
 
 //CHECK#2
 var result = true;
-for (var p in Array.pop){
+for (var p in Array.prototype.pop){
   if (p === "length") {
     result = false;
   }  
 }
 
 if (result !== true) {
-  $ERROR('#2: result = true; for (p in Array.pop) { if (p === "length") result = false; }  result === true;');
+  $ERROR('#2: result = true; for (p in Array.prototype.pop) { if (p === "length") result = false; }  result === true;');
 }
diff --git a/test/built-ins/Array/prototype/push/S15.4.4.7_A6.1.js b/test/built-ins/Array/prototype/push/S15.4.4.7_A6.1.js
index d85a1c787a..90a12e90e1 100644
--- a/test/built-ins/Array/prototype/push/S15.4.4.7_A6.1.js
+++ b/test/built-ins/Array/prototype/push/S15.4.4.7_A6.1.js
@@ -14,12 +14,12 @@ if (Array.prototype.push.propertyIsEnumerable('length') !== false) {
 
 //CHECK#2
 var result = true;
-for (var p in Array.push){
+for (var p in Array.prototype.push){
   if (p === "length") {
     result = false;
   }  
 }
 
 if (result !== true) {
-  $ERROR('#2: result = true; for (p in Array.push) { if (p === "length") result = false; }  result === true;');
+  $ERROR('#2: result = true; for (p in Array.prototype.push) { if (p === "length") result = false; }  result === true;');
 }
diff --git a/test/built-ins/Array/prototype/reverse/S15.4.4.8_A5.1.js b/test/built-ins/Array/prototype/reverse/S15.4.4.8_A5.1.js
index e4dc84f32b..267ddba834 100644
--- a/test/built-ins/Array/prototype/reverse/S15.4.4.8_A5.1.js
+++ b/test/built-ins/Array/prototype/reverse/S15.4.4.8_A5.1.js
@@ -14,12 +14,12 @@ if (Array.prototype.reverse.propertyIsEnumerable('length') !== false) {
 
 //CHECK#2
 var result = true;
-for (p in Array.reverse){
+for (p in Array.prototype.reverse){
   if (p === "length") {
     var result = false;
   }  
 }
 
 if (result !== true) {
-  $ERROR('#2: result = true; for (p in Array.reverse) { if (p === "length") result = false; }  result === true;');
+  $ERROR('#2: result = true; for (p in Array.prototype.reverse) { if (p === "length") result = false; }  result === true;');
 }
diff --git a/test/built-ins/Array/prototype/shift/S15.4.4.9_A5.1.js b/test/built-ins/Array/prototype/shift/S15.4.4.9_A5.1.js
index 3a6b4e08bb..38652362ab 100644
--- a/test/built-ins/Array/prototype/shift/S15.4.4.9_A5.1.js
+++ b/test/built-ins/Array/prototype/shift/S15.4.4.9_A5.1.js
@@ -14,12 +14,12 @@ if (Array.prototype.shift.propertyIsEnumerable('length') !== false) {
 
 //CHECK#2
 var result = true;
-for (var p in Array.shift){
+for (var p in Array.prototype.shift){
   if (p === "length") {
     result = false;
 }  
 }
 
 if (result !== true) {
-  $ERROR('#2: result = true; for (p in Array.shift) { if (p === "length") result = false; }  result === true;');
+  $ERROR('#2: result = true; for (p in Array.prototype.shift) { if (p === "length") result = false; }  result === true;');
 }
diff --git a/test/built-ins/Array/prototype/slice/S15.4.4.10_A5.1.js b/test/built-ins/Array/prototype/slice/S15.4.4.10_A5.1.js
index 9d58a386df..a9679ef2bf 100644
--- a/test/built-ins/Array/prototype/slice/S15.4.4.10_A5.1.js
+++ b/test/built-ins/Array/prototype/slice/S15.4.4.10_A5.1.js
@@ -14,12 +14,12 @@ if (Array.prototype.slice.propertyIsEnumerable('length') !== false) {
 
 //CHECK#2
 var result = true;
-for (var p in Array.slice){
+for (var p in Array.prototype.slice){
   if (p === "length") {
     result = false;
   }  
 }
 
 if (result !== true) {
-  $ERROR('#2: result = true; for (p in Array.slice) { if (p === "length") result = false; }  result === true;');
+  $ERROR('#2: result = true; for (p in Array.prototype.slice) { if (p === "length") result = false; }  result === true;');
 }
diff --git a/test/built-ins/Array/prototype/sort/S15.4.4.11_A7.1.js b/test/built-ins/Array/prototype/sort/S15.4.4.11_A7.1.js
index 9351108970..eff900aedf 100644
--- a/test/built-ins/Array/prototype/sort/S15.4.4.11_A7.1.js
+++ b/test/built-ins/Array/prototype/sort/S15.4.4.11_A7.1.js
@@ -14,12 +14,12 @@ if (Array.prototype.sort.propertyIsEnumerable('length') !== false) {
 
 //CHECK#2
 var result = true;
-for (var p in Array.sort){
+for (var p in Array.prototype.sort){
   if (p === "length") {
     result = false;
   }  
 }
 
 if (result !== true) {
-  $ERROR('#2: result = true; for (p in Array.sort) { if (p === "length") result = false; }  result === true;');
+  $ERROR('#2: result = true; for (p in Array.prototype.sort) { if (p === "length") result = false; }  result === true;');
 }
diff --git a/test/built-ins/Array/prototype/splice/S15.4.4.12_A5.1.js b/test/built-ins/Array/prototype/splice/S15.4.4.12_A5.1.js
index 21bb149a16..5a1b9297cc 100644
--- a/test/built-ins/Array/prototype/splice/S15.4.4.12_A5.1.js
+++ b/test/built-ins/Array/prototype/splice/S15.4.4.12_A5.1.js
@@ -14,12 +14,12 @@ if (Array.prototype.splice.propertyIsEnumerable('length') !== false) {
 
 //CHECK#2
 var result = true;
-for (var p in Array.splice){
+for (var p in Array.prototype.splice){
   if (p === "length") {
     result = false;
   }  
 }
 
 if (result !== true) {
-  $ERROR('#2: result = true; for (p in Array.splice) { if (p === "length") result = false; }  result === true;');
+  $ERROR('#2: result = true; for (p in Array.prototype.splice) { if (p === "length") result = false; }  result === true;');
 }
diff --git a/test/built-ins/Array/prototype/toLocaleString/S15.4.4.3_A4.1.js b/test/built-ins/Array/prototype/toLocaleString/S15.4.4.3_A4.1.js
index eb2b1da183..7683cce5f9 100644
--- a/test/built-ins/Array/prototype/toLocaleString/S15.4.4.3_A4.1.js
+++ b/test/built-ins/Array/prototype/toLocaleString/S15.4.4.3_A4.1.js
@@ -14,12 +14,12 @@ if (Array.prototype.toLocaleString.propertyIsEnumerable('length') !== false) {
 
 //CHECK#2
 var result = true;
-for (var p in Array.toLocaleString){
+for (var p in Array.prototype.toLocaleString){
   if (p === "length") {
     result = false;
   }  
 }
 
 if (result !== true) {
-  $ERROR('#2: result = true; for (p in Array.toLocaleString) { if (p === "length") result = false; }  result === true;');
+  $ERROR('#2: result = true; for (p in Array.prototype.toLocaleString) { if (p === "length") result = false; }  result === true;');
 }
diff --git a/test/built-ins/Array/prototype/toString/S15.4.4.2_A4.1.js b/test/built-ins/Array/prototype/toString/S15.4.4.2_A4.1.js
index bbc5c139f0..401ce22396 100644
--- a/test/built-ins/Array/prototype/toString/S15.4.4.2_A4.1.js
+++ b/test/built-ins/Array/prototype/toString/S15.4.4.2_A4.1.js
@@ -14,12 +14,12 @@ if (Array.prototype.toString.propertyIsEnumerable('length') !== false) {
 
 //CHECK#2
 var result = true;
-for (var p in Array.toString){
+for (var p in Array.prototype.toString){
   if (p === "length") {
     result = false;
   }  
 }
 
 if (result !== true) {
-  $ERROR('#2: result = true; for (p in Array.toString) { if (p === "length") result = false; }  result === true;');
+  $ERROR('#2: result = true; for (p in Array.prototype.toString) { if (p === "length") result = false; }  result === true;');
 }
diff --git a/test/built-ins/Array/prototype/unshift/S15.4.4.13_A5.1.js b/test/built-ins/Array/prototype/unshift/S15.4.4.13_A5.1.js
index fdb530687f..c29476b800 100644
--- a/test/built-ins/Array/prototype/unshift/S15.4.4.13_A5.1.js
+++ b/test/built-ins/Array/prototype/unshift/S15.4.4.13_A5.1.js
@@ -14,12 +14,12 @@ if (Array.prototype.unshift.propertyIsEnumerable('length') !== false) {
 
 //CHECK#2
 var result = true;
-for (var p in Array.unshift){
+for (var p in Array.prototype.unshift){
   if (p === "length") {
     result = false;
   }  
 }
 
 if (result !== true) {
-  $ERROR('#2: result = true; for (p in Array.unshift) { if (p === "length") result = false; }  result === true;');
+  $ERROR('#2: result = true; for (p in Array.prototype.unshift) { if (p === "length") result = false; }  result === true;');
 }
diff --git a/test/built-ins/Set/set-iterator-close-after-add-failure.js b/test/built-ins/Set/set-iterator-close-after-add-failure.js
index fba50f324a..260327e08b 100644
--- a/test/built-ins/Set/set-iterator-close-after-add-failure.js
+++ b/test/built-ins/Set/set-iterator-close-after-add-failure.js
@@ -33,7 +33,9 @@ iterable[Symbol.iterator] = function() {
 };
 Set.prototype.add = function() { throw new Error(); }
 
-new Set(iterable);
+assert.throws(Error, function() {
+  new Set(iterable);
+});
 
 assert.sameValue(
   count, 1, "The iterator is closed when `Set.prototype.add` throws an error."
diff --git a/test/built-ins/global/S10.2.3_A2.2_T1.js b/test/built-ins/global/S10.2.3_A2.2_T1.js
index 8851a43a32..7de8a86ae7 100644
--- a/test/built-ins/global/S10.2.3_A2.2_T1.js
+++ b/test/built-ins/global/S10.2.3_A2.2_T1.js
@@ -5,6 +5,7 @@
 info: Global object properties have attributes { DontEnum }
 es5id: 10.2.3_A2.2_T1
 description: Function execution context - Value Properties
+flags: [noStrict]
 ---*/
 
 function test() {
diff --git a/test/built-ins/global/S10.2.3_A2.2_T2.js b/test/built-ins/global/S10.2.3_A2.2_T2.js
index 86e1fe9d22..ee07c73597 100644
--- a/test/built-ins/global/S10.2.3_A2.2_T2.js
+++ b/test/built-ins/global/S10.2.3_A2.2_T2.js
@@ -5,6 +5,7 @@
 info: Global object properties have attributes { DontEnum }
 es5id: 10.2.3_A2.2_T2
 description: Function execution context - Function Properties
+flags: [noStrict]
 ---*/
 
 function test() {
diff --git a/test/built-ins/global/S10.2.3_A2.2_T3.js b/test/built-ins/global/S10.2.3_A2.2_T3.js
index 5e1934e64c..ec0482d2ac 100644
--- a/test/built-ins/global/S10.2.3_A2.2_T3.js
+++ b/test/built-ins/global/S10.2.3_A2.2_T3.js
@@ -5,6 +5,7 @@
 info: Global object properties have attributes { DontEnum }
 es5id: 10.2.3_A2.2_T3
 description: Function execution context - Constructor Properties
+flags: [noStrict]
 ---*/
 
 function test() {
diff --git a/test/built-ins/global/S10.2.3_A2.2_T4.js b/test/built-ins/global/S10.2.3_A2.2_T4.js
index b166a659ee..4a3c5517f6 100644
--- a/test/built-ins/global/S10.2.3_A2.2_T4.js
+++ b/test/built-ins/global/S10.2.3_A2.2_T4.js
@@ -5,6 +5,7 @@
 info: Global object properties have attributes { DontEnum }
 es5id: 10.2.3_A2.2_T4
 description: Function execution context - Other Properties
+flags: [noStrict]
 ---*/
 
 function test() {
diff --git a/test/language/statements/function/13.2-12-s.js b/test/language/statements/function/13.2-12-s.js
index 7ae1f86988..81cfbeff56 100644
--- a/test/language/statements/function/13.2-12-s.js
+++ b/test/language/statements/function/13.2-12-s.js
@@ -15,6 +15,6 @@ includes: [runTestCase.js]
 
 function testcase() {
             var foo = Function("'use strict'; for (var tempIndex in this) {if (tempIndex===\"caller\") {return false;}}; return true;");
-            return foo();
+            return foo.call(foo);
 }
 runTestCase(testcase);
diff --git a/test/language/statements/function/13.2-16-s.js b/test/language/statements/function/13.2-16-s.js
index 1dc12d6102..c5d38c247f 100644
--- a/test/language/statements/function/13.2-16-s.js
+++ b/test/language/statements/function/13.2-16-s.js
@@ -15,6 +15,6 @@ includes: [runTestCase.js]
 
 function testcase() {
             var foo = new Function("'use strict'; for (var tempIndex in this) {if (tempIndex===\"arguments\") {return false;}}; return true;");
-            return foo();
+            return foo.call(foo);
 }
 runTestCase(testcase);
diff --git a/test/language/statements/function/13.2-20-s.js b/test/language/statements/function/13.2-20-s.js
index 10c457200e..ce3f3e07d5 100644
--- a/test/language/statements/function/13.2-20-s.js
+++ b/test/language/statements/function/13.2-20-s.js
@@ -15,6 +15,6 @@ includes: [runTestCase.js]
 
 function testcase() {
             var foo = Function("'use strict'; for (var tempIndex in this) {if (tempIndex===\"arguments\") {return false;}}; return true;");
-            return foo();
+            return foo.call(foo);
 }
 runTestCase(testcase);
diff --git a/test/language/statements/function/13.2-24-s.js b/test/language/statements/function/13.2-24-s.js
index 741a64cfe6..d11f299246 100644
--- a/test/language/statements/function/13.2-24-s.js
+++ b/test/language/statements/function/13.2-24-s.js
@@ -23,6 +23,6 @@ function testcase() {
                 } 
                 return true;
             }
-            return foo();
+            return foo.call(foo);
 }
 runTestCase(testcase);
diff --git a/test/language/statements/function/13.2-28-s.js b/test/language/statements/function/13.2-28-s.js
index 74293082c7..ac4f95061b 100644
--- a/test/language/statements/function/13.2-28-s.js
+++ b/test/language/statements/function/13.2-28-s.js
@@ -23,6 +23,6 @@ function testcase() {
                 } 
                 return true;
             }
-            return foo();
+            return foo.call(foo);
 }
 runTestCase(testcase);
diff --git a/test/language/statements/function/13.2-8-s.js b/test/language/statements/function/13.2-8-s.js
index 4cf836aa52..3c90e499d3 100644
--- a/test/language/statements/function/13.2-8-s.js
+++ b/test/language/statements/function/13.2-8-s.js
@@ -15,6 +15,6 @@ includes: [runTestCase.js]
 
 function testcase() {
             var foo = new Function("'use strict'; for (var tempIndex in this) {if (tempIndex===\"caller\") {return false;}}; return true;");
-            return foo();
+            return foo.call(foo);
     }
 runTestCase(testcase);