diff --git a/test/language/asi/S7.9_A5.7_T1.js b/test/language/asi/S7.9_A5.7_T1.js
index 5fcce9a1d5f77e51b8047d3e1ee05f1aa42630aa..c7cf7348630637e120fc053f1f68b7a4724fab7f 100644
--- a/test/language/asi/S7.9_A5.7_T1.js
+++ b/test/language/asi/S7.9_A5.7_T1.js
@@ -11,7 +11,9 @@ info: >
 
 es5id: 7.9_A5.7_T1
 description: Try use Variable1 \n ++ \n ++ \n Variable2 construction
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 var x=0, y=0;
diff --git a/test/language/expressions/assignment/non-simple-target.js b/test/language/expressions/assignment/non-simple-target.js
index d588b862b28282ee227b916869d3e589f8afcf05..1d4d587815a2490a5aeabe21e33d6aff6e9f2170 100644
--- a/test/language/expressions/assignment/non-simple-target.js
+++ b/test/language/expressions/assignment/non-simple-target.js
@@ -8,7 +8,9 @@ info: >
     LeftHandSideExpression is false.
 es6id: 12.14.1
 description: Assignment with non-simple target
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 1 = 1;
diff --git a/test/language/expressions/assignment/target-cover-newtarget.js b/test/language/expressions/assignment/target-cover-newtarget.js
index 2442cac6e95f51e8b68754801c6aef03523a240d..901ec3c40d12aaf78f48a660b674e176a5eed793 100644
--- a/test/language/expressions/assignment/target-cover-newtarget.js
+++ b/test/language/expressions/assignment/target-cover-newtarget.js
@@ -18,7 +18,9 @@ info: |
   new.target
 
   1. Return false.
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 function f() {
diff --git a/test/language/expressions/assignment/target-cover-yieldexpr.js b/test/language/expressions/assignment/target-cover-yieldexpr.js
index 0cfad36ebc1390c343351c58d9d5583fba05e5ae..c0fe2e29b6e89811fa727279b9a4e3ff1a1410b2 100644
--- a/test/language/expressions/assignment/target-cover-yieldexpr.js
+++ b/test/language/expressions/assignment/target-cover-yieldexpr.js
@@ -21,7 +21,9 @@ info: |
 
   1. Return false.
 features: [generators]
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 function* g() {
diff --git a/test/language/expressions/assignment/target-newtarget.js b/test/language/expressions/assignment/target-newtarget.js
index b4ebd6b5967d75f3df4ce0b4fdfdfaac90e9546d..d0eeeda0601bde027ab771087e61b08ec271425e 100644
--- a/test/language/expressions/assignment/target-newtarget.js
+++ b/test/language/expressions/assignment/target-newtarget.js
@@ -18,7 +18,9 @@ info: |
   new.target
 
   1. Return false.
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 function f() {
diff --git a/test/language/expressions/async-function/early-errors-expression-not-simple-assignment-target.js b/test/language/expressions/async-function/early-errors-expression-not-simple-assignment-target.js
index 49555f399b5db4fd364fbdbcbb966b03bb2a5bf9..d27968f291aaacf2614b5ee10e6c79d5584f9c21 100644
--- a/test/language/expressions/async-function/early-errors-expression-not-simple-assignment-target.js
+++ b/test/language/expressions/async-function/early-errors-expression-not-simple-assignment-target.js
@@ -6,7 +6,9 @@ author: Brian Terlson <brian.terlson@microsoft.com>
 esid: pending
 description: >
   Async function expressions are not a simple assignment target.
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 (async function foo() { } = 1)
diff --git a/test/language/expressions/await/early-errors-await-not-simple-assignment-target.js b/test/language/expressions/await/early-errors-await-not-simple-assignment-target.js
index 4560ff966574e0c75c6fd2c03c367c40f8b7489d..8999e40f28204fbf40c7f86d21232757532f80cf 100644
--- a/test/language/expressions/await/early-errors-await-not-simple-assignment-target.js
+++ b/test/language/expressions/await/early-errors-await-not-simple-assignment-target.js
@@ -6,7 +6,9 @@ author: Brian Terlson <brian.terlson@microsoft.com>
 esid: pending
 description: >
   await is not a simple assignment target and cannot be assigned to.
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 async function foo() {
diff --git a/test/language/expressions/compound-assignment/add-non-simple.js b/test/language/expressions/compound-assignment/add-non-simple.js
index c3d8922de17965a245e7a0e3a8d0de6a7670ea97..74449b83a4d4d485ed539fad7e6cb98425cc2196 100644
--- a/test/language/expressions/compound-assignment/add-non-simple.js
+++ b/test/language/expressions/compound-assignment/add-non-simple.js
@@ -7,7 +7,9 @@ info: >
     LeftHandSideExpression is false.
 es6id: 12.14.1
 description: Compound addition assignment with non-simple target
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 1 += 1;
diff --git a/test/language/expressions/compound-assignment/btws-and-non-simple.js b/test/language/expressions/compound-assignment/btws-and-non-simple.js
index 2947bf4e59bff675cf101b49781a60b93591063e..2b8a26c780ccfd98401e5210ea95c9cc614923be 100644
--- a/test/language/expressions/compound-assignment/btws-and-non-simple.js
+++ b/test/language/expressions/compound-assignment/btws-and-non-simple.js
@@ -7,7 +7,9 @@ info: >
     LeftHandSideExpression is false.
 es6id: 12.14.1
 description: Compound "bitwise and" assignment with non-simple target
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 1 &= 1;
diff --git a/test/language/expressions/compound-assignment/btws-or-non-simple.js b/test/language/expressions/compound-assignment/btws-or-non-simple.js
index 956a457ed14912ee71ed79547ff867aa748dad9e..ed0ec79100dec209a508e00f066955e9918841c5 100644
--- a/test/language/expressions/compound-assignment/btws-or-non-simple.js
+++ b/test/language/expressions/compound-assignment/btws-or-non-simple.js
@@ -7,7 +7,9 @@ info: >
     LeftHandSideExpression is false.
 es6id: 12.14.1
 description: Compound "bitwise or" assignment with non-simple target
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 1 |= 1;
diff --git a/test/language/expressions/compound-assignment/btws-xor-non-simple.js b/test/language/expressions/compound-assignment/btws-xor-non-simple.js
index 63515dd5df9031b4e045dd586be345f4f4462e6d..0a5e66d309fd917ca3753dd75094f3223a50084e 100644
--- a/test/language/expressions/compound-assignment/btws-xor-non-simple.js
+++ b/test/language/expressions/compound-assignment/btws-xor-non-simple.js
@@ -7,7 +7,9 @@ info: >
     LeftHandSideExpression is false.
 es6id: 12.14.1
 description: Compound "bitwise xor" assignment with non-simple target
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 1 ^= 1;
diff --git a/test/language/expressions/compound-assignment/div-non-simple.js b/test/language/expressions/compound-assignment/div-non-simple.js
index 03734dde946f9ef578c4cf2f78f5f76ea73cea53..ab79ac49ddcfc4bd0744d502ecc846f20b80b166 100644
--- a/test/language/expressions/compound-assignment/div-non-simple.js
+++ b/test/language/expressions/compound-assignment/div-non-simple.js
@@ -7,7 +7,9 @@ info: >
     LeftHandSideExpression is false.
 es6id: 12.14.1
 description: Compound division assignment with non-simple target
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 1 /= 1;
diff --git a/test/language/expressions/compound-assignment/left-shift-non-simple.js b/test/language/expressions/compound-assignment/left-shift-non-simple.js
index 61a4d91e5596d07c4a118d578a5d0eb0bbb0201c..bee24c468aa681b2efff7e72c6efffb511affe2e 100644
--- a/test/language/expressions/compound-assignment/left-shift-non-simple.js
+++ b/test/language/expressions/compound-assignment/left-shift-non-simple.js
@@ -7,7 +7,9 @@ info: >
     LeftHandSideExpression is false.
 es6id: 12.14.1
 description: Compound "left shift" assignment with non-simple target
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 1 <<= 1;
diff --git a/test/language/expressions/compound-assignment/mod-div-non-simple.js b/test/language/expressions/compound-assignment/mod-div-non-simple.js
index 2ff9777f8c5cafa0b581cac0dfa09d226754424a..18e87b1176fc1f56deefdd4d11cbb5b190943309 100644
--- a/test/language/expressions/compound-assignment/mod-div-non-simple.js
+++ b/test/language/expressions/compound-assignment/mod-div-non-simple.js
@@ -7,7 +7,9 @@ info: >
     LeftHandSideExpression is false.
 es6id: 12.14.1
 description: Compound "modular division" assignment with non-simple target
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 1 %= 1;
diff --git a/test/language/expressions/compound-assignment/mult-non-simple.js b/test/language/expressions/compound-assignment/mult-non-simple.js
index bf08e411824a2a6ae425c0e163c8f9afface26d4..6d4d3d2bf6d04c3b9d0f839bd3c6a39a61559a33 100644
--- a/test/language/expressions/compound-assignment/mult-non-simple.js
+++ b/test/language/expressions/compound-assignment/mult-non-simple.js
@@ -7,7 +7,9 @@ info: >
     LeftHandSideExpression is false.
 es6id: 12.14.1
 description: Compound multiplication assignment with non-simple target
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 1 *= 1;
diff --git a/test/language/expressions/compound-assignment/right-shift-non-simple.js b/test/language/expressions/compound-assignment/right-shift-non-simple.js
index 941d3319e2940486db856498e8c1118a9ba54fa6..66497a6d71e79f26ab2de44d1994e04212ecb7cf 100644
--- a/test/language/expressions/compound-assignment/right-shift-non-simple.js
+++ b/test/language/expressions/compound-assignment/right-shift-non-simple.js
@@ -7,7 +7,9 @@ info: >
     LeftHandSideExpression is false.
 es6id: 12.14.1
 description: Compound "right shift" assignment with non-simple target
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 1 >>= 1;
diff --git a/test/language/expressions/compound-assignment/subtract-non-simple.js b/test/language/expressions/compound-assignment/subtract-non-simple.js
index 8c1f95b7bfb2182cd70f0049a273de082ba16b23..8b5ef1d98866b471ade3c889d4aaafbafcb7c34a 100644
--- a/test/language/expressions/compound-assignment/subtract-non-simple.js
+++ b/test/language/expressions/compound-assignment/subtract-non-simple.js
@@ -7,7 +7,9 @@ info: >
     LeftHandSideExpression is false.
 es6id: 12.14.1
 description: Compound subtraction assignment with non-simple target
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 1 -= 1;
diff --git a/test/language/expressions/compound-assignment/u-right-shift-non-simple.js b/test/language/expressions/compound-assignment/u-right-shift-non-simple.js
index 0114e770115964973979635405856458c488f788..7f0bf5156564e70af7f58fbbafb9f6474935ed9f 100644
--- a/test/language/expressions/compound-assignment/u-right-shift-non-simple.js
+++ b/test/language/expressions/compound-assignment/u-right-shift-non-simple.js
@@ -7,7 +7,9 @@ info: >
     LeftHandSideExpression is false.
 es6id: 12.14.1
 description: Compound "unsigned right shift" assignment with non-simple target
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 1 >>>= 1;
diff --git a/test/language/expressions/postfix-decrement/non-simple.js b/test/language/expressions/postfix-decrement/non-simple.js
index 3387ae66661eb03b4e69858f47252528ff53faae..0b0a4c00260922bf479b7ded81e69a82a23e9ac2 100644
--- a/test/language/expressions/postfix-decrement/non-simple.js
+++ b/test/language/expressions/postfix-decrement/non-simple.js
@@ -7,7 +7,9 @@ info: >
     LeftHandSideExpression is false.
 es6id: 12.4.1
 description: Applied to a non-simple assignment target
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 1--;
diff --git a/test/language/expressions/postfix-decrement/target-cover-newtarget.js b/test/language/expressions/postfix-decrement/target-cover-newtarget.js
index 55e3789d408103768e9fb01a08f15182bce2d693..addf7402410218110de8ea02d92d032490638415 100644
--- a/test/language/expressions/postfix-decrement/target-cover-newtarget.js
+++ b/test/language/expressions/postfix-decrement/target-cover-newtarget.js
@@ -19,7 +19,9 @@ info: |
   new.target
 
   1. Return false.
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 function f() {
diff --git a/test/language/expressions/postfix-decrement/target-cover-yieldexpr.js b/test/language/expressions/postfix-decrement/target-cover-yieldexpr.js
index 4d7448ae89834f6e791cccde625f22fe2e21f49b..ac7fc2020693f018c3a7d897573a8c4efd600752 100644
--- a/test/language/expressions/postfix-decrement/target-cover-yieldexpr.js
+++ b/test/language/expressions/postfix-decrement/target-cover-yieldexpr.js
@@ -22,7 +22,9 @@ info: |
 
   1. Return false.
 features: [generators]
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 function* g() {
diff --git a/test/language/expressions/postfix-decrement/target-newtarget.js b/test/language/expressions/postfix-decrement/target-newtarget.js
index bddee29f1ed2b259b6905bd7088e5a31cce319e1..d2a43e5192ac8ed3d63cd32dd90f95252c4b3c3f 100644
--- a/test/language/expressions/postfix-decrement/target-newtarget.js
+++ b/test/language/expressions/postfix-decrement/target-newtarget.js
@@ -19,7 +19,9 @@ info: |
   new.target
 
   1. Return false.
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 function f() {
diff --git a/test/language/expressions/postfix-increment/non-simple.js b/test/language/expressions/postfix-increment/non-simple.js
index 5d90aed8c7296472b251815ba3e1ae98bb0423c8..b16792df6d9da8e0204a999e668f430fe9b66b87 100644
--- a/test/language/expressions/postfix-increment/non-simple.js
+++ b/test/language/expressions/postfix-increment/non-simple.js
@@ -7,7 +7,9 @@ info: >
     LeftHandSideExpression is false.
 es6id: 12.4.1
 description: Applied to a non-simple assignment target
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 1++;
diff --git a/test/language/expressions/postfix-increment/target-cover-newtarget.js b/test/language/expressions/postfix-increment/target-cover-newtarget.js
index 7168110cf022295446d271b216ea74863ebfd0bb..a2260b38236b9f7d11049114c594acda13aae8c8 100644
--- a/test/language/expressions/postfix-increment/target-cover-newtarget.js
+++ b/test/language/expressions/postfix-increment/target-cover-newtarget.js
@@ -19,7 +19,9 @@ info: |
   new.target
 
   1. Return false.
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 function f() {
diff --git a/test/language/expressions/postfix-increment/target-cover-yieldexpr.js b/test/language/expressions/postfix-increment/target-cover-yieldexpr.js
index 3fdc200d01cbe8cec1ea9586245cce08258e39dd..86c2497a18aaa5c8e685ad844818c2be970e6aed 100644
--- a/test/language/expressions/postfix-increment/target-cover-yieldexpr.js
+++ b/test/language/expressions/postfix-increment/target-cover-yieldexpr.js
@@ -22,7 +22,9 @@ info: |
 
   1. Return false.
 features: [generators]
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 function* g() {
diff --git a/test/language/expressions/postfix-increment/target-newtarget.js b/test/language/expressions/postfix-increment/target-newtarget.js
index 1cc7a2d226285348c7247ba99f65dda2fa997b69..86d2b5c0c2021b1cc6582230e1bde9f3151293f4 100644
--- a/test/language/expressions/postfix-increment/target-newtarget.js
+++ b/test/language/expressions/postfix-increment/target-newtarget.js
@@ -19,7 +19,9 @@ info: |
   new.target
 
   1. Return false.
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 function f() {
diff --git a/test/language/expressions/prefix-decrement/non-simple.js b/test/language/expressions/prefix-decrement/non-simple.js
index b7a805a3b4dec9f75299762ea974043d2d84db48..2315bdb399b0d7c9c2153bff6b46d6e2f63e46db 100644
--- a/test/language/expressions/prefix-decrement/non-simple.js
+++ b/test/language/expressions/prefix-decrement/non-simple.js
@@ -7,7 +7,9 @@ info: >
     UnaryExpression is false.
 es5id: 12.5.1
 description: Applied to a non-simple assignment target
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 --1;
diff --git a/test/language/expressions/prefix-decrement/target-cover-newtarget.js b/test/language/expressions/prefix-decrement/target-cover-newtarget.js
index 3037aca67abd2c3ad92078eeda2b27b274597ad3..15fc4ef1c677562724bd7b82c1898285f80fb116 100644
--- a/test/language/expressions/prefix-decrement/target-cover-newtarget.js
+++ b/test/language/expressions/prefix-decrement/target-cover-newtarget.js
@@ -19,7 +19,9 @@ info: |
   new.target
 
   1. Return false.
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 function f() {
diff --git a/test/language/expressions/prefix-decrement/target-cover-yieldexpr.js b/test/language/expressions/prefix-decrement/target-cover-yieldexpr.js
index fbf6cbb2ccbe161da37d134fb3414397ce64ea96..a3ad214d55f2eacaa0527f8213aade21d6b8541a 100644
--- a/test/language/expressions/prefix-decrement/target-cover-yieldexpr.js
+++ b/test/language/expressions/prefix-decrement/target-cover-yieldexpr.js
@@ -22,7 +22,9 @@ info: |
 
   1. Return false.
 features: [generators]
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 function* g() {
diff --git a/test/language/expressions/prefix-decrement/target-newtarget.js b/test/language/expressions/prefix-decrement/target-newtarget.js
index 4f8d1ecbef5eedd6f207666f39f05f30114087c4..e25ff8d75776b9c65dda3be73341f273a54e2726 100644
--- a/test/language/expressions/prefix-decrement/target-newtarget.js
+++ b/test/language/expressions/prefix-decrement/target-newtarget.js
@@ -19,7 +19,9 @@ info: |
   new.target
 
   1. Return false.
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 function f() {
diff --git a/test/language/expressions/prefix-increment/non-simple.js b/test/language/expressions/prefix-increment/non-simple.js
index 42249e0536e5b954d21cae7c04bd3ec6f57faa43..59755b52180d66a4a8b32d5506f7557d3a38cf9f 100644
--- a/test/language/expressions/prefix-increment/non-simple.js
+++ b/test/language/expressions/prefix-increment/non-simple.js
@@ -7,7 +7,9 @@ info: >
    UnaryExpression is false.
 es6id: 12.5.1
 description: Applied to a non-simple assignment target
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 ++1;
diff --git a/test/language/expressions/prefix-increment/target-cover-newtarget.js b/test/language/expressions/prefix-increment/target-cover-newtarget.js
index 113b4a2074a28df482e0c41c08eeef967c02acea..8706d68c5ae9a556bbdfada0ba3cadc016e972a3 100644
--- a/test/language/expressions/prefix-increment/target-cover-newtarget.js
+++ b/test/language/expressions/prefix-increment/target-cover-newtarget.js
@@ -19,7 +19,9 @@ info: |
   new.target
 
   1. Return false.
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 function f() {
diff --git a/test/language/expressions/prefix-increment/target-cover-yieldexpr.js b/test/language/expressions/prefix-increment/target-cover-yieldexpr.js
index 10ee8602e117f483defc0be2f2bc6fab966a579e..adc39d90bd69712ae5491afe4fa070a2dc567414 100644
--- a/test/language/expressions/prefix-increment/target-cover-yieldexpr.js
+++ b/test/language/expressions/prefix-increment/target-cover-yieldexpr.js
@@ -22,7 +22,9 @@ info: |
 
   1. Return false.
 features: [generators]
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 function* g() {
diff --git a/test/language/expressions/prefix-increment/target-newtarget.js b/test/language/expressions/prefix-increment/target-newtarget.js
index 928f32b8c9f0ec34b585495399f1abfcc29a4a5a..a8bc7ed3b5c0a3053ac302dd7129bccf38db98cc 100644
--- a/test/language/expressions/prefix-increment/target-newtarget.js
+++ b/test/language/expressions/prefix-increment/target-newtarget.js
@@ -19,7 +19,9 @@ info: |
   new.target
 
   1. Return false.
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 function f() {
diff --git a/test/language/expressions/this/S11.1.1_A1.js b/test/language/expressions/this/S11.1.1_A1.js
index 922253a16735425e36d8fec6138ef2dbcac69608..a72c45ba2e7110a3ea54ec7ff134b47a2c946f8f 100644
--- a/test/language/expressions/this/S11.1.1_A1.js
+++ b/test/language/expressions/this/S11.1.1_A1.js
@@ -5,7 +5,9 @@
 info: The "this" is reserved word
 es5id: 11.1.1_A1
 description: Checking if execution of "this=1" fails
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 this = 1;
diff --git a/test/language/keywords/S7.6.1.1_A1.18.js b/test/language/keywords/S7.6.1.1_A1.18.js
index 6c9fa99f7d984389594aa4eab41a76f6f86b2599..60c5f943175e9335f0a8d7a81df6eddb21441cbf 100644
--- a/test/language/keywords/S7.6.1.1_A1.18.js
+++ b/test/language/keywords/S7.6.1.1_A1.18.js
@@ -5,7 +5,9 @@
 info: The "this" token can not be used as identifier
 es5id: 7.6.1.1_A1.18
 description: Checking if execution of "this=1" fails
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 this = 1;
diff --git a/test/language/reserved-words/S7.6.1_A1.1.js b/test/language/reserved-words/S7.6.1_A1.1.js
index 76b1803b0ff787cb907a31457bbccc0f2a8d9119..a7452d3dcf908d79732b397ab8f334f8abd2b62d 100644
--- a/test/language/reserved-words/S7.6.1_A1.1.js
+++ b/test/language/reserved-words/S7.6.1_A1.1.js
@@ -5,7 +5,9 @@
 info: The "null" token can not be used as identifier
 es5id: 7.6.1_A1.1
 description: Checking if execution of "null = 1" fails
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 null = 1;
diff --git a/test/language/reserved-words/S7.6.1_A1.2.js b/test/language/reserved-words/S7.6.1_A1.2.js
index e593fd56c13be965b9f8e2a593f06cd71521667d..ce5a346855d2e05a998180e5ce58c5fccb51913e 100644
--- a/test/language/reserved-words/S7.6.1_A1.2.js
+++ b/test/language/reserved-words/S7.6.1_A1.2.js
@@ -5,7 +5,9 @@
 info: The "true" token can not be used as identifier
 es5id: 7.6.1_A1.2
 description: Checking if execution of "true=1" fails
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 true = 1;
diff --git a/test/language/reserved-words/S7.6.1_A1.3.js b/test/language/reserved-words/S7.6.1_A1.3.js
index 1c94158bdeaab68e475a9070dd6af1b0a8543cda..547858922b4bf44a6fe8b386780b311e1c67c7fc 100644
--- a/test/language/reserved-words/S7.6.1_A1.3.js
+++ b/test/language/reserved-words/S7.6.1_A1.3.js
@@ -5,7 +5,9 @@
 info: The "false" token can not be used as identifier
 es5id: 7.6.1_A1.3
 description: Checking if execution of "false=1" fails
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 false = 1;
diff --git a/test/language/statements/const/global-use-before-initialization-in-declaration-statement.js b/test/language/statements/const/global-use-before-initialization-in-declaration-statement.js
index cfe298063e230742e63e7d339df598b32ae55c6c..1e44bc242b71f3640d69faae49848f7aab681c6a 100644
--- a/test/language/statements/const/global-use-before-initialization-in-declaration-statement.js
+++ b/test/language/statements/const/global-use-before-initialization-in-declaration-statement.js
@@ -5,6 +5,8 @@ es6id: 13.1
 description: >
     const: global use before initialization in declaration statement.
     (TDZ, Temporal Dead Zone)
-negative: ReferenceError
+negative:
+  phase: runtime
+  type: ReferenceError
 ---*/
 const x = x + 1;
diff --git a/test/language/statements/const/global-use-before-initialization-in-prior-statement.js b/test/language/statements/const/global-use-before-initialization-in-prior-statement.js
index 399df2bffab66ace07e2a4c94014f6832901e25d..56ba7b265e4d55dce10298356332656394ce05db 100644
--- a/test/language/statements/const/global-use-before-initialization-in-prior-statement.js
+++ b/test/language/statements/const/global-use-before-initialization-in-prior-statement.js
@@ -5,6 +5,8 @@ es6id: 13.1
 description: >
     const: global use before initialization in prior statement.
     (TDZ, Temporal Dead Zone)
-negative: ReferenceError
+negative:
+  phase: runtime
+  type: ReferenceError
 ---*/
 x; const x = 1;
diff --git a/test/language/statements/let/global-use-before-initialization-in-declaration-statement.js b/test/language/statements/let/global-use-before-initialization-in-declaration-statement.js
index b39d3b29df4f28d3ba3295a665632f60cda84339..af50dce75a5e35256493704d93caf84900590121 100644
--- a/test/language/statements/let/global-use-before-initialization-in-declaration-statement.js
+++ b/test/language/statements/let/global-use-before-initialization-in-declaration-statement.js
@@ -5,6 +5,8 @@ es6id: 13.1
 description: >
     let: global use before initialization in declaration statement.
     (TDZ, Temporal Dead Zone)
-negative: ReferenceError
+negative:
+  phase: runtime
+  type: ReferenceError
 ---*/
 let x = x + 1;
diff --git a/test/language/statements/let/global-use-before-initialization-in-prior-statement.js b/test/language/statements/let/global-use-before-initialization-in-prior-statement.js
index 5da99025f1484a3de22c0aaf5b2299a4fad01e6f..74c1e27da8023494448f616d1796c3aaadcef17e 100644
--- a/test/language/statements/let/global-use-before-initialization-in-prior-statement.js
+++ b/test/language/statements/let/global-use-before-initialization-in-prior-statement.js
@@ -5,6 +5,8 @@ es6id: 13.1
 description: >
     let: global use before initialization in prior statement.
     (TDZ, Temporal Dead Zone)
-negative: ReferenceError
+negative:
+  phase: runtime
+  type: ReferenceError
 ---*/
 x; let x;
diff --git a/test/language/types/boolean/S8.3_A2.1.js b/test/language/types/boolean/S8.3_A2.1.js
index 1a15285385dea3b067578bd0eff915617e60423f..981a32d2ba32d87f0b935b9a30765ed743694372 100644
--- a/test/language/types/boolean/S8.3_A2.1.js
+++ b/test/language/types/boolean/S8.3_A2.1.js
@@ -5,7 +5,9 @@
 info: The true is reserved word
 es5id: 8.3_A2.1
 description: Checking if execution of "true=1" fails
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 true = 1;
diff --git a/test/language/types/boolean/S8.3_A2.2.js b/test/language/types/boolean/S8.3_A2.2.js
index 8a254e33904817e21abdda2fc794b2ad5b6468e7..4092c1a7873b1371c02067b06172c10d62ce129b 100644
--- a/test/language/types/boolean/S8.3_A2.2.js
+++ b/test/language/types/boolean/S8.3_A2.2.js
@@ -5,7 +5,9 @@
 info: The false is reserved word
 es5id: 8.3_A2.2
 description: Checking if execution of "false=0" fails
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 false = 0;
diff --git a/test/language/types/reference/S8.7.2_A1_T1.js b/test/language/types/reference/S8.7.2_A1_T1.js
index e023f355d4bba15389b872afb25441eeb3045e22..73cce90f4ad004c817c0d228935a14c9b48cf01b 100644
--- a/test/language/types/reference/S8.7.2_A1_T1.js
+++ b/test/language/types/reference/S8.7.2_A1_T1.js
@@ -5,7 +5,9 @@
 info: GetValue(V) mast fail
 es5id: 8.7.2_A1_T1
 description: Checking if execution of "'litera'=1;" fails
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 'litera'=1;
diff --git a/test/language/types/reference/S8.7.2_A1_T2.js b/test/language/types/reference/S8.7.2_A1_T2.js
index b59fda7b4108501165e72162464249358e520214..82ce11d9a63e5d281646990177675eaa6217d4ea 100644
--- a/test/language/types/reference/S8.7.2_A1_T2.js
+++ b/test/language/types/reference/S8.7.2_A1_T2.js
@@ -5,7 +5,9 @@
 info: GetValue(V) mast fail
 es5id: 8.7.2_A1_T2
 description: Checking if execution of "1=1" fails
-negative: ReferenceError
+negative:
+  phase: early
+  type: ReferenceError
 ---*/
 
 1=1;