
February 25th, 2004, 07:54 PM
|
 |
Major General
|
|
Join Date: Oct 2003
Location: Crystal Tokyo
Posts: 2,453
Thanks: 0
Thanked 0 Times in 0 Posts
|
|
Re: 2.08 and Incompatible Battle Reports
Quote:
Originally posted by PhilD:
Don't use two function calls in the same expression, is the lesson.
|
Compliers do strange things. A poorly-written compiler could rearrange consecutive lines if there is no obvious dependancy.
1: a=2d6+penetration
2: b=2d6+mrst
3: if(a>b){do c}
Lines 1 & 2 could be rearranged by a compiler if, for example, mrst is more local (already in a register) and penetration has to be fetched. That would have the same effect. I think C has some commands that let you force the complier to not rearrange things, though.
So the moral is actually not to trust Microsoft products, since they take away your control 
|