C9203004: C1001: main.c, Line 807

ID Number: Q82282

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: C9203004

SYMPTOMS

Microsoft C versions 6.0, 6.0a, and 6.0ax generate an internal

compiler error when the sample code below is compiled with

optimizations disabled (/Od).

With C 6.0a and C 6.0ax the following error is produced:

file.c(19) : fatal error C1001: Internal Compiler Error

(compiler file '@(#)main.c:1.177', line 807)

Contact Microsoft Product Support Services

With C 6.0, the following error is generated:

file.c(19) : fatal error C1001: Internal Compiler Error

(compiler file '@(#)main.c:1.176', line 807)

Contact Microsoft Product Support Services

RESOLUTION

To avoid this problem, do one of the following:

1. Enable any optimizations. This can be done on the command line

or by using a pragma to control the optimization for specific

blocks of code.

-or-

2. Compile using the quick compile (/qc) option.

STATUS

Microsoft has confirmed this to be a problem in Microsoft C

versions 6.0, 6.0a, and 6.0ax. This problem was corrected in

Microsoft C/C++ version 7.0.

More Information:

Sample Code

-----------

/* Compile options needed: /Od

*/

void _far Terminate( void );

struct termination{

char mov_ax;

int data;

int int21h;

} kill = { 0x0B8, 0x4C00, 0x0CD21 };

void _far Terminate( void ) {

_asm {

mov bx, bp

mov [bx+2], SEG kill

mov [bx+4], OFFSET kill

}

}

Additional reference words: 6.00 6.00a 6.00ax