소스 검색

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.
     if (!number.is_integral_number()) {
-        vm.throw_exception<RangeError>(global_object, ErrorType::BigIntIntArgument);
+        vm.throw_exception<RangeError>(global_object, ErrorType::BigIntFromNonIntegral);
         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(BigIntBadOperator, "Cannot use {} operator with BigInt")                                                                          \
     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(BindingNotInitialized, "Binding {} is not initialized")                                                                           \
     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 => {
             expect(() => {
                 BigInt(value);
-            }).toThrowWithMessage(RangeError, "BigInt argument must be an integer");
+            }).toThrowWithMessage(RangeError, "Cannot convert non-integral number to BigInt");
         });
     });
 });