C9008000: C1001: newcode.c, Line 535

ID Number: Q65330

6.00 6.00a 6.00ax | 6.00 6.00a

MS-DOS | OS/2

buglist6.00 buglist6.00a buglist6.00ax

Summary:

SYMPTOMS

The Microsoft C Compiler versions 6.0, 6.0a, and 6.0ax produce the

following internal compiler error when the sample program below is

compiled with /Oe:

fatal error C1001: Internal Compiler Error

(compiler file '@(#)newcode.c:1.87', line 535)

Contact Microsoft Product Support Services

RESOLUTION

To work around this error, disable the /Oe optimization.

STATUS

Microsoft has confirmed this to be a problem in C versions 6.0, 6.0a,

and 6.0ax. We are researching this problem and will post new

information here as it becomes available.

More Information:

Sample Code

-----------

/* Compile options needed: /Oe

*/

#include <stdlib.h>

#pragma intrinsic (_rotl)

void _cdecl ink(unsigned row, int nlines, unsigned char _huge *buff)

{

_segment seg;

unsigned char _based(seg) *next_row;

union

{

unsigned char _based(seg) *ptr;

unsigned _based(seg) *iptr;

}p;

do

{

*p.ptr++ &= _rotl(*p.iptr,1) & *next_row++;

if ((int)p.ptr > 0xc000)

seg += 0xc000;

}while(1);

}

Additional reference words: 6.00 6.00a 6.00ax