瀏覽代碼

LibJS: Tweak error message in the NumberToBigInt abstract operation

This is no longer specific to the BigInt() constructor, so it shouldn't
be mentioning an 'argument' that we might not have.
Linus Groh 4 年之前
父節點
當前提交
3014e529be

+ 1 - 1
Userland/Libraries/LibJS/Runtime/BigInt.cpp

@@ -34,7 +34,7 @@ BigInt* number_to_bigint(GlobalObject& global_object, Value number)
 
 
     // 1. If IsIntegralNumber(number) is false, throw a RangeError exception.
     // 1. If IsIntegralNumber(number) is false, throw a RangeError exception.
     if (!number.is_integral_number()) {
     if (!number.is_integral_number()) {
-        vm.throw_exception<RangeError>(global_object, ErrorType::BigIntIntArgument);
+        vm.throw_exception<RangeError>(global_object, ErrorType::BigIntFromNonIntegral);
         return {};
         return {};
     }
     }
 
 

+ 1 - 1
Userland/Libraries/LibJS/Runtime/ErrorTypes.h

@@ -12,7 +12,7 @@
     M(AccessorValueOrWritable, "Accessor property descriptor cannot specify a value or writable key")                                   \
     M(AccessorValueOrWritable, "Accessor property descriptor cannot specify a value or writable key")                                   \
     M(BigIntBadOperator, "Cannot use {} operator with BigInt")                                                                          \
     M(BigIntBadOperator, "Cannot use {} operator with BigInt")                                                                          \
     M(BigIntBadOperatorOtherType, "Cannot use {} operator with BigInt and other type")                                                  \
     M(BigIntBadOperatorOtherType, "Cannot use {} operator with BigInt and other type")                                                  \
-    M(BigIntIntArgument, "BigInt argument must be an integer")                                                                          \
+    M(BigIntFromNonIntegral, "Cannot convert non-integral number to BigInt")                                                            \
     M(BigIntInvalidValue, "Invalid value for BigInt: {}")                                                                               \
     M(BigIntInvalidValue, "Invalid value for BigInt: {}")                                                                               \
     M(BindingNotInitialized, "Binding {} is not initialized")                                                                           \
     M(BindingNotInitialized, "Binding {} is not initialized")                                                                           \
     M(ClassConstructorWithoutNew, "Class constructor {} must be called with 'new'")                                                     \
     M(ClassConstructorWithoutNew, "Class constructor {} must be called with 'new'")                                                     \

+ 1 - 1
Userland/Libraries/LibJS/Tests/builtins/BigInt/BigInt.js

@@ -62,7 +62,7 @@ describe("errors", () => {
         [1.23, Infinity, -Infinity, NaN].forEach(value => {
         [1.23, Infinity, -Infinity, NaN].forEach(value => {
             expect(() => {
             expect(() => {
                 BigInt(value);
                 BigInt(value);
-            }).toThrowWithMessage(RangeError, "BigInt argument must be an integer");
+            }).toThrowWithMessage(RangeError, "Cannot convert non-integral number to BigInt");
         });
         });
     });
     });
 });
 });