ID Number: Q68496
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 for large (/AL) memory model with default optimization:
file.c(9) : fatal error C1001: Internal Compiler Error
(compiler file '../grammar.c', line 140)
Contact Microsoft Product Support Services
This error will also occur with any of these optimizations: /Oa,
/Oc, /Oi, /On, /Op, /Or, /Os, /Ot, /Ow, or /Oz.
RESOLUTION
The following workarounds may be used to eliminate the error:
1. Compile with one of the following optimizations:
/Od, /Oe, /Og, /Ol and /Ox
-or-
2. Use the optimize pragma to turn off optimizations for the
function in which the error is occurring.
-or-
3. 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: /AL /Oa
*/
void select( int *x, int d, int *y, int *z)
{
int sx;
if( x != z && sx < 0)
x[0] = (-x[0]); /* this line causes error */
}
Additional reference words: 6.00 6.00a 6.00ax