Fix integer limits that depend on a size of the type.
LONG_MAX is 32-bit wide value on raspberrypi
This commit is contained in:
committed by
Pavel Punegov
parent
7861f23607
commit
6e7f577887
@@ -373,14 +373,14 @@ KFloat Kotlin_Float_unaryMinus (KFloat a ) { return -a; }
|
||||
|
||||
KInt Kotlin_Float_toInt (KFloat a ) {
|
||||
if (isnan(a)) return 0;
|
||||
if (a >= (KFloat) INT_MAX) return INT_MAX;
|
||||
if (a <= (KFloat) INT_MIN) return INT_MIN;
|
||||
if (a >= (KFloat) INT32_MAX) return INT32_MAX;
|
||||
if (a <= (KFloat) INT32_MIN) return INT32_MIN;
|
||||
return a;
|
||||
}
|
||||
KLong Kotlin_Float_toLong (KFloat a ) {
|
||||
if (isnan(a)) return 0;
|
||||
if (a >= (KFloat) LONG_MAX) return LONG_MAX;
|
||||
if (a <= (KFloat) LONG_MIN) return LONG_MIN;
|
||||
if (a >= (KFloat) INT64_MAX) return INT64_MAX;
|
||||
if (a <= (KFloat) INT64_MIN) return INT64_MIN;
|
||||
return a;
|
||||
}
|
||||
KFloat Kotlin_Float_toFloat (KFloat a ) { return a; }
|
||||
@@ -461,14 +461,14 @@ KDouble Kotlin_Double_unaryMinus (KDouble a ) { return -a; }
|
||||
|
||||
KInt Kotlin_Double_toInt (KDouble a ) {
|
||||
if (isnan(a)) return 0;
|
||||
if (a >= (KDouble) INT_MAX) return INT_MAX;
|
||||
if (a <= (KDouble) INT_MIN) return INT_MIN;
|
||||
if (a >= (KDouble) INT32_MAX) return INT32_MAX;
|
||||
if (a <= (KDouble) INT32_MIN) return INT32_MIN;
|
||||
return a;
|
||||
}
|
||||
KLong Kotlin_Double_toLong (KDouble a ) {
|
||||
if (isnan(a)) return 0;
|
||||
if (a >= (KDouble) LONG_MAX) return LONG_MAX;
|
||||
if (a <= (KDouble) LONG_MIN) return LONG_MIN;
|
||||
if (a >= (KDouble) INT64_MAX) return INT64_MAX;
|
||||
if (a <= (KDouble) INT64_MIN) return INT64_MIN;
|
||||
return a;
|
||||
}
|
||||
KByte Kotlin_Double_toByte (KDouble a ) { return (KByte) Kotlin_Double_toInt(a); }
|
||||
|
||||
Reference in New Issue
Block a user