C9102000: C1001: exphelp.c, Line 617

ID Number: Q69289

6.00 6.00a 6.00ax | 6.00 6.00a

MS-DOS | OS/2

buglist6.00 buglist6.00a buglist6.00ax fixlist7.00

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 default optimization and compact (/AC), large (/AL),

or huge (/AH) memory model:

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

(compiler file '@(#)exphelp.c:1.117', line 617)

Contact Microsoft Product Support Services

In addition to default optimization, this error also occurs when

using any one of the optimizations /Oi, /Oa, /Oc, /On, /Op, /Or,

/Os, /Ot, /Ow, or /Oz.

RESOLUTION

The following are three separate workarounds for this problem:

1. Compile without using default optimizations or any of the above

mentioned options.

2. Use the "optimize" pragma to disable optimizations for the

function that is producing the error.

3. Compile with the /qc (quick compile) option.

STATUS

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

6.0a, and 6.0ax. This problem was corrected in C/C++ version 7.0.

More Information:

Sample Code

-----------

/* Compile options needed: /AL

*/

void func(int *memoryPtr,unsigned long pageLow)

{

if ((*memoryPtr)>0)

pageLow=(unsigned long)memoryPtr>>28;

}

Additional reference words: 6.00 6.00a 6.00ax