diff --git a/test/language/expressions/assignment/11.13.1-4-28-s.js b/test/language/expressions/assignment/11.13.1-4-28-s.js
deleted file mode 100644
index ef1dfed23abf1c8a556dc6db4cce597efbbdb4a5..0000000000000000000000000000000000000000
--- a/test/language/expressions/assignment/11.13.1-4-28-s.js
+++ /dev/null
@@ -1,24 +0,0 @@
-// Copyright (c) 2012 Ecma International.  All rights reserved.
-// This code is governed by the BSD license found in the LICENSE file.
-
-/*---
-es5id: 11.13.1-4-28-s
-description: >
-    Strict Mode - SyntaxError is thrown if the identifier 'eval'
-    appears as the LeftHandSideExpression of simple assignment(=)
-    under strict mode
-flags: [onlyStrict]
----*/
-
-function testcase() {
-        var err = null;
-        var blah = eval;
-        try {
-            eval("var eval = 20;");
-        } catch (e) {
-            err = e;
-        }
-        assert(err instanceof SyntaxError, 'err instanceof SyntaxError');
-        assert.sameValue(blah, eval, 'blah');
-    }
-testcase();
diff --git a/test/language/expressions/assignment/11.13.1-4-29-s.js b/test/language/expressions/assignment/11.13.1-4-29-s.js
deleted file mode 100644
index fedd11c6f004f7fb7f6ec585e6bd0516114428ba..0000000000000000000000000000000000000000
--- a/test/language/expressions/assignment/11.13.1-4-29-s.js
+++ /dev/null
@@ -1,24 +0,0 @@
-// Copyright (c) 2012 Ecma International.  All rights reserved.
-// This code is governed by the BSD license found in the LICENSE file.
-
-/*---
-es5id: 11.13.1-4-29-s
-description: >
-    Strict Mode - SyntaxError is thrown if the identifier 'arguments'
-    appears as the LeftHandSideExpression of simple assignment(=)
-    under strict mode
-flags: [onlyStrict]
----*/
-
-function testcase() {
-        var err = null;
-        var blah = arguments;
-        try {
-            eval("var arguments = 20;");
-        } catch (e) {
-            err = e;
-        }
-        assert(err instanceof SyntaxError, 'err instanceof SyntaxError');
-        assert.sameValue(blah, arguments, 'blah');
-    }
-testcase();
diff --git a/test/language/expressions/assignment/11.13.1-4-30-s.js b/test/language/expressions/assignment/11.13.1-4-30-s.js
deleted file mode 100644
index 70cdcd0af6b5901821a43552d98ebc8d0bed54f3..0000000000000000000000000000000000000000
--- a/test/language/expressions/assignment/11.13.1-4-30-s.js
+++ /dev/null
@@ -1,17 +0,0 @@
-// Copyright (c) 2012 Ecma International.  All rights reserved.
-// This code is governed by the BSD license found in the LICENSE file.
-
-/*---
-es5id: 11.13.1-4-30-s
-description: >
-    Strict Mode - SyntaxError is thrown if the identifier 'eval'
-    appears as the LeftHandSideExpression (PrimaryExpression) of
-    simple assignment(=) under strict mode
-flags: [onlyStrict]
----*/
-
-        var blah = eval;
-assert.throws(SyntaxError, function() {
-            eval("(eval) = 20;");
-});
-assert.sameValue(blah, eval, 'blah');
diff --git a/test/language/expressions/assignment/11.13.1-4-31-s.js b/test/language/expressions/assignment/11.13.1-4-31-s.js
deleted file mode 100644
index 6fc24f0034d6c792f8cfff83a23ff6bed4457cd3..0000000000000000000000000000000000000000
--- a/test/language/expressions/assignment/11.13.1-4-31-s.js
+++ /dev/null
@@ -1,24 +0,0 @@
-// Copyright (c) 2012 Ecma International.  All rights reserved.
-// This code is governed by the BSD license found in the LICENSE file.
-
-/*---
-es5id: 11.13.1-4-31-s
-description: >
-    Strict Mode - SyntaxError is thrown if the identifier 'arguments'
-    appears as the LeftHandSideExpression (PrimaryExpression) of
-    simple assignment(=) under strict mode
-flags: [onlyStrict]
----*/
-
-function testcase() {
-        var err = null;
-        var blah = arguments;
-        try {
-            eval("(arguments) = 20;");
-        } catch (e) {
-            err = e;
-        }
-        assert(err instanceof SyntaxError, 'err instanceof SyntaxError');
-        assert.sameValue(blah, arguments, 'blah');
-}
-testcase();
diff --git a/test/language/expressions/assignment/S11.13.1_A1.js b/test/language/expressions/assignment/S11.13.1_A1.js
deleted file mode 100644
index 621a5015051574fb35eef04d84e15ce5c63794a2..0000000000000000000000000000000000000000
--- a/test/language/expressions/assignment/S11.13.1_A1.js
+++ /dev/null
@@ -1,62 +0,0 @@
-// Copyright 2009 the Sputnik authors.  All rights reserved.
-// This code is governed by the BSD license found in the LICENSE file.
-
-/*---
-info: >
-    White Space and Line Terminator between LeftHandSideExpression and "=" or
-    between "=" and AssignmentExpression are allowed
-es5id: 11.13.1_A1
-description: Checking by using eval
-flags: [noStrict]
----*/
-
-//CHECK#1
-if ((eval("x\u0009=\u0009true")) !== true) {
-  $ERROR('#1: (x\\u0009=\\u0009true) === true');
-}
-
-//CHECK#2
-if ((eval("x\u000B=\u000Btrue")) !== true) {
-  $ERROR('#2: (x\\u000B=\\u000Btrue) === true');
-}
-
-//CHECK#3
-if ((eval("x\u000C=\u000Ctrue")) !== true) {
-  $ERROR('#3: (x\\u000C=\\u000Ctrue) === true');
-}
-
-//CHECK#4
-if ((eval("x\u0020=\u0020true")) !== true) {
-  $ERROR('#4: (x\\u0020=\\u0020true) === true');
-}
-
-//CHECK#5
-if ((eval("x\u00A0=\u00A0true")) !== true) {
-  $ERROR('#5: (x\\u00A0=\\u00A0true) === true');
-}
-
-//CHECK#6
-if ((eval("x\u000A=\u000Atrue")) !== true) {
-  $ERROR('#6: (x\\u000A=\\u000Atrue) === true');
-}
-
-//CHECK#7
-if ((eval("x\u000D=\u000Dtrue")) !== true) {
-  $ERROR('#7: (x\\u000D=\\u000Dtrue) === true');
-}
-
-//CHECK#8
-if ((eval("x\u2028=\u2028true")) !== true) {
-  $ERROR('#8: (x\\u2028=\\u2028true) === true');
-}
-
-//CHECK#9
-if ((eval("x\u2029=\u2029true")) !== true) {
-  $ERROR('#9: (x\\u2029=\\u2029true) === true');
-}
-
-
-//CHECK#10
-if ((eval("x\u0009\u000B\u000C\u0020\u00A0\u000A\u000D\u2028\u2029=\u0009\u000B\u000C\u0020\u00A0\u000A\u000D\u2028\u2029true")) !== true) {
-  $ERROR('#10: (x\\u0009\\u000B\\u000C\\u0020\\u00A0\\u000A\\u000D\\u2028\\u2029=\\u0009\\u000B\\u000C\\u0020\\u00A0\\u000A\\u000D\\u2028\\u2029true) === true');
-}
diff --git a/test/language/expressions/assignment/id-arguments-strict.js b/test/language/expressions/assignment/id-arguments-strict.js
new file mode 100644
index 0000000000000000000000000000000000000000..6425c52c30f050e6d57fe4f8dab438d0421536e9
--- /dev/null
+++ b/test/language/expressions/assignment/id-arguments-strict.js
@@ -0,0 +1,16 @@
+// Copyright (c) 2012 Ecma International.  All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+/*---
+es5id: 11.13.1-4-30-s
+description: >
+  Strict Mode - SyntaxError is thrown if the identifier 'arguments' appears as
+  the LeftHandSideExpression (PrimaryExpression) of simple assignment(=).
+negative:
+  phase: early
+  type: SyntaxError
+flags: [onlyStrict]
+---*/
+
+throw "Test262: This statement should not be evaluated.";
+
+(arguments) = 20;
diff --git a/test/language/expressions/assignment/id-eval-strict.js b/test/language/expressions/assignment/id-eval-strict.js
new file mode 100644
index 0000000000000000000000000000000000000000..b1ddcc19bc8809ad4adce99f3f425fa2a9b61323
--- /dev/null
+++ b/test/language/expressions/assignment/id-eval-strict.js
@@ -0,0 +1,16 @@
+// Copyright (c) 2012 Ecma International.  All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+/*---
+es5id: 11.13.1-4-30-s
+description: >
+  Strict Mode - SyntaxError is thrown if the identifier 'eval' appears as the
+  LeftHandSideExpression (PrimaryExpression) of simple assignment(=).
+negative:
+  phase: early
+  type: SyntaxError
+flags: [onlyStrict]
+---*/
+
+throw "Test262: This statement should not be evaluated.";
+
+(eval) = 20;
diff --git a/test/language/expressions/assignment/line-terminator.js b/test/language/expressions/assignment/line-terminator.js
new file mode 100644
index 0000000000000000000000000000000000000000..61f29c1ef06049f954156c6ffeccdb9355b736d8
--- /dev/null
+++ b/test/language/expressions/assignment/line-terminator.js
@@ -0,0 +1,18 @@
+// Copyright 2009 the Sputnik authors.  All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+/*---
+description: >
+    White Space between LeftHandSideExpression and "=" or between "=" and
+    AssignmentExpression is allowed
+es5id: 11.13.1_A1
+---*/
+
+var x;
+
+x
+=
+true;
+
+if (x !== true) {
+  $ERROR('#6: (x\\u000A=\\u000Atrue) === true');
+}
diff --git a/test/language/expressions/assignment/white-space.js b/test/language/expressions/assignment/white-space.js
new file mode 100644
index 0000000000000000000000000000000000000000..a9ecdc6d43007d3a53048fd7035d8b0c5dbdfb6b
--- /dev/null
+++ b/test/language/expressions/assignment/white-space.js
@@ -0,0 +1,55 @@
+// Copyright 2009 the Sputnik authors.  All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+/*---
+description: >
+    White Space between LeftHandSideExpression and "=" or between "=" and
+    AssignmentExpression is allowed
+es5id: 11.13.1_A1
+---*/
+
+var x;
+
+x	=	'U+0009';
+if (x !== 'U+0009') {
+  $ERROR('#1: (x\\u0009=\\u0009true) === true');
+}
+
+x='U+000B';
+if (x !== 'U+000B') {
+  $ERROR('#2: (x\\u000B=\\u000Btrue) === true');
+}
+
+x='U+000C';
+if (x !== 'U+000C') {
+  $ERROR('#3: (x\\u000C=\\u000Ctrue) === true');
+}
+
+x = 'U+0020';
+if (x !== 'U+0020') {
+  $ERROR('#4: (x\\u0020=\\u0020true) === true');
+}
+
+x = 'U+00A0';
+if (x !== 'U+00A0') {
+  $ERROR('#5: (x\\u00A0=\\u00A0true) === true');
+}
+
+x
=
'U+000D';
+if (x !== 'U+000D') {
+  $ERROR('#7: (x\\u000D=\\u000Dtrue) === true');
+}
+
+x
=
'U+2028';
+if (x !== 'U+2028') {
+  $ERROR('#8: (x\\u2028=\\u2028true) === true');
+}
+
+x
=
'U+2029';
+if (x !== 'U+2029') {
+  $ERROR('#9: (x\\u2029=\\u2029true) === true');
+}
+
+x	  


=	  


'U+0009U+000BU+000CU+0020U+00A0U+000DU+2028U+2029';
+if (x !== 'U+0009U+000BU+000CU+0020U+00A0U+000DU+2028U+2029') {
+  $ERROR('#10: (x\\u0009\\u000B\\u000C\\u0020\\u00A0\\u000D\\u2028\\u2029=\\u0009\\u000B\\u000C\\u0020\\u00A0\\u000D\\u2028\\u2029true) === true');
+}
diff --git a/test/language/statements/variable/id-arguments-strict.js b/test/language/statements/variable/id-arguments-strict.js
new file mode 100644
index 0000000000000000000000000000000000000000..66e099ef081614796424d631b6b99b74029b8279
--- /dev/null
+++ b/test/language/statements/variable/id-arguments-strict.js
@@ -0,0 +1,16 @@
+// Copyright (c) 2012 Ecma International.  All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+/*---
+es5id: 11.13.1-4-28-s
+description: >
+  Strict Mode - SyntaxError is thrown if the identifier 'arguments' appears
+  as the LeftHandSideExpression of simple assignment(=) under strict mode
+negative:
+  phase: early
+  type: SyntaxError
+flags: [onlyStrict]
+---*/
+
+throw "Test262: This statement should not be evaluated.";
+
+var arguments;
diff --git a/test/language/statements/variable/id-eval-strict.js b/test/language/statements/variable/id-eval-strict.js
new file mode 100644
index 0000000000000000000000000000000000000000..a9e6c4825088b540d552996c482bf4756a3ac547
--- /dev/null
+++ b/test/language/statements/variable/id-eval-strict.js
@@ -0,0 +1,16 @@
+// Copyright (c) 2012 Ecma International.  All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+/*---
+es5id: 11.13.1-4-28-s
+description: >
+  Strict Mode - SyntaxError is thrown if the identifier 'eval' appears as the
+  LeftHandSideExpression of simple assignment(=) under strict mode
+negative:
+  phase: early
+  type: SyntaxError
+flags: [onlyStrict]
+---*/
+
+throw "Test262: This statement should not be evaluated.";
+
+var eval;