I know this is C code, but I promise this is about Rust. I tried this C code using extern "C" rust calls: ```c void test() { fesetround(FE_UPWARD); printf("Should be -4: %d\n", (int)rint((double)-4.4)); } ``` I expected to see this happen: Should be -4: -4 Instead, this happened: Should be -4: -5 ### Meta I have built a repository at https://github.com/sarchar/fesetroundbug but generally, this behavior only exists in the Linux build. With clang, gcc, and windows Rust, the correct value is displayed. Please help.