reading 8c (the only compiler that appears to implement this pragma), the difference appears to be in the conversion of (double, float) -> any type of integer. however,
#include <u.h> #include <libc.h> void main(void) { double d; d = 1.99999999999; #pragma fpround on print("%d\n", (int)d); #pragma fpround 0 print("%d\n", (int)d); } generates the same output and same assembly for both casts. can anyone explain what this pragma is supposed to do? - erik