mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 14:07:45 +00:00
LibJS: Use trunc instead of a static_cast<i64> in is_integral_number
This ensures we return true for integers that do not fit in an i64 aka, above 9223372036854775807. (2**63 - 1)
This commit is contained in:
parent
44c8e158c1
commit
7a33a5c9b5
1 changed files with 1 additions and 1 deletions
|
@ -72,7 +72,7 @@ public:
|
||||||
bool is_negative_infinity() const { return is_number() && __builtin_isinf_sign(as_double()) < 0; }
|
bool is_negative_infinity() const { return is_number() && __builtin_isinf_sign(as_double()) < 0; }
|
||||||
bool is_positive_zero() const { return is_number() && bit_cast<u64>(as_double()) == 0; }
|
bool is_positive_zero() const { return is_number() && bit_cast<u64>(as_double()) == 0; }
|
||||||
bool is_negative_zero() const { return is_number() && bit_cast<u64>(as_double()) == NEGATIVE_ZERO_BITS; }
|
bool is_negative_zero() const { return is_number() && bit_cast<u64>(as_double()) == NEGATIVE_ZERO_BITS; }
|
||||||
bool is_integral_number() const { return is_finite_number() && static_cast<i64>(as_double()) == as_double(); }
|
bool is_integral_number() const { return is_finite_number() && trunc(as_double()) == as_double(); }
|
||||||
bool is_finite_number() const
|
bool is_finite_number() const
|
||||||
{
|
{
|
||||||
if (!is_number())
|
if (!is_number())
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue