ID Number: Q68145
6.00a 6.00ax | 6.00a
MS-DOS | OS/2
buglist6.00a buglist6.00ax fixlist7.00
Summary:
SYMPTOMS
The Microsoft C Compiler versions 6.0a and 6.0ax produce the
following internal compiler error when the sample program below is
compiled with default optimization:
file.c(10) : fatal error C1001: Internal Compiler Error
(compiler file '@(#)grammar.c:1.138', line 164)
Contact Microsoft Product Support Services
RESOLUTION
The following are possible workarounds for this error:
- Turn off all optimizations (compile with /Od).
- Remove the _fastcall keyword from the function declaration.
- Reduce the complex expression by using temporary variables.
- Compile with the /qc (quick compile) option.
STATUS
Microsoft has confirmed this to be a problem in C versions 6.0a and
6.0ax. This problem was corrected in C/C++ version 7.0.
More Information:
Sample Code
-----------
/* Compile options needed: /Gs
*/
#include<math.h>
double _fastcall round(void)
{
char *decimal;
double sign;
int right;
right=(int)(((int)(atof(decimal)+1.0))*1.0);
return (sign*(1.0+((double)right)));
}
Additional reference words: 6.00 6.00a 6.00ax fastcall