From 85b248844dc8d96df16e7b307dba450b013cbc40 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andr=C3=A9=20Bargull?= <andre.bargull@gmail.com>
Date: Fri, 17 Jul 2015 17:31:26 +0200
Subject: [PATCH] Fix test regressions

- Add missing 'negative: ReferenceError' in S7.9_A5.7_T1
- Remove stale 'negative: ReferenceError' in block-local-closure-get-before-initialization
- Remove all tail-call expressions in test/built-ins/Function
- And update code in test/built-ins/Function to simply use 'f()' instead of 'var r = f(); return r'

Fixes #383
---
 test/built-ins/Function/15.3.5.4_2-10gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-15gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-16gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-17gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-18gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-19gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-1gs.js                     | 2 +-
 test/built-ins/Function/15.3.5.4_2-20gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-21gs.js                    | 4 ++--
 test/built-ins/Function/15.3.5.4_2-22gs.js                    | 4 ++--
 test/built-ins/Function/15.3.5.4_2-23gs.js                    | 4 ++--
 test/built-ins/Function/15.3.5.4_2-24gs.js                    | 4 ++--
 test/built-ins/Function/15.3.5.4_2-25gs.js                    | 4 ++--
 test/built-ins/Function/15.3.5.4_2-26gs.js                    | 4 ++--
 test/built-ins/Function/15.3.5.4_2-27gs.js                    | 4 ++--
 test/built-ins/Function/15.3.5.4_2-28gs.js                    | 4 ++--
 test/built-ins/Function/15.3.5.4_2-29gs.js                    | 4 ++--
 test/built-ins/Function/15.3.5.4_2-2gs.js                     | 2 +-
 test/built-ins/Function/15.3.5.4_2-30gs.js                    | 4 ++--
 test/built-ins/Function/15.3.5.4_2-31gs.js                    | 4 ++--
 test/built-ins/Function/15.3.5.4_2-32gs.js                    | 4 ++--
 test/built-ins/Function/15.3.5.4_2-33gs.js                    | 4 ++--
 test/built-ins/Function/15.3.5.4_2-34gs.js                    | 4 ++--
 test/built-ins/Function/15.3.5.4_2-35gs.js                    | 4 ++--
 test/built-ins/Function/15.3.5.4_2-36gs.js                    | 4 ++--
 test/built-ins/Function/15.3.5.4_2-37gs.js                    | 4 ++--
 test/built-ins/Function/15.3.5.4_2-38gs.js                    | 4 ++--
 test/built-ins/Function/15.3.5.4_2-39gs.js                    | 3 +--
 test/built-ins/Function/15.3.5.4_2-3gs.js                     | 2 +-
 test/built-ins/Function/15.3.5.4_2-40gs.js                    | 3 +--
 test/built-ins/Function/15.3.5.4_2-41gs.js                    | 3 +--
 test/built-ins/Function/15.3.5.4_2-42gs.js                    | 3 +--
 test/built-ins/Function/15.3.5.4_2-43gs.js                    | 3 +--
 test/built-ins/Function/15.3.5.4_2-44gs.js                    | 3 +--
 test/built-ins/Function/15.3.5.4_2-45gs.js                    | 3 +--
 test/built-ins/Function/15.3.5.4_2-46gs.js                    | 3 +--
 test/built-ins/Function/15.3.5.4_2-47gs.js                    | 3 +--
 test/built-ins/Function/15.3.5.4_2-48gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-49gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-4gs.js                     | 2 +-
 test/built-ins/Function/15.3.5.4_2-50gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-51gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-52gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-53gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-54gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-55gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-56gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-57gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-58gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-59gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-5gs.js                     | 2 +-
 test/built-ins/Function/15.3.5.4_2-60gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-61gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-62gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-63gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-64gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-65gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-66gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-67gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-68gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-69gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-6gs.js                     | 2 +-
 test/built-ins/Function/15.3.5.4_2-70gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-71gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-72gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-73gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-74gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-75gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-77gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-79gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-80gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-81gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-82gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-83gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-84gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-85gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-86gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-87gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-88gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-89gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-8gs.js                     | 2 +-
 test/built-ins/Function/15.3.5.4_2-90gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-91gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-92gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-93gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-94gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-95gs.js                    | 2 +-
 test/built-ins/Function/15.3.5.4_2-97gs.js                    | 2 +-
 test/language/asi/S7.9_A5.7_T1.js                             | 4 +---
 .../const/block-local-closure-get-before-initialization.js    | 1 -
 90 files changed, 107 insertions(+), 119 deletions(-)

diff --git a/test/built-ins/Function/15.3.5.4_2-10gs.js b/test/built-ins/Function/15.3.5.4_2-10gs.js
index 54774c8787..9ca1821c93 100644
--- a/test/built-ins/Function/15.3.5.4_2-10gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-10gs.js
@@ -13,7 +13,7 @@ description: >
 flags: [noStrict]
 ---*/
 
-var f = new Function("\"use strict\";\nreturn gNonStrict();");
+var f = new Function("\"use strict\";\ngNonStrict();");
 
 assert.throws(TypeError, function() {
     f();
diff --git a/test/built-ins/Function/15.3.5.4_2-15gs.js b/test/built-ins/Function/15.3.5.4_2-15gs.js
index 53ca507672..c6a85be373 100644
--- a/test/built-ins/Function/15.3.5.4_2-15gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-15gs.js
@@ -14,7 +14,7 @@ flags: [onlyStrict]
 ---*/
 
 function f() {
-    return gNonStrict();
+    gNonStrict();
 }
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/Function/15.3.5.4_2-16gs.js b/test/built-ins/Function/15.3.5.4_2-16gs.js
index e37a53df15..82dea7f2ac 100644
--- a/test/built-ins/Function/15.3.5.4_2-16gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-16gs.js
@@ -15,7 +15,7 @@ flags: [noStrict]
 
 function f() {
     "use strict";
-    return gNonStrict();
+    gNonStrict();
 }
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/Function/15.3.5.4_2-17gs.js b/test/built-ins/Function/15.3.5.4_2-17gs.js
index 2a6ec5fe37..ca91072c6e 100644
--- a/test/built-ins/Function/15.3.5.4_2-17gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-17gs.js
@@ -14,7 +14,7 @@ flags: [onlyStrict]
 ---*/
 
 var f = function () {
-    return gNonStrict();
+    gNonStrict();
 }
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/Function/15.3.5.4_2-18gs.js b/test/built-ins/Function/15.3.5.4_2-18gs.js
index 66026b9e0b..c0e0afa66d 100644
--- a/test/built-ins/Function/15.3.5.4_2-18gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-18gs.js
@@ -15,7 +15,7 @@ flags: [noStrict]
 
 var f = function () {
     "use strict";
-    return gNonStrict();
+    gNonStrict();
 }
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/Function/15.3.5.4_2-19gs.js b/test/built-ins/Function/15.3.5.4_2-19gs.js
index 4f30216db2..2ad4e14c5a 100644
--- a/test/built-ins/Function/15.3.5.4_2-19gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-19gs.js
@@ -15,7 +15,7 @@ flags: [onlyStrict]
 
 assert.throws(TypeError, function() {
     var obj = new (function () {
-        return gNonStrict();
+        gNonStrict();
     });
 });
 
diff --git a/test/built-ins/Function/15.3.5.4_2-1gs.js b/test/built-ins/Function/15.3.5.4_2-1gs.js
index e7e07e2be9..459afdade2 100644
--- a/test/built-ins/Function/15.3.5.4_2-1gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-1gs.js
@@ -13,7 +13,7 @@ flags: [onlyStrict]
 ---*/
 
 function f() {
-    return gNonStrict();
+    gNonStrict();
 }
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/Function/15.3.5.4_2-20gs.js b/test/built-ins/Function/15.3.5.4_2-20gs.js
index 63caddf64f..7ca3d43869 100644
--- a/test/built-ins/Function/15.3.5.4_2-20gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-20gs.js
@@ -16,7 +16,7 @@ flags: [noStrict]
 assert.throws(TypeError, function() {
     var obj = new (function () {
         "use strict";
-        return gNonStrict();
+        gNonStrict();
     });
 });
 
diff --git a/test/built-ins/Function/15.3.5.4_2-21gs.js b/test/built-ins/Function/15.3.5.4_2-21gs.js
index e0f6b8d889..0cb8fb7806 100644
--- a/test/built-ins/Function/15.3.5.4_2-21gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-21gs.js
@@ -15,9 +15,9 @@ flags: [onlyStrict]
 
 function f1() {
     function f() {
-        return gNonStrict();
+        gNonStrict();
     }
-    return f();
+    f();
 }
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/Function/15.3.5.4_2-22gs.js b/test/built-ins/Function/15.3.5.4_2-22gs.js
index ce27a377dd..f0a398a2dc 100644
--- a/test/built-ins/Function/15.3.5.4_2-22gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-22gs.js
@@ -15,9 +15,9 @@ flags: [onlyStrict]
 
 function f1() {
     var f = function () {
-        return gNonStrict();
+        gNonStrict();
     }
-    return f();
+    f();
 }
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/Function/15.3.5.4_2-23gs.js b/test/built-ins/Function/15.3.5.4_2-23gs.js
index 024e80d898..207c3fd11f 100644
--- a/test/built-ins/Function/15.3.5.4_2-23gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-23gs.js
@@ -14,8 +14,8 @@ flags: [onlyStrict]
 ---*/
 
 function f1() {
-    return (function () {
-        return gNonStrict();
+    (function () {
+        gNonStrict();
     })();
 }
 
diff --git a/test/built-ins/Function/15.3.5.4_2-24gs.js b/test/built-ins/Function/15.3.5.4_2-24gs.js
index f87741dcfe..9c2c59f7cb 100644
--- a/test/built-ins/Function/15.3.5.4_2-24gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-24gs.js
@@ -15,9 +15,9 @@ flags: [onlyStrict]
 
 var f1 = function () {
     function f() {
-        return gNonStrict();
+        gNonStrict();
     }
-    return f();
+    f();
 }
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/Function/15.3.5.4_2-25gs.js b/test/built-ins/Function/15.3.5.4_2-25gs.js
index 5797458229..dc33b222bb 100644
--- a/test/built-ins/Function/15.3.5.4_2-25gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-25gs.js
@@ -15,9 +15,9 @@ flags: [onlyStrict]
 
 var f1 = function () {
     var f = function () {
-        return gNonStrict();
+        gNonStrict();
     }
-    return f();
+    f();
 }
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/Function/15.3.5.4_2-26gs.js b/test/built-ins/Function/15.3.5.4_2-26gs.js
index b992d1834a..a94922df3c 100644
--- a/test/built-ins/Function/15.3.5.4_2-26gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-26gs.js
@@ -14,8 +14,8 @@ flags: [onlyStrict]
 ---*/
 
 var f1 = function () {
-    return (function () {
-        return gNonStrict();
+    (function () {
+        gNonStrict();
     })();
 }
 
diff --git a/test/built-ins/Function/15.3.5.4_2-27gs.js b/test/built-ins/Function/15.3.5.4_2-27gs.js
index 52cabec446..904a7bd4ee 100644
--- a/test/built-ins/Function/15.3.5.4_2-27gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-27gs.js
@@ -16,9 +16,9 @@ flags: [onlyStrict]
 assert.throws(TypeError, function() {
     (function () {
         function f() {
-            return gNonStrict();
+            gNonStrict();
         }
-        return f();
+        f();
     })();
 });
 
diff --git a/test/built-ins/Function/15.3.5.4_2-28gs.js b/test/built-ins/Function/15.3.5.4_2-28gs.js
index aa6a6d36f6..b464b11337 100644
--- a/test/built-ins/Function/15.3.5.4_2-28gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-28gs.js
@@ -16,9 +16,9 @@ flags: [onlyStrict]
 assert.throws(TypeError, function() {
     (function () {
         var f = function () {
-            return gNonStrict();
+            gNonStrict();
         }
-        return f();
+        f();
     })();
 });
 
diff --git a/test/built-ins/Function/15.3.5.4_2-29gs.js b/test/built-ins/Function/15.3.5.4_2-29gs.js
index 2ca5aa3f54..22fdb1d46c 100644
--- a/test/built-ins/Function/15.3.5.4_2-29gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-29gs.js
@@ -15,8 +15,8 @@ flags: [onlyStrict]
 
 assert.throws(TypeError, function() {
     (function () {
-        return (function () {
-            return gNonStrict();
+        (function () {
+            gNonStrict();
         })();
     })();
 });
diff --git a/test/built-ins/Function/15.3.5.4_2-2gs.js b/test/built-ins/Function/15.3.5.4_2-2gs.js
index 0275f2fbcc..9dacf635d8 100644
--- a/test/built-ins/Function/15.3.5.4_2-2gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-2gs.js
@@ -15,7 +15,7 @@ flags: [noStrict]
 
 function f() {
     "use strict";
-    return gNonStrict();
+    gNonStrict();
 }
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/Function/15.3.5.4_2-30gs.js b/test/built-ins/Function/15.3.5.4_2-30gs.js
index e7628e0d40..e08275da4d 100644
--- a/test/built-ins/Function/15.3.5.4_2-30gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-30gs.js
@@ -16,9 +16,9 @@ flags: [noStrict]
 function f1() {
     "use strict";
     function f() {
-        return gNonStrict();
+        gNonStrict();
     }
-    return f();
+    f();
 }
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/Function/15.3.5.4_2-31gs.js b/test/built-ins/Function/15.3.5.4_2-31gs.js
index b697483c0d..a3db4fe4c0 100644
--- a/test/built-ins/Function/15.3.5.4_2-31gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-31gs.js
@@ -16,9 +16,9 @@ flags: [noStrict]
 function f1() {
     "use strict";
     var f = function () {
-        return gNonStrict();
+        gNonStrict();
     }
-    return f();
+    f();
 }
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/Function/15.3.5.4_2-32gs.js b/test/built-ins/Function/15.3.5.4_2-32gs.js
index 14da54ddb3..f13d078659 100644
--- a/test/built-ins/Function/15.3.5.4_2-32gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-32gs.js
@@ -15,8 +15,8 @@ flags: [noStrict]
 
 function f1() {
     "use strict";
-    return (function () {
-        return gNonStrict();
+    (function () {
+        gNonStrict();
     })();
 }
 
diff --git a/test/built-ins/Function/15.3.5.4_2-33gs.js b/test/built-ins/Function/15.3.5.4_2-33gs.js
index 1d97446859..165d3dc658 100644
--- a/test/built-ins/Function/15.3.5.4_2-33gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-33gs.js
@@ -16,9 +16,9 @@ flags: [noStrict]
 var f1 = function () {
     "use strict";
     function f() {
-        return gNonStrict();
+        gNonStrict();
     }
-    return f();
+    f();
 }
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/Function/15.3.5.4_2-34gs.js b/test/built-ins/Function/15.3.5.4_2-34gs.js
index d1a5c89408..40943a3417 100644
--- a/test/built-ins/Function/15.3.5.4_2-34gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-34gs.js
@@ -16,9 +16,9 @@ flags: [noStrict]
 var f1 = function () {
     "use strict";
     var f = function () {
-        return gNonStrict();
+        gNonStrict();
     }
-    return f();
+    f();
 }
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/Function/15.3.5.4_2-35gs.js b/test/built-ins/Function/15.3.5.4_2-35gs.js
index 67f14b0cac..5e99cd125f 100644
--- a/test/built-ins/Function/15.3.5.4_2-35gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-35gs.js
@@ -15,8 +15,8 @@ flags: [noStrict]
 
 var f1 = function () {
     "use strict";
-    return (function () {
-        return gNonStrict();
+    (function () {
+        gNonStrict();
     })();
 }
 
diff --git a/test/built-ins/Function/15.3.5.4_2-36gs.js b/test/built-ins/Function/15.3.5.4_2-36gs.js
index a1e5dc1d02..58cbadc416 100644
--- a/test/built-ins/Function/15.3.5.4_2-36gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-36gs.js
@@ -17,9 +17,9 @@ assert.throws(TypeError, function() {
     (function () {
         "use strict";
         function f() {
-            return gNonStrict();
+            gNonStrict();
         }
-        return f();
+        f();
     })();
 });
 
diff --git a/test/built-ins/Function/15.3.5.4_2-37gs.js b/test/built-ins/Function/15.3.5.4_2-37gs.js
index 98f8654665..72ed149653 100644
--- a/test/built-ins/Function/15.3.5.4_2-37gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-37gs.js
@@ -17,9 +17,9 @@ assert.throws(TypeError, function() {
     (function () {
         "use strict";
         var f = function () {
-            return gNonStrict();
+            gNonStrict();
         }
-        return f();
+        f();
     })();
 });
 
diff --git a/test/built-ins/Function/15.3.5.4_2-38gs.js b/test/built-ins/Function/15.3.5.4_2-38gs.js
index fcb7a674c3..f1b89caf97 100644
--- a/test/built-ins/Function/15.3.5.4_2-38gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-38gs.js
@@ -16,8 +16,8 @@ flags: [noStrict]
 assert.throws(TypeError, function() {
     (function () {
         "use strict";
-        return (function () {
-            return gNonStrict();
+        (function () {
+            gNonStrict();
         })();
     })();
 });
diff --git a/test/built-ins/Function/15.3.5.4_2-39gs.js b/test/built-ins/Function/15.3.5.4_2-39gs.js
index dce9ca72a4..061d12c405 100644
--- a/test/built-ins/Function/15.3.5.4_2-39gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-39gs.js
@@ -16,8 +16,7 @@ flags: [noStrict]
 function f1() {
     function f() {
         "use strict";
-        var r = gNonStrict();
-        return r;
+        gNonStrict();
     }
     return f();
 }
diff --git a/test/built-ins/Function/15.3.5.4_2-3gs.js b/test/built-ins/Function/15.3.5.4_2-3gs.js
index aacfb716c2..b949001d5e 100644
--- a/test/built-ins/Function/15.3.5.4_2-3gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-3gs.js
@@ -13,7 +13,7 @@ flags: [onlyStrict]
 ---*/
 
 var f = function () {
-    return gNonStrict();
+    gNonStrict();
 }
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/Function/15.3.5.4_2-40gs.js b/test/built-ins/Function/15.3.5.4_2-40gs.js
index b6ad008dcd..b4b960a194 100644
--- a/test/built-ins/Function/15.3.5.4_2-40gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-40gs.js
@@ -16,8 +16,7 @@ flags: [noStrict]
 function f1() {
     var f = function () {
         "use strict";
-        var r = gNonStrict();
-        return r;
+        gNonStrict();
     }
     return f();
 }
diff --git a/test/built-ins/Function/15.3.5.4_2-41gs.js b/test/built-ins/Function/15.3.5.4_2-41gs.js
index 81d15c87f0..92c21696af 100644
--- a/test/built-ins/Function/15.3.5.4_2-41gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-41gs.js
@@ -16,8 +16,7 @@ flags: [noStrict]
 function f1() {
     return (function () {
         "use strict";
-        var r = gNonStrict();
-        return r;
+        gNonStrict();
     })();
 }
 
diff --git a/test/built-ins/Function/15.3.5.4_2-42gs.js b/test/built-ins/Function/15.3.5.4_2-42gs.js
index 421f1aaa04..f6516079de 100644
--- a/test/built-ins/Function/15.3.5.4_2-42gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-42gs.js
@@ -16,8 +16,7 @@ flags: [noStrict]
 var f1 = function () {
     function f() {
         "use strict";
-        var r = gNonStrict();
-        return r;
+        gNonStrict();
     }
     return f();
 }
diff --git a/test/built-ins/Function/15.3.5.4_2-43gs.js b/test/built-ins/Function/15.3.5.4_2-43gs.js
index 9614b0cc75..7e9b77b150 100644
--- a/test/built-ins/Function/15.3.5.4_2-43gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-43gs.js
@@ -16,8 +16,7 @@ flags: [noStrict]
 var f1 = function () {
     var f = function () {
         "use strict";
-        var r = gNonStrict();
-        return r;
+        gNonStrict();
     }
     return f();
 }
diff --git a/test/built-ins/Function/15.3.5.4_2-44gs.js b/test/built-ins/Function/15.3.5.4_2-44gs.js
index 99b2e61a96..1f442f76d1 100644
--- a/test/built-ins/Function/15.3.5.4_2-44gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-44gs.js
@@ -16,8 +16,7 @@ flags: [noStrict]
 var f1 = function () {
     return (function () {
         "use strict";
-        var r = gNonStrict();
-        return r;
+        gNonStrict();
     })();
 }
 
diff --git a/test/built-ins/Function/15.3.5.4_2-45gs.js b/test/built-ins/Function/15.3.5.4_2-45gs.js
index 01de452815..83b3d1e342 100644
--- a/test/built-ins/Function/15.3.5.4_2-45gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-45gs.js
@@ -17,8 +17,7 @@ assert.throws(TypeError, function() {
     (function () {
         function f() {
             "use strict";
-            var r = gNonStrict();
-            return r;
+            gNonStrict();
         }
         return f();
     })();
diff --git a/test/built-ins/Function/15.3.5.4_2-46gs.js b/test/built-ins/Function/15.3.5.4_2-46gs.js
index f2aafe6fdc..081b9f097e 100644
--- a/test/built-ins/Function/15.3.5.4_2-46gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-46gs.js
@@ -17,8 +17,7 @@ assert.throws(TypeError, function() {
     (function () {
         var f = function () {
             "use strict";
-            var r = gNonStrict();
-            return r;
+            gNonStrict();
         }
         return f();
     })();
diff --git a/test/built-ins/Function/15.3.5.4_2-47gs.js b/test/built-ins/Function/15.3.5.4_2-47gs.js
index dc6f8fed98..aac409f2e4 100644
--- a/test/built-ins/Function/15.3.5.4_2-47gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-47gs.js
@@ -17,8 +17,7 @@ assert.throws(TypeError, function() {
     (function () {
         return (function () {
             "use strict";
-            var r = gNonStrict();
-            return r;
+            gNonStrict();
         })();
     })();
 });
diff --git a/test/built-ins/Function/15.3.5.4_2-48gs.js b/test/built-ins/Function/15.3.5.4_2-48gs.js
index 1af2e4b9f7..096364e5eb 100644
--- a/test/built-ins/Function/15.3.5.4_2-48gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-48gs.js
@@ -12,7 +12,7 @@ description: >
 flags: [onlyStrict]
 ---*/
 
-var o = { get foo() { return gNonStrict(); } }
+var o = { get foo() { gNonStrict(); } }
 
 assert.throws(TypeError, function() {
     o.foo;
diff --git a/test/built-ins/Function/15.3.5.4_2-49gs.js b/test/built-ins/Function/15.3.5.4_2-49gs.js
index 927e272f1e..02acd4b17d 100644
--- a/test/built-ins/Function/15.3.5.4_2-49gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-49gs.js
@@ -13,7 +13,7 @@ description: >
 flags: [noStrict]
 ---*/
 
-var o = { get foo() { "use strict"; return gNonStrict(); } }
+var o = { get foo() { "use strict"; gNonStrict(); } }
 
 assert.throws(TypeError, function() {
     o.foo;
diff --git a/test/built-ins/Function/15.3.5.4_2-4gs.js b/test/built-ins/Function/15.3.5.4_2-4gs.js
index 0cb4abe242..9f06e62839 100644
--- a/test/built-ins/Function/15.3.5.4_2-4gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-4gs.js
@@ -15,7 +15,7 @@ flags: [noStrict]
 
 var f = function () {
     "use strict";
-    return gNonStrict();
+    gNonStrict();
 }
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/Function/15.3.5.4_2-50gs.js b/test/built-ins/Function/15.3.5.4_2-50gs.js
index 2944d94575..0b5e76b43d 100644
--- a/test/built-ins/Function/15.3.5.4_2-50gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-50gs.js
@@ -12,7 +12,7 @@ description: >
 flags: [onlyStrict]
 ---*/
 
-var o = { set foo(stuff) { return gNonStrict(); } }
+var o = { set foo(stuff) { gNonStrict(); } }
 
 assert.throws(TypeError, function() {
     o.foo = 7;
diff --git a/test/built-ins/Function/15.3.5.4_2-51gs.js b/test/built-ins/Function/15.3.5.4_2-51gs.js
index 20b24eabcb..8376b22a16 100644
--- a/test/built-ins/Function/15.3.5.4_2-51gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-51gs.js
@@ -13,7 +13,7 @@ description: >
 flags: [noStrict]
 ---*/
 
-var o = { set foo(stuff) { "use strict"; return gNonStrict(); } }
+var o = { set foo(stuff) { "use strict"; gNonStrict(); } }
 
 assert.throws(TypeError, function() {
     o.foo = 8;
diff --git a/test/built-ins/Function/15.3.5.4_2-52gs.js b/test/built-ins/Function/15.3.5.4_2-52gs.js
index 0a1c95e7e2..7d501b3263 100644
--- a/test/built-ins/Function/15.3.5.4_2-52gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-52gs.js
@@ -13,7 +13,7 @@ flags: [onlyStrict]
 ---*/
 
 var o = {};
-Object.defineProperty(o, "foo",  { get: function() { return gNonStrict(); } });
+Object.defineProperty(o, "foo",  { get: function() { gNonStrict(); } });
 
 assert.throws(TypeError, function() {
     o.foo;
diff --git a/test/built-ins/Function/15.3.5.4_2-53gs.js b/test/built-ins/Function/15.3.5.4_2-53gs.js
index 3621e66fc9..59f191dd36 100644
--- a/test/built-ins/Function/15.3.5.4_2-53gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-53gs.js
@@ -14,7 +14,7 @@ flags: [noStrict]
 ---*/
 
 var o = {};
-Object.defineProperty(o, "foo", { get: function() { "use strict"; return gNonStrict(); } });
+Object.defineProperty(o, "foo", { get: function() { "use strict"; gNonStrict(); } });
 
 assert.throws(TypeError, function() {
     o.foo;
diff --git a/test/built-ins/Function/15.3.5.4_2-54gs.js b/test/built-ins/Function/15.3.5.4_2-54gs.js
index c36a6ac48a..c448b4614a 100644
--- a/test/built-ins/Function/15.3.5.4_2-54gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-54gs.js
@@ -13,7 +13,7 @@ flags: [onlyStrict]
 ---*/
 
 var o = {};
-Object.defineProperty(o, "foo", { set: function(stuff) { return gNonStrict(); } });
+Object.defineProperty(o, "foo", { set: function(stuff) { gNonStrict(); } });
 
 assert.throws(TypeError, function() {
     o.foo = 9;
diff --git a/test/built-ins/Function/15.3.5.4_2-55gs.js b/test/built-ins/Function/15.3.5.4_2-55gs.js
index cf6996582f..8956af3387 100644
--- a/test/built-ins/Function/15.3.5.4_2-55gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-55gs.js
@@ -14,7 +14,7 @@ flags: [noStrict]
 ---*/
 
 var o = {};
-Object.defineProperty(o, "foo", { set: function(stuff) { "use strict"; return gNonStrict(); } });
+Object.defineProperty(o, "foo", { set: function(stuff) { "use strict"; gNonStrict(); } });
 
 assert.throws(TypeError, function() {
     o.foo = 10;
diff --git a/test/built-ins/Function/15.3.5.4_2-56gs.js b/test/built-ins/Function/15.3.5.4_2-56gs.js
index 34ba187c77..dcabcdadf7 100644
--- a/test/built-ins/Function/15.3.5.4_2-56gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-56gs.js
@@ -13,7 +13,7 @@ description: >
 flags: [noStrict]
 ---*/
 
-function f() { "use strict"; var r = gNonStrict(); return r;};
+function f() { "use strict"; gNonStrict(); };
 function foo() { return f();}
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/Function/15.3.5.4_2-57gs.js b/test/built-ins/Function/15.3.5.4_2-57gs.js
index 3e1f155c7c..bb631b9823 100644
--- a/test/built-ins/Function/15.3.5.4_2-57gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-57gs.js
@@ -13,7 +13,7 @@ description: >
 flags: [noStrict]
 ---*/
 
-function f() { "use strict"; return gNonStrict();};
+function f() { "use strict"; gNonStrict(); };
 
 assert.throws(TypeError, function() {
     eval("f();");
diff --git a/test/built-ins/Function/15.3.5.4_2-58gs.js b/test/built-ins/Function/15.3.5.4_2-58gs.js
index df0b72fa47..fb3d9c7f6c 100644
--- a/test/built-ins/Function/15.3.5.4_2-58gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-58gs.js
@@ -13,7 +13,7 @@ description: >
 flags: [noStrict]
 ---*/
 
-function f() { "use strict"; var r = gNonStrict(); return r;};
+function f() { "use strict"; gNonStrict(); };
 
 assert.throws(TypeError, function() {
     Function("return f();")();
diff --git a/test/built-ins/Function/15.3.5.4_2-59gs.js b/test/built-ins/Function/15.3.5.4_2-59gs.js
index b8bf5e9fc2..5f0ba121e4 100644
--- a/test/built-ins/Function/15.3.5.4_2-59gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-59gs.js
@@ -13,7 +13,7 @@ description: >
 flags: [noStrict]
 ---*/
 
-function f() { "use strict"; var r = gNonStrict(); return r;};
+function f() { "use strict"; gNonStrict(); };
 
 assert.throws(TypeError, function() {
     new Function("return f();")();
diff --git a/test/built-ins/Function/15.3.5.4_2-5gs.js b/test/built-ins/Function/15.3.5.4_2-5gs.js
index 1a432f1aa1..30c0d09ad5 100644
--- a/test/built-ins/Function/15.3.5.4_2-5gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-5gs.js
@@ -15,7 +15,7 @@ flags: [onlyStrict]
 
 assert.throws(TypeError, function() {
     (function () {
-        return gNonStrict();
+        gNonStrict();
     })();
 });
 
diff --git a/test/built-ins/Function/15.3.5.4_2-60gs.js b/test/built-ins/Function/15.3.5.4_2-60gs.js
index 15c7196364..e227acaa69 100644
--- a/test/built-ins/Function/15.3.5.4_2-60gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-60gs.js
@@ -13,7 +13,7 @@ description: >
 flags: [noStrict]
 ---*/
 
-function f() { "use strict"; return gNonStrict();};
+function f() { "use strict"; gNonStrict();};
 
 assert.throws(TypeError, function() {
     f.apply();
diff --git a/test/built-ins/Function/15.3.5.4_2-61gs.js b/test/built-ins/Function/15.3.5.4_2-61gs.js
index e60e752362..0614dec6a7 100644
--- a/test/built-ins/Function/15.3.5.4_2-61gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-61gs.js
@@ -13,7 +13,7 @@ description: >
 flags: [noStrict]
 ---*/
 
-function f() { "use strict"; return gNonStrict();};
+function f() { "use strict"; gNonStrict();};
 
 assert.throws(TypeError, function() {
     f.apply(null);
diff --git a/test/built-ins/Function/15.3.5.4_2-62gs.js b/test/built-ins/Function/15.3.5.4_2-62gs.js
index c83f7a7103..d64a519e67 100644
--- a/test/built-ins/Function/15.3.5.4_2-62gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-62gs.js
@@ -13,7 +13,7 @@ description: >
 flags: [noStrict]
 ---*/
 
-function f() { "use strict"; return gNonStrict();};
+function f() { "use strict"; gNonStrict();};
 
 assert.throws(TypeError, function() {
     f.apply(undefined);
diff --git a/test/built-ins/Function/15.3.5.4_2-63gs.js b/test/built-ins/Function/15.3.5.4_2-63gs.js
index 341dae5cf6..2f72fa5905 100644
--- a/test/built-ins/Function/15.3.5.4_2-63gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-63gs.js
@@ -13,7 +13,7 @@ description: >
 flags: [noStrict]
 ---*/
 
-function f() { "use strict"; return gNonStrict();};
+function f() { "use strict"; gNonStrict();};
 var o = {};
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/Function/15.3.5.4_2-64gs.js b/test/built-ins/Function/15.3.5.4_2-64gs.js
index b81213b742..e0bd3a6628 100644
--- a/test/built-ins/Function/15.3.5.4_2-64gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-64gs.js
@@ -14,7 +14,7 @@ flags: [noStrict]
 includes: [fnGlobalObject.js]
 ---*/
 
-function f() { "use strict"; return gNonStrict();};
+function f() { "use strict"; gNonStrict();};
 
 assert.throws(TypeError, function() {
     f.apply(fnGlobalObject());
diff --git a/test/built-ins/Function/15.3.5.4_2-65gs.js b/test/built-ins/Function/15.3.5.4_2-65gs.js
index 54c22f32b7..fecf96a4aa 100644
--- a/test/built-ins/Function/15.3.5.4_2-65gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-65gs.js
@@ -13,7 +13,7 @@ description: >
 flags: [noStrict]
 ---*/
 
-function f() { "use strict"; return gNonStrict();};
+function f() { "use strict"; gNonStrict();};
 
 assert.throws(TypeError, function() {
     f.call();
diff --git a/test/built-ins/Function/15.3.5.4_2-66gs.js b/test/built-ins/Function/15.3.5.4_2-66gs.js
index d1040ee9f7..52970326ba 100644
--- a/test/built-ins/Function/15.3.5.4_2-66gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-66gs.js
@@ -13,7 +13,7 @@ description: >
 flags: [noStrict]
 ---*/
 
-function f() { "use strict"; return gNonStrict();};
+function f() { "use strict"; gNonStrict();};
 
 assert.throws(TypeError, function() {
     f.call(null);
diff --git a/test/built-ins/Function/15.3.5.4_2-67gs.js b/test/built-ins/Function/15.3.5.4_2-67gs.js
index 7bc91bb5b5..b068634064 100644
--- a/test/built-ins/Function/15.3.5.4_2-67gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-67gs.js
@@ -13,7 +13,7 @@ description: >
 flags: [noStrict]
 ---*/
 
-function f() { "use strict"; return gNonStrict();};
+function f() { "use strict"; gNonStrict();};
 
 assert.throws(TypeError, function() {
     f.call(undefined);
diff --git a/test/built-ins/Function/15.3.5.4_2-68gs.js b/test/built-ins/Function/15.3.5.4_2-68gs.js
index 4b89bb0fe8..28b090035b 100644
--- a/test/built-ins/Function/15.3.5.4_2-68gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-68gs.js
@@ -13,7 +13,7 @@ description: >
 flags: [noStrict]
 ---*/
 
-function f() { "use strict"; return gNonStrict();};
+function f() { "use strict"; gNonStrict();};
 var o = {};
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/Function/15.3.5.4_2-69gs.js b/test/built-ins/Function/15.3.5.4_2-69gs.js
index 019902fd11..b5c75d6073 100644
--- a/test/built-ins/Function/15.3.5.4_2-69gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-69gs.js
@@ -14,7 +14,7 @@ flags: [noStrict]
 includes: [fnGlobalObject.js]
 ---*/
 
-function f() { "use strict"; return gNonStrict();};
+function f() { "use strict"; gNonStrict();};
 
 assert.throws(TypeError, function() {
     f.call(fnGlobalObject());
diff --git a/test/built-ins/Function/15.3.5.4_2-6gs.js b/test/built-ins/Function/15.3.5.4_2-6gs.js
index 6850219ef7..46104e99d1 100644
--- a/test/built-ins/Function/15.3.5.4_2-6gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-6gs.js
@@ -16,7 +16,7 @@ flags: [noStrict]
 assert.throws(TypeError, function() {
     (function () {
         "use strict";
-        return gNonStrict();
+        gNonStrict();
     })();
 });
 
diff --git a/test/built-ins/Function/15.3.5.4_2-70gs.js b/test/built-ins/Function/15.3.5.4_2-70gs.js
index f9a52698d9..b3efb81725 100644
--- a/test/built-ins/Function/15.3.5.4_2-70gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-70gs.js
@@ -13,7 +13,7 @@ description: >
 flags: [noStrict]
 ---*/
 
-function f() { "use strict"; return gNonStrict();};
+function f() { "use strict"; gNonStrict();};
 
 assert.throws(TypeError, function() {
     f.bind()();
diff --git a/test/built-ins/Function/15.3.5.4_2-71gs.js b/test/built-ins/Function/15.3.5.4_2-71gs.js
index ca5999938e..ead2d4bde3 100644
--- a/test/built-ins/Function/15.3.5.4_2-71gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-71gs.js
@@ -13,7 +13,7 @@ description: >
 flags: [noStrict]
 ---*/
 
-function f() { "use strict"; return gNonStrict();};
+function f() { "use strict"; gNonStrict();};
 
 assert.throws(TypeError, function() {
     f.bind(null)();
diff --git a/test/built-ins/Function/15.3.5.4_2-72gs.js b/test/built-ins/Function/15.3.5.4_2-72gs.js
index e2c797dc73..0497d00f73 100644
--- a/test/built-ins/Function/15.3.5.4_2-72gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-72gs.js
@@ -13,7 +13,7 @@ description: >
 flags: [noStrict]
 ---*/
 
-function f() { "use strict"; return gNonStrict();};
+function f() { "use strict"; gNonStrict();};
 
 assert.throws(TypeError, function() {
     f.bind(undefined)();
diff --git a/test/built-ins/Function/15.3.5.4_2-73gs.js b/test/built-ins/Function/15.3.5.4_2-73gs.js
index 2f6d746fb8..cc02978db1 100644
--- a/test/built-ins/Function/15.3.5.4_2-73gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-73gs.js
@@ -13,7 +13,7 @@ description: >
 flags: [noStrict]
 ---*/
 
-function f() { "use strict"; return gNonStrict();};
+function f() { "use strict"; gNonStrict();};
 var o = {};
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/Function/15.3.5.4_2-74gs.js b/test/built-ins/Function/15.3.5.4_2-74gs.js
index 0daccc033a..bcc3daa30a 100644
--- a/test/built-ins/Function/15.3.5.4_2-74gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-74gs.js
@@ -14,7 +14,7 @@ flags: [noStrict]
 includes: [fnGlobalObject.js]
 ---*/
 
-function f() { "use strict"; return gNonStrict();};
+function f() { "use strict"; gNonStrict();};
 
 assert.throws(TypeError, function() {
     f.bind(fnGlobalObject())();
diff --git a/test/built-ins/Function/15.3.5.4_2-75gs.js b/test/built-ins/Function/15.3.5.4_2-75gs.js
index ef2d47e241..c2655d3959 100644
--- a/test/built-ins/Function/15.3.5.4_2-75gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-75gs.js
@@ -14,7 +14,7 @@ flags: [noStrict]
 ---*/
 
 function f() { return gNonStrict();};
-function foo() { "use strict"; return f();}
+function foo() { "use strict"; f();}
 foo(); 
 
 
diff --git a/test/built-ins/Function/15.3.5.4_2-77gs.js b/test/built-ins/Function/15.3.5.4_2-77gs.js
index eb911917d3..a2552959f5 100644
--- a/test/built-ins/Function/15.3.5.4_2-77gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-77gs.js
@@ -14,7 +14,7 @@ flags: [noStrict]
 ---*/
 
 function f() {return gNonStrict();};
-(function () {"use strict"; return Function("return f();")(); })();
+(function () {"use strict"; Function("return f();")(); })();
 
 
 function gNonStrict() {
diff --git a/test/built-ins/Function/15.3.5.4_2-79gs.js b/test/built-ins/Function/15.3.5.4_2-79gs.js
index 13aca14d98..cdd360f553 100644
--- a/test/built-ins/Function/15.3.5.4_2-79gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-79gs.js
@@ -14,7 +14,7 @@ flags: [noStrict]
 ---*/
 
 function f() { return gNonStrict();};
-(function () {"use strict"; return f.apply();})();
+(function () {"use strict"; f.apply();})();
 
 
 function gNonStrict() {
diff --git a/test/built-ins/Function/15.3.5.4_2-80gs.js b/test/built-ins/Function/15.3.5.4_2-80gs.js
index cbc51da18b..30557aac74 100644
--- a/test/built-ins/Function/15.3.5.4_2-80gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-80gs.js
@@ -14,7 +14,7 @@ flags: [noStrict]
 ---*/
 
 function f() { return gNonStrict();};
-(function () {"use strict"; return f.apply(null); })();
+(function () {"use strict"; f.apply(null); })();
 
 
 function gNonStrict() {
diff --git a/test/built-ins/Function/15.3.5.4_2-81gs.js b/test/built-ins/Function/15.3.5.4_2-81gs.js
index 648206085f..fee1d356eb 100644
--- a/test/built-ins/Function/15.3.5.4_2-81gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-81gs.js
@@ -14,7 +14,7 @@ flags: [noStrict]
 ---*/
 
 function f() { return gNonStrict();};
-(function () {"use strict"; return f.apply(undefined); })();
+(function () {"use strict"; f.apply(undefined); })();
 
 
 function gNonStrict() {
diff --git a/test/built-ins/Function/15.3.5.4_2-82gs.js b/test/built-ins/Function/15.3.5.4_2-82gs.js
index 992082f22d..43c5a23af0 100644
--- a/test/built-ins/Function/15.3.5.4_2-82gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-82gs.js
@@ -15,7 +15,7 @@ flags: [noStrict]
 
 function f() { return gNonStrict();};
 var o = {};
-(function () {"use strict"; return f.apply(o); })();
+(function () {"use strict"; f.apply(o); })();
 
 
 function gNonStrict() {
diff --git a/test/built-ins/Function/15.3.5.4_2-83gs.js b/test/built-ins/Function/15.3.5.4_2-83gs.js
index 6ed4ada3af..9c61243ff7 100644
--- a/test/built-ins/Function/15.3.5.4_2-83gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-83gs.js
@@ -15,7 +15,7 @@ includes: [fnGlobalObject.js]
 ---*/
 
 function f() { return gNonStrict();};
-(function () {"use strict"; return f.apply(fnGlobalObject()); })();
+(function () {"use strict"; f.apply(fnGlobalObject()); })();
 
 
 function gNonStrict() {
diff --git a/test/built-ins/Function/15.3.5.4_2-84gs.js b/test/built-ins/Function/15.3.5.4_2-84gs.js
index 58ad5d8955..3a7fb0d804 100644
--- a/test/built-ins/Function/15.3.5.4_2-84gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-84gs.js
@@ -14,7 +14,7 @@ flags: [noStrict]
 ---*/
 
 function f() { return gNonStrict();};
-(function () {"use strict"; return f.call();})();
+(function () {"use strict"; f.call();})();
 
 
 function gNonStrict() {
diff --git a/test/built-ins/Function/15.3.5.4_2-85gs.js b/test/built-ins/Function/15.3.5.4_2-85gs.js
index 7571f69a55..7234351d2d 100644
--- a/test/built-ins/Function/15.3.5.4_2-85gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-85gs.js
@@ -14,7 +14,7 @@ flags: [noStrict]
 ---*/
 
 function f() { return gNonStrict();};
-(function () {"use strict"; return f.call(null);})();
+(function () {"use strict"; f.call(null);})();
 
 
 function gNonStrict() {
diff --git a/test/built-ins/Function/15.3.5.4_2-86gs.js b/test/built-ins/Function/15.3.5.4_2-86gs.js
index 89f6a81a4a..0c268fe6c1 100644
--- a/test/built-ins/Function/15.3.5.4_2-86gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-86gs.js
@@ -14,7 +14,7 @@ flags: [noStrict]
 ---*/
 
 function f() { return gNonStrict();};
-(function () {"use strict"; return f.call(undefined); })();
+(function () {"use strict"; f.call(undefined); })();
 
 
 function gNonStrict() {
diff --git a/test/built-ins/Function/15.3.5.4_2-87gs.js b/test/built-ins/Function/15.3.5.4_2-87gs.js
index 691c70e13b..543b671914 100644
--- a/test/built-ins/Function/15.3.5.4_2-87gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-87gs.js
@@ -15,7 +15,7 @@ flags: [noStrict]
 
 function f() { return gNonStrict();};
 var o = {};
-(function () {"use strict"; return f.call(o); })();
+(function () {"use strict"; f.call(o); })();
 
 
 function gNonStrict() {
diff --git a/test/built-ins/Function/15.3.5.4_2-88gs.js b/test/built-ins/Function/15.3.5.4_2-88gs.js
index d6cc45660e..52a5d2e2ef 100644
--- a/test/built-ins/Function/15.3.5.4_2-88gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-88gs.js
@@ -15,7 +15,7 @@ includes: [fnGlobalObject.js]
 ---*/
 
 function f() { return gNonStrict();};
-(function () {"use strict"; return f.call(fnGlobalObject()); })();
+(function () {"use strict"; f.call(fnGlobalObject()); })();
 
 
 function gNonStrict() {
diff --git a/test/built-ins/Function/15.3.5.4_2-89gs.js b/test/built-ins/Function/15.3.5.4_2-89gs.js
index 26e641d119..6d291f9b5d 100644
--- a/test/built-ins/Function/15.3.5.4_2-89gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-89gs.js
@@ -14,7 +14,7 @@ flags: [noStrict]
 ---*/
 
 function f() { return gNonStrict();};
-(function () {"use strict"; return f.bind()();})();
+(function () {"use strict"; f.bind()();})();
 
 
 function gNonStrict() {
diff --git a/test/built-ins/Function/15.3.5.4_2-8gs.js b/test/built-ins/Function/15.3.5.4_2-8gs.js
index 9d4dc9e835..49b06536f7 100644
--- a/test/built-ins/Function/15.3.5.4_2-8gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-8gs.js
@@ -13,7 +13,7 @@ description: >
 flags: [noStrict]
 ---*/
 
-var f = Function("\"use strict\";\nreturn gNonStrict();");
+var f = Function("\"use strict\";\ngNonStrict();");
 
 assert.throws(TypeError, function() {
     f();
diff --git a/test/built-ins/Function/15.3.5.4_2-90gs.js b/test/built-ins/Function/15.3.5.4_2-90gs.js
index e0ad6159b8..c1dc7b7c6d 100644
--- a/test/built-ins/Function/15.3.5.4_2-90gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-90gs.js
@@ -14,7 +14,7 @@ flags: [noStrict]
 ---*/
 
 function f() { return gNonStrict();};
-(function () {"use strict"; return f.bind(null)(); })();
+(function () {"use strict"; f.bind(null)(); })();
 
 
 function gNonStrict() {
diff --git a/test/built-ins/Function/15.3.5.4_2-91gs.js b/test/built-ins/Function/15.3.5.4_2-91gs.js
index e0ce1ce4b4..601c42f227 100644
--- a/test/built-ins/Function/15.3.5.4_2-91gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-91gs.js
@@ -14,7 +14,7 @@ flags: [noStrict]
 ---*/
 
 function f() { return gNonStrict();};
-(function () {"use strict"; return f.bind(undefined)(); })();
+(function () {"use strict"; f.bind(undefined)(); })();
 
 
 function gNonStrict() {
diff --git a/test/built-ins/Function/15.3.5.4_2-92gs.js b/test/built-ins/Function/15.3.5.4_2-92gs.js
index 19e7a2570a..1fb4c59f56 100644
--- a/test/built-ins/Function/15.3.5.4_2-92gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-92gs.js
@@ -15,7 +15,7 @@ flags: [noStrict]
 
 function f() { return gNonStrict();};
 var o = {};
-(function () {"use strict"; return f.bind(o)(); })();
+(function () {"use strict"; f.bind(o)(); })();
 
 
 function gNonStrict() {
diff --git a/test/built-ins/Function/15.3.5.4_2-93gs.js b/test/built-ins/Function/15.3.5.4_2-93gs.js
index 7c5248b8da..9febafc478 100644
--- a/test/built-ins/Function/15.3.5.4_2-93gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-93gs.js
@@ -15,7 +15,7 @@ includes: [fnGlobalObject.js]
 ---*/
 
 function f() { return gNonStrict();};
-(function () {"use strict"; return f.bind(fnGlobalObject())(); })();
+(function () {"use strict"; f.bind(fnGlobalObject())(); })();
 
 
 function gNonStrict() {
diff --git a/test/built-ins/Function/15.3.5.4_2-94gs.js b/test/built-ins/Function/15.3.5.4_2-94gs.js
index e22101896f..4ba75cb8c2 100644
--- a/test/built-ins/Function/15.3.5.4_2-94gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-94gs.js
@@ -19,7 +19,7 @@ var gNonStrict = function () {
 
 function f() {
     "use strict";
-    return gNonStrict();
+    gNonStrict();
 }
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/Function/15.3.5.4_2-95gs.js b/test/built-ins/Function/15.3.5.4_2-95gs.js
index b50bacb6cb..ffb490ff68 100644
--- a/test/built-ins/Function/15.3.5.4_2-95gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-95gs.js
@@ -17,7 +17,7 @@ var gNonStrict = Function("return gNonStrict.caller || gNonStrict.caller.throwTy
 
 function f() {
     "use strict";
-    return gNonStrict();
+    gNonStrict();
 }
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/Function/15.3.5.4_2-97gs.js b/test/built-ins/Function/15.3.5.4_2-97gs.js
index d1a138a71d..2f4fa1085b 100644
--- a/test/built-ins/Function/15.3.5.4_2-97gs.js
+++ b/test/built-ins/Function/15.3.5.4_2-97gs.js
@@ -17,7 +17,7 @@ var gNonStrict = gNonStrictBindee.bind(null);
 
 function f() {
     "use strict";
-    return gNonStrict();
+    gNonStrict();
 }
 
 assert.throws(TypeError, function() {
diff --git a/test/language/asi/S7.9_A5.7_T1.js b/test/language/asi/S7.9_A5.7_T1.js
index feee880ad3..d61fc10158 100644
--- a/test/language/asi/S7.9_A5.7_T1.js
+++ b/test/language/asi/S7.9_A5.7_T1.js
@@ -12,14 +12,12 @@ info: >
 
 es5id: 7.9_A5.7_T1
 description: Try use Variable1 \n ++ \n ++ \n Variable2 construction
+negative: ReferenceError
 ---*/
 
 var x=0, y=0;
-
-assert.throws(ReferenceError, function() {
 var z=
 x
 ++
 ++
 y
-});
diff --git a/test/language/statements/const/block-local-closure-get-before-initialization.js b/test/language/statements/const/block-local-closure-get-before-initialization.js
index ca98d6538c..b706a39772 100644
--- a/test/language/statements/const/block-local-closure-get-before-initialization.js
+++ b/test/language/statements/const/block-local-closure-get-before-initialization.js
@@ -5,7 +5,6 @@ es6id: 13.1
 description: >
     const: block local closure [[Get]] before initialization.
     (TDZ, Temporal Dead Zone)
-negative: ReferenceError
 ---*/
 {
   function f() { return x + 1; }
-- 
GitLab