@VirtualVirgin Another workaround could be this inline function.
// a more accuate rounding function for -2.1474836485e9<=value<=2.1474836465e9
inline function roundBetter(value){
local r = Math.round(value);
return (r+.5==value)?r+1:r;
}
const testArray = [0.,128.,-128., 32767., -32767. , 65535., -65535., 16777215., -16777215., 2147483646., -2147483646.];
for(v in testArray){
for(i=-11;i<11;i++){
Console.print("round("+(v+i+.5) + ")=" +Math.round(v+i+.5)+" ?=" + roundBetter(v+i+.5));
}
}