corwin@polari.UUCP (Don Glover) (03/14/90)
I have the following code (condensed to a reasonable size for demonstration) extern int rand(); #define RND(x) (rand() % x) main() { rnd(6); } int rnd(x) /* 1 <= rnd(x) <= x */ register int x; { return(RND(x)+1); } the above code when compiled produces an idiv esi assembler instruction, that to the best of my ability to tell is an incorrect instruction, further my mahcine running xenix 386 chokes on it. is this a known bug or is there something I am missing?