diff --git a/test/built-ins/BigInt/asIntN/bigint-tobigint-errors.js b/test/built-ins/BigInt/asIntN/bigint-tobigint-errors.js
index b1e2d3f7b90c09a51f0f0ec65c9e9096a3a5769c..950cda9f6ed3d3d7f0a839c5b3a5dcde63b02cf8 100644
--- a/test/built-ins/BigInt/asIntN/bigint-tobigint-errors.js
+++ b/test/built-ins/BigInt/asIntN/bigint-tobigint-errors.js
@@ -7,7 +7,7 @@ info: |
   BigInt.asIntN ( bits, bigint )
 
   2. Let bigint ? ToBigInt(bigint).
-features: [BigInt, Symbol, Symbol.toPrimitive, computed-property-names]
+features: [BigInt, computed-property-names, Symbol, Symbol.toPrimitive]
 ---*/
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/BigInt/asIntN/bigint-tobigint-toprimitive.js b/test/built-ins/BigInt/asIntN/bigint-tobigint-toprimitive.js
index e2663a00b6e0c4158d3265ae18364b79b9ed26b5..fe0a702faf190fe613bfdd9633b97309f71cf725 100644
--- a/test/built-ins/BigInt/asIntN/bigint-tobigint-toprimitive.js
+++ b/test/built-ins/BigInt/asIntN/bigint-tobigint-toprimitive.js
@@ -7,7 +7,7 @@ info: |
   BigInt.asIntN ( bits, bigint )
 
   2. Let bigint ? ToBigInt(bigint).
-features: [BigInt, Symbol.toPrimitive, computed-property-names]
+features: [BigInt, computed-property-names, Symbol, Symbol.toPrimitive]
 ---*/
 
 function err() {
diff --git a/test/built-ins/BigInt/asIntN/bigint-tobigint-wrapped-values.js b/test/built-ins/BigInt/asIntN/bigint-tobigint-wrapped-values.js
index 2ee3a6c6bb74f766fc2f3879ecb1affd2fc88bd1..5b2a3956c34de94994581f0452327cb5f7eff51f 100644
--- a/test/built-ins/BigInt/asIntN/bigint-tobigint-wrapped-values.js
+++ b/test/built-ins/BigInt/asIntN/bigint-tobigint-wrapped-values.js
@@ -7,7 +7,7 @@ info: |
   BigInt.asIntN ( bits, bigint )
 
   2. Let bigint ? ToBigInt(bigint).
-features: [BigInt, Symbol.toPrimitive, computed-property-names]
+features: [BigInt, computed-property-names, Symbol, Symbol.toPrimitive]
 ---*/
 
 assert.sameValue(BigInt.asIntN(2, Object(0n)), 0n, "ToPrimitive: unbox object with internal slot");
diff --git a/test/built-ins/BigInt/asIntN/bits-toindex-errors.js b/test/built-ins/BigInt/asIntN/bits-toindex-errors.js
index 892c480175ca6f717d5449b242f4fadcb63310e0..9f2fabb1c13ccbf87a258f49342299963f4beb6d 100644
--- a/test/built-ins/BigInt/asIntN/bits-toindex-errors.js
+++ b/test/built-ins/BigInt/asIntN/bits-toindex-errors.js
@@ -7,7 +7,7 @@ info: |
   BigInt.asIntN ( bits, bigint )
 
   1. Let bits be ? ToIndex(bits).
-features: [BigInt, Symbol, Symbol.toPrimitive, computed-property-names]
+features: [BigInt, computed-property-names, Symbol, Symbol.toPrimitive]
 ---*/
 
 assert.throws(RangeError, function() {
diff --git a/test/built-ins/BigInt/asIntN/bits-toindex-toprimitive.js b/test/built-ins/BigInt/asIntN/bits-toindex-toprimitive.js
index c6b874a84e7e50b47989bbca8c8c0fa0b3328f47..10ffd610f8466a6d08022546c276facc269fc4c9 100644
--- a/test/built-ins/BigInt/asIntN/bits-toindex-toprimitive.js
+++ b/test/built-ins/BigInt/asIntN/bits-toindex-toprimitive.js
@@ -7,7 +7,7 @@ info: |
   BigInt.asIntN ( bits, bigint )
 
   1. Let bits be ? ToIndex(bits).
-features: [BigInt, Symbol.toPrimitive, computed-property-names]
+features: [BigInt, computed-property-names, Symbol, Symbol.toPrimitive]
 ---*/
 
 function err() {
diff --git a/test/built-ins/BigInt/asIntN/bits-toindex-wrapped-values.js b/test/built-ins/BigInt/asIntN/bits-toindex-wrapped-values.js
index cb9a5832a150be498e9701709e902979dc54e82a..94e5635e06f3bc760446f8e678bec082a3b3d561 100644
--- a/test/built-ins/BigInt/asIntN/bits-toindex-wrapped-values.js
+++ b/test/built-ins/BigInt/asIntN/bits-toindex-wrapped-values.js
@@ -7,7 +7,7 @@ info: |
   BigInt.asIntN ( bits, bigint )
 
   1. Let bits be ? ToIndex(bits).
-features: [BigInt, Symbol.toPrimitive, computed-property-names]
+features: [BigInt, computed-property-names, Symbol, Symbol.toPrimitive]
 ---*/
 
 assert.sameValue(BigInt.asIntN(Object(0), 1n), 0n, "ToPrimitive: unbox object with internal slot");
diff --git a/test/built-ins/BigInt/asUintN/bigint-tobigint-errors.js b/test/built-ins/BigInt/asUintN/bigint-tobigint-errors.js
index 3df6cf714426de6a1992cda27372e2501ab60c33..924e3decb1874a8356cd4f843f89ca624702e561 100644
--- a/test/built-ins/BigInt/asUintN/bigint-tobigint-errors.js
+++ b/test/built-ins/BigInt/asUintN/bigint-tobigint-errors.js
@@ -7,7 +7,7 @@ info: |
   BigInt.asUintN ( bits, bigint )
 
   2. Let bigint ? ToBigInt(bigint).
-features: [BigInt, Symbol, Symbol.toPrimitive, computed-property-names]
+features: [BigInt, computed-property-names, Symbol, Symbol.toPrimitive]
 ---*/
 
 assert.throws(TypeError, function() {
diff --git a/test/built-ins/BigInt/asUintN/bigint-tobigint-toprimitive.js b/test/built-ins/BigInt/asUintN/bigint-tobigint-toprimitive.js
index 15bfa4775930c8487126474e8f943baad4c32c0e..1aff2080c31480663883c3065a4d2c13df08d68b 100644
--- a/test/built-ins/BigInt/asUintN/bigint-tobigint-toprimitive.js
+++ b/test/built-ins/BigInt/asUintN/bigint-tobigint-toprimitive.js
@@ -7,7 +7,7 @@ info: |
   BigInt.asUintN ( bits, bigint )
 
   2. Let bigint ? ToBigInt(bigint).
-features: [BigInt, Symbol.toPrimitive, computed-property-names]
+features: [BigInt, computed-property-names, Symbol, Symbol.toPrimitive]
 ---*/
 
 function err() {
diff --git a/test/built-ins/BigInt/asUintN/bigint-tobigint-wrapped-values.js b/test/built-ins/BigInt/asUintN/bigint-tobigint-wrapped-values.js
index 49741b93978516fb2dd6f52e08b07ce0bdaec511..3362b284d963b3dfe19404dbbaf9ddb9f10a6713 100644
--- a/test/built-ins/BigInt/asUintN/bigint-tobigint-wrapped-values.js
+++ b/test/built-ins/BigInt/asUintN/bigint-tobigint-wrapped-values.js
@@ -7,7 +7,7 @@ info: |
   BigInt.asUintN ( bits, bigint )
 
   2. Let bigint ? ToBigInt(bigint).
-features: [BigInt, Symbol.toPrimitive, computed-property-names]
+features: [BigInt, computed-property-names, Symbol, Symbol.toPrimitive]
 ---*/
 
 assert.sameValue(BigInt.asUintN(2, Object(0n)), 0n, "ToPrimitive: unbox object with internal slot");
diff --git a/test/built-ins/BigInt/asUintN/bits-toindex-errors.js b/test/built-ins/BigInt/asUintN/bits-toindex-errors.js
index 9b42b295d1089ea9b0a69c16bd6cf18d24796601..3967dab25d9a4a22b90df6ad83257771b08925e9 100644
--- a/test/built-ins/BigInt/asUintN/bits-toindex-errors.js
+++ b/test/built-ins/BigInt/asUintN/bits-toindex-errors.js
@@ -7,7 +7,7 @@ info: |
   BigInt.asUintN ( bits, bigint )
 
   1. Let bits be ? ToIndex(bits).
-features: [BigInt, Symbol, Symbol.toPrimitive, computed-property-names]
+features: [BigInt, computed-property-names, Symbol, Symbol.toPrimitive]
 ---*/
 
 assert.throws(RangeError, function() {
diff --git a/test/built-ins/BigInt/asUintN/bits-toindex-toprimitive.js b/test/built-ins/BigInt/asUintN/bits-toindex-toprimitive.js
index 68a0421a9015ca3c909c1f3dd4f249421f313657..4933da2fbf7220339ad6d8946eac79c9df130e99 100644
--- a/test/built-ins/BigInt/asUintN/bits-toindex-toprimitive.js
+++ b/test/built-ins/BigInt/asUintN/bits-toindex-toprimitive.js
@@ -7,7 +7,7 @@ info: |
   BigInt.asUintN ( bits, bigint )
 
   1. Let bits be ? ToIndex(bits).
-features: [BigInt, Symbol.toPrimitive, computed-property-names]
+features: [BigInt, computed-property-names, Symbol, Symbol.toPrimitive]
 ---*/
 
 function err() {
diff --git a/test/built-ins/BigInt/asUintN/bits-toindex-wrapped-values.js b/test/built-ins/BigInt/asUintN/bits-toindex-wrapped-values.js
index 3b78835cd0feaa6ca90b7e985f04ee9bbfd23353..ac754ee4e77f317193f4ea91aa79b962fb7060f9 100644
--- a/test/built-ins/BigInt/asUintN/bits-toindex-wrapped-values.js
+++ b/test/built-ins/BigInt/asUintN/bits-toindex-wrapped-values.js
@@ -7,7 +7,7 @@ info: |
   BigInt.asUintN ( bits, bigint )
 
   1. Let bits be ? ToIndex(bits).
-features: [BigInt, Symbol.toPrimitive, computed-property-names]
+features: [BigInt, computed-property-names, Symbol, Symbol.toPrimitive]
 ---*/
 
 assert.sameValue(BigInt.asUintN(Object(0), 1n), 0n, "ToPrimitive: unbox object with internal slot");
diff --git a/test/built-ins/BigInt/constructor-empty-string.js b/test/built-ins/BigInt/constructor-empty-string.js
index e8b2fb52b4c2d970fb89aa377e9b3c5a0db45674..5eb5def02c8abd1b6c9b4ca158a9db3b516d0a28 100644
--- a/test/built-ins/BigInt/constructor-empty-string.js
+++ b/test/built-ins/BigInt/constructor-empty-string.js
@@ -5,9 +5,17 @@
 description: Empty String should in BigInt should result into 0n
 esid: sec-string-to-bigint
 info: |
-  Apply the algorithm in 3.1.3.1 with the following changes:
+  ToBigInt ( argument )
 
-  EDITOR'S NOTE StringToBigInt("") is 0n according to the logic in 3.1.3.1.
+  String:
+
+  Let n be StringToBigInt(prim).
+  If n is NaN, throw a SyntaxError exception.
+  Return n.
+
+  StringToBigInt ( argument )
+
+  Replace the StrUnsignedDecimalLiteral production with DecimalDigits to not allow Infinity, decimal points, or exponents.
 
 features: [BigInt]
 ---*/
diff --git a/test/built-ins/BigInt/constructor-from-binary-string.js b/test/built-ins/BigInt/constructor-from-binary-string.js
index 35cfda0acbd12f26a2f9c0e13cb2f6bcc301747c..1b675b4727bf226f204664170d38f848a91f4b59 100644
--- a/test/built-ins/BigInt/constructor-from-binary-string.js
+++ b/test/built-ins/BigInt/constructor-from-binary-string.js
@@ -5,10 +5,17 @@
 description: String should be parsed to BigInt according StringToBigInt
 esid: sec-string-to-bigint
 info: |
-  Apply the algorithm in 3.1.3.1 with the following changes:
+  ToBigInt ( argument )
 
-  - Replace the StrUnsignedDecimalLiteral production with DecimalDigits
-    to not allow decimal points or exponents.
+  String:
+
+  Let n be StringToBigInt(prim).
+  If n is NaN, throw a SyntaxError exception.
+  Return n.
+
+  StringToBigInt ( argument )
+
+  Replace the StrUnsignedDecimalLiteral production with DecimalDigits to not allow Infinity, decimal points, or exponents.
 
 features: [BigInt]
 ---*/
diff --git a/test/built-ins/BigInt/constructor-from-decimal-string.js b/test/built-ins/BigInt/constructor-from-decimal-string.js
index c732b7f7aa064c828e31e85696b9a0af78d644cc..ecb128feed129f7aef0733ed201c271fcbe9f1cf 100644
--- a/test/built-ins/BigInt/constructor-from-decimal-string.js
+++ b/test/built-ins/BigInt/constructor-from-decimal-string.js
@@ -5,10 +5,17 @@
 description: String should be parsed to BigInt according StringToBigInt
 esid: sec-string-to-bigint
 info: |
-  Apply the algorithm in 3.1.3.1 with the following changes:
+  ToBigInt ( argument )
 
-  - Replace the StrUnsignedDecimalLiteral production with DecimalDigits
-    to not allow decimal points or exponents.
+  String:
+
+  Let n be StringToBigInt(prim).
+  If n is NaN, throw a SyntaxError exception.
+  Return n.
+
+  StringToBigInt ( argument )
+
+  Replace the StrUnsignedDecimalLiteral production with DecimalDigits to not allow Infinity, decimal points, or exponents.
 
 features: [BigInt]
 ---*/
diff --git a/test/built-ins/BigInt/constructor-from-hex-string.js b/test/built-ins/BigInt/constructor-from-hex-string.js
index f26b9d269834e4efad31423ef6b5b1eebd059975..1841559d2a7064c8cc41c28df6cea60ca10c2594 100644
--- a/test/built-ins/BigInt/constructor-from-hex-string.js
+++ b/test/built-ins/BigInt/constructor-from-hex-string.js
@@ -5,10 +5,17 @@
 description: Hexdecimal prefixed String should be parsed to BigInt according StringToBigInt
 esid: sec-string-to-bigint
 info: |
-  Apply the algorithm in 3.1.3.1 with the following changes:
+  ToBigInt ( argument )
 
-  - Replace the StrUnsignedDecimalLiteral production with DecimalDigits
-    to not allow decimal points or exponents.
+  String:
+
+  Let n be StringToBigInt(prim).
+  If n is NaN, throw a SyntaxError exception.
+  Return n.
+
+  StringToBigInt ( argument )
+
+  Replace the StrUnsignedDecimalLiteral production with DecimalDigits to not allow Infinity, decimal points, or exponents.
 
 features: [BigInt]
 ---*/
diff --git a/test/built-ins/BigInt/constructor-from-octal-string.js b/test/built-ins/BigInt/constructor-from-octal-string.js
index 59d18c64d1337595239505bac8654ca7863f0f7f..f4093fa96aebd4dfadf38f59ff6a145398f676a7 100644
--- a/test/built-ins/BigInt/constructor-from-octal-string.js
+++ b/test/built-ins/BigInt/constructor-from-octal-string.js
@@ -5,10 +5,17 @@
 description: Octal prefixed String should be parsed to BigInt according StringToBigInt
 esid: sec-string-to-bigint
 info: |
-  Apply the algorithm in 3.1.3.1 with the following changes:
+  ToBigInt ( argument )
 
-  - Replace the StrUnsignedDecimalLiteral production with DecimalDigits
-    to not allow decimal points or exponents.
+  String:
+
+  Let n be StringToBigInt(prim).
+  If n is NaN, throw a SyntaxError exception.
+  Return n.
+
+  StringToBigInt ( argument )
+
+  Replace the StrUnsignedDecimalLiteral production with DecimalDigits to not allow Infinity, decimal points, or exponents.
 
 features: [BigInt]
 ---*/
diff --git a/test/built-ins/BigInt/constructor-from-string-syntax-errors.js b/test/built-ins/BigInt/constructor-from-string-syntax-errors.js
index 6bdd6f3cbc356229dd5ebe5b3b44b68598bc04d7..0e5defa0d91b5d9371e5510ec2d451653ff647e3 100644
--- a/test/built-ins/BigInt/constructor-from-string-syntax-errors.js
+++ b/test/built-ins/BigInt/constructor-from-string-syntax-errors.js
@@ -5,10 +5,17 @@
 description: Invalid String into BigInt constructor should throw SyntaxError
 esid: sec-string-to-bigint
 info: |
-  Apply the algorithm in 3.1.3.1 with the following changes:
+  ToBigInt ( argument )
 
-  - Replace the StrUnsignedDecimalLiteral production with DecimalDigits
-    to not allow decimal points or exponents.
+  String:
+
+  Let n be StringToBigInt(prim).
+  If n is NaN, throw a SyntaxError exception.
+  Return n.
+
+  StringToBigInt ( argument )
+
+  Replace the StrUnsignedDecimalLiteral production with DecimalDigits to not allow Infinity, decimal points, or exponents.
 
 features: [BigInt]
 ---*/
diff --git a/test/built-ins/BigInt/constructor-integer.js b/test/built-ins/BigInt/constructor-integer.js
index 36e37e60e64869716e5b5b2722edf3829ed55db0..b416e43ecc1eb3d566251d34a9fb1638bfd846e8 100644
--- a/test/built-ins/BigInt/constructor-integer.js
+++ b/test/built-ins/BigInt/constructor-integer.js
@@ -3,7 +3,7 @@
 
 /*---
 description: BigInt constructor called with integer argument
-esid: sec-bigint-constructor
+esid: sec-bigint-constructor-number-value
 info: |
   BigInt ( value )
 
@@ -17,15 +17,20 @@ info: |
 features: [BigInt]
 ---*/
 
-assert.sameValue(BigInt(Number.MAX_SAFE_INTEGER), 9007199254740991n);
+assert.sameValue(
+  BigInt(Number.MAX_SAFE_INTEGER), 9007199254740991n,
+  "BigInt(Number.MAX_SAFE_INTEGER) === 9007199254740991n"
+);
 
-assert.sameValue(BigInt(-Number.MAX_SAFE_INTEGER), -9007199254740991n);
+assert.sameValue(
+  BigInt(-Number.MAX_SAFE_INTEGER), -9007199254740991n,
+  "BigInt(-Number.MAX_SAFE_INTEGER) === -9007199254740991n"
+);
 
-var pos = Math.pow(2, 53);
-var neg = -pos;
+assert.throws(RangeError, function() {
+  BigInt(Number.MAX_SAFE_INTEGER + 1);
+}, "BigInt(Number.MAX_SAFE_INTEGER + 1) throws RangeError");
 
-assert.sameValue(BigInt(pos), 9007199254740992n,
-                 "BigInt(2**53) === 9007199254740992n");
-
-assert.sameValue(BigInt(neg), -9007199254740992n,
-                 "BigInt(2**53) === -9007199254740992n");
+assert.throws(RangeError, function() {
+  BigInt(-Number.MAX_SAFE_INTEGER - 1);
+}, "BigInt(-Number.MAX_SAFE_INTEGER - 1) throws RangeError");
diff --git a/test/built-ins/BigInt/constructor-trailing-leading-spaces.js b/test/built-ins/BigInt/constructor-trailing-leading-spaces.js
index 8db1a76ea633d319622498cd6fa41857302df2b6..9ffdc45f461f2e407af9c92fba12381624018e7b 100644
--- a/test/built-ins/BigInt/constructor-trailing-leading-spaces.js
+++ b/test/built-ins/BigInt/constructor-trailing-leading-spaces.js
@@ -2,13 +2,21 @@
 // This code is governed by the BSD license found in the LICENSE file.
 
 /*---
-description: Tariling/Leading spaces should be ignored in BigInt constructor should
+description: Trailing/Leading spaces should be ignored in BigInt constructor
 esid: sec-string-to-bigint
 info: |
-  Apply the algorithm in 3.1.3.1 with the following changes:
+  ToBigInt ( argument )
+
+  String:
+
+  Let n be StringToBigInt(prim).
+  If n is NaN, throw a SyntaxError exception.
+  Return n.
+
+  StringToBigInt ( argument )
+
+  Replace the StrUnsignedDecimalLiteral production with DecimalDigits to not allow Infinity, decimal points, or exponents.
 
-  - Replace the StrUnsignedDecimalLiteral production with DecimalDigits
-    to not allow decimal points or exponents.
 
 features: [BigInt]
 ---*/
diff --git a/test/built-ins/BigInt/prototype/Symbol.toStringTag.js b/test/built-ins/BigInt/prototype/Symbol.toStringTag.js
index ab55f21253e5c72586bd6b3edad4b92071523492..a64ff70bf2d4e6f166509172c5ed21ba08b7eda5 100644
--- a/test/built-ins/BigInt/prototype/Symbol.toStringTag.js
+++ b/test/built-ins/BigInt/prototype/Symbol.toStringTag.js
@@ -11,7 +11,7 @@ info: |
     This property has the attributes { [[Writable]]: false, [[Enumerable]]:
     false, [[Configurable]]: true }.
 includes: [propertyHelper.js]
-features: [Symbol.toStringTag, BigInt, Symbol]
+features: [BigInt, Symbol, Symbol.toStringTag]
 ---*/
 
 verifyProperty(BigInt.prototype, Symbol.toStringTag, {
diff --git a/test/built-ins/BigInt/prototype/toString/thisbigintvalue-not-valid-throws.js b/test/built-ins/BigInt/prototype/toString/thisbigintvalue-not-valid-throws.js
index 92eee1c683963a45c5d65beb41eefb909cc423b9..1e4a1bd6b26674f3dc4b0263a7c6a71c4f2f727e 100644
--- a/test/built-ins/BigInt/prototype/toString/thisbigintvalue-not-valid-throws.js
+++ b/test/built-ins/BigInt/prototype/toString/thisbigintvalue-not-valid-throws.js
@@ -16,7 +16,7 @@ info: |
   2. If Type(value) is Object and value has a [[BigIntData]] internal slot, then
     ...
   3. Throw a TypeError exception.
-features: [BigInt, Symbol.toPrimitive]
+features: [BigInt, Symbol, Symbol.toPrimitive]
 ---*/
 
 var toString = BigInt.prototype.toString;
diff --git a/test/built-ins/BigInt/value-of-throws.js b/test/built-ins/BigInt/tostring-throws.js
similarity index 72%
rename from test/built-ins/BigInt/value-of-throws.js
rename to test/built-ins/BigInt/tostring-throws.js
index 671a9b94ca51e0c0c6aa3602841b5a1599d33131..031a85e1ea31f5738691374168e087fefd18b4f1 100644
--- a/test/built-ins/BigInt/value-of-throws.js
+++ b/test/built-ins/BigInt/tostring-throws.js
@@ -2,7 +2,7 @@
 // This code is governed by the BSD license found in the LICENSE file.
 
 /*---
-description: Throws exception in BigIntConstructor if valueOf/toString does that
+description: Throws exception in BigIntConstructor if toString throws
 esid: sec-bigint-constructor-number-value
 info: |
   1. If NewTarget is not undefined, throw a TypeError exception.
@@ -12,14 +12,6 @@ info: |
 features: [BigInt]
 ---*/
 
-assert.throws(Test262Error, function() {
-  BigInt({
-    valueOf: function() {
-      throw new Test262Error();
-    }
-  });
-});
-
 assert.throws(Test262Error, function() {
   BigInt({
     toString: function() {
diff --git a/test/built-ins/BigInt/valueof-throws.js b/test/built-ins/BigInt/valueof-throws.js
new file mode 100644
index 0000000000000000000000000000000000000000..7e3cef1f394ab37debf77185e123973073e75309
--- /dev/null
+++ b/test/built-ins/BigInt/valueof-throws.js
@@ -0,0 +1,21 @@
+// Copyright (C) 2017 Caio Lima. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+description: Throws exception in BigIntConstructor if valueOf throws
+esid: sec-bigint-constructor-number-value
+info: |
+  1. If NewTarget is not undefined, throw a TypeError exception.
+  2. Let prim be ? ToPrimitive(value, hint Number).
+  3. If Type(prim) is Number, return ? NumberToBigInt(prim).
+  4. Otherwise, return ? ToBigInt(value).
+features: [BigInt]
+---*/
+
+assert.throws(Test262Error, function() {
+  BigInt({
+    valueOf: function() {
+      throw new Test262Error();
+    }
+  });
+});