Follow-up Comment #2, patch #4819 (project freeciv):
I checked it several ways, confirming both in-game and with various language
references. I also wrote a simple test program to confirm syntax (although
I've deleted it). From memory:
#include <stdio.h>
int main (void) {
int i, q;
for(i=0;i++;i<37){
q=(int)(i*1.41421356f);
printf("i:%d, q:%d\n",i,q);
}
return 0;
}
My understanding is that multiplication of an integer and a float results
in a double, regardless of the order of the operands (see 7.3.1 in
http://cm.bell-labs.com/who/dmr/cman.pdf). That said, modern C may have
adjusted this at some point (I've not been following the new standards
closely), but this form works with my compiler.
_______________________________________________________
Reply to this item at:
<http://gna.org/patch/?4819>
_______________________________________________
Message sent via/by Gna!
http://gna.org/
_______________________________________________
Freeciv-dev mailing list
[email protected]
https://mail.gna.org/listinfo/freeciv-dev