ID Number: Q80129
6.00 6.00a 6.00ax | 6.00 6.00a
MS-DOS | OS/2
buglist6.00 buglist6.00a buglist6.00ax fixlist7.00
Summary:
PROBLEM ID: C9112001
SYMPTOMS
The Microsoft C Compiler version 6.0, 6.0a, or 6.0ax produces the
following internal compiler error when the sample program below is
compiled for any memory model:
file.c(12) : fatal error C1001: Internal Compiler Error
(compiler file '@(#)newcode.c:1.89', line 588)
Contact Microsoft Product Support Services
The same error may be generated for file.c(55) also.
RESOLUTION
This problem may be eliminated by one of the following workarounds:
- Compile with the /qc (quick compile) option.
-or-
- Instead of using the location counter ($) to calculate the
current position, use the following:
_asm foo: mov ax, offset foo
STATUS
Microsoft has confirmed this to be a problem in the Microsoft C
Compiler versions 6.0, 6.0a, and 6.0ax. This problem was corrected
in C/C++ version 7.0.
More Information:
The sample code below will reproduce the problem.
Sample Code
-----------
/* Compile options needed: none
*/
void main(void)
{
_asm mov ax, offset $ /* This line will cause C1001. */
}
Additional reference words: 6.00 6.00a 6.00ax inline