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:
Pavel Punegov
2018-02-15 17:46:46 +03:00
committed by Pavel Punegov
parent 7861f23607
commit 6e7f577887
+8 -8
View File
@@ -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); }