version 1.38, 2002/03/20 17:47:07
|
version 1.39, 2002/03/20 19:13:40
|
|
|
| |
while (first != last) | while (first != last) |
{ | { |
if (x < -922337203685477580LL /* -(1<<63) / 10 */) |
if (x < PEGASUS_LLONG_MIN/10) |
{ | { |
return false; | return false; |
} | } |
|
|
| |
while (first != last) | while (first != last) |
{ | { |
if (x > 1844674407370955161ULL /* (1<<64 - 1) / 10 */) |
if (x > PEGASUS_ULLONG_MAX/10) |
{ | { |
return false; | return false; |
} | } |
x = 10 * x; | x = 10 * x; |
Uint64 newDigit = (*first++ - '0'); | Uint64 newDigit = (*first++ - '0'); |
if (18446744073709551615ULL - x < newDigit) |
if (PEGASUS_ULLONG_MAX - x < newDigit) |
{ | { |
return false; | return false; |
} | } |