fatal error C1001: An internal error has occurred in the compiler. (Release Mode Only)

EDN Admin

Well-known member
Joined
Aug 7, 2010
Messages
12,794
Location
In the Machine
<font size="2 <font color="#0000ff" size="2 <font color="#0000ff" size="2 Hi Folks,

I got some code that works fine in Debug-Mode but causes a compiler error in Release-Mode:

const</font><font color="#000000" size="2 </font><font color="#0000ff" size="2 float</font><font size="2 <font color="#000000 fx = pfx<0?0:(pfx>width-1?width-1:pfx), fy = pfy<0?0:(pfy>height-1?height-1:pfy);</font> </font><font color="#0000ff" size="2 const</font><font size="2 </font><font color="#0000ff" size="2 unsigned</font><font size="2 </font><font color="#0000ff" size="2 int</font><font size="2 x = (</font><font color="#0000ff" size="2 unsigned</font><font size="2 </font><font color="#0000ff" size="2 int</font><font size="2 )fx; </font><font color="#0000ff" size="2 const</font><font size="2 </font><font color="#0000ff" size="2 unsigned</font><font size="2 </font><font color="#0000ff" size="2 int</font><font size="2 px = (</font><font color="#0000ff" size="2 int</font><font size="2 )x-1>=0?x-1:0, nx = x+1<width?x+1:width-1, ax = nx+1<width?nx+1:width-1; </font><font color="#0000ff" size="2 const</font><font size="2 </font><font color="#0000ff" size="2 unsigned</font><font size="2 </font><font color="#0000ff" size="2 int</font><font size="2 y = (</font><font color="#0000ff" size="2 unsigned</font><font size="2 </font><font color="#0000ff" size="2 int</font><font size="2 )fy, py = (</font><font color="#0000ff" size="2 int</font><font size="2 )y-1>=0?y-1:0, ny = y+1<height?y+1:height-1, ay = ny+1<height?ny+1:height-1; </font><font color="#0000ff" size="2 const</font><font size="2 </font><font color="#0000ff" size="2 float</font><font size="2 dx = fx-x; </font><font color="#0000ff" size="2 const</font><font size="2 </font><font color="#0000ff" size="2 float</font><font size="2 dy = fy-y; </font><font color="#0000ff" size="2 const</font><font size="2 T& a = (*</font><font color="#0000ff" size="2 this</font><font size="2 )(px,py,z); </font><font color="#0000ff" size="2 const</font><font size="2 T& b = (*</font><font color="#0000ff" size="2 this</font><font size="2 )(x,py,z); </font><font color="#0000ff" size="2 const</font><font size="2 T& c = (*</font><font color="#0000ff" size="2 this</font><font size="2 )(nx,py,z); </font><font color="#0000ff" size="2 const</font><font size="2 T& d = (*</font><font color="#0000ff" size="2 this</font><font size="2 )(ax,py,z); </font><font color="#0000ff" size="2 const</font><font size="2 T& e = (*</font><font color="#0000ff" size="2 this</font><font size="2 )(px, y,z); </font><font color="#0000ff" size="2 const</font><font size="2 T& f = (*</font><font color="#0000ff" size="2 this</font><font size="2 )(x, y,z); </font><font color="#0000ff" size="2 const</font><font size="2 T& g = (*</font><font color="#0000ff" size="2 this</font><font size="2 )(nx, y,z); </font><font color="#0000ff" size="2 const</font><font size="2 T& h = (*</font><font color="#0000ff" size="2 this</font><font size="2 )(ax, y,z); </font><font color="#0000ff" size="2 const</font><font size="2 T& i = (*</font><font color="#0000ff" size="2 this</font><font size="2 )(px,ny,z); </font><font color="#0000ff" size="2 const</font><font size="2 T& j = (*</font><font color="#0000ff" size="2 this</font><font size="2 )(x,ny,z); </font><font color="#0000ff" size="2 const</font><font size="2 T& k = (*</font><font color="#0000ff" size="2 this</font><font size="2 )(nx,ny,z); </font><font color="#0000ff" size="2 const</font><font size="2 T& l = (*</font><font color="#0000ff" size="2 this</font><font size="2 )(ax,ny,z); </font><font color="#0000ff" size="2 const</font><font size="2 T& m = (*</font><font color="#0000ff" size="2 this</font><font size="2 )(px,ay,z); </font><font color="#0000ff" size="2 const</font><font size="2 T& n = (*</font><font color="#0000ff" size="2 this</font><font size="2 )(x,ay,z); </font><font color="#0000ff" size="2 const</font><font size="2 T& o = (*</font><font color="#0000ff" size="2 this</font><font size="2 )(nx,ay,z); </font><font color="#0000ff" size="2 const</font><font size="2 T& p = (*</font><font color="#0000ff" size="2 this</font><font size="2 )(ax,ay,z); >> This Line seems to cause the compiler error:</font>

const</font><font size="2 </font><font color="#0000ff" size="2 double</font><font size="2 A = dx*dx*dx*(2*(b-c)+0.5*(c-a+d-b)) + dx*dx*(2*c-2.5*b+a-0.5*d) + dx*0.5*(c-a) + b;

This is, what VS2005 has to say about the error:

<font size="1 fatal error C1001: An internal error has occurred in the compiler.</font> (compiler file f:rtmvctoolscompilerutcsrcP2main.c[0xCCCCCCCC:0xCCCCCCCC], line 182) To work around this problem, try simplifying or changing the program near the locations listed above. Please choose the Technical Support command on the Visual C++ Help menu, or open the Technical Support help file for more information LINK : fatal error LNK1000: Internal error during IMAGE::BuildImage Version 8.00.50727.42 ExceptionCode = C0000005 ExceptionFlags = 00000000 ExceptionAddress = CCCCCCCC NumberParameters = 00000002 ExceptionInformation[ 0] = 00000000 ExceptionInformation[ 1] = CCCCCCCC CONTEXT: Eax = 0000000C Esp = 0012EC50 Ebx = 0373ED0D Ebp = 00004004 Ecx = 037431F8 Esi = 037431F8 Edx = 00004004 Edi = 03743B08 Eip = CCCCCCCC EFlags = 00010206 SegCs = 0000001B SegDs = 00000023 SegSs = 00000023 SegEs = 00000023 SegFs = 0000003B SegGs = 00000000 Dr0 = 00000000 Dr3 = 00000000 Dr1 = 00000000 Dr6 = 00000000 Dr2 = 00000000 Dr7 = 00000000

I already tried to simplify my code (before there where several constant definitions per line), I already tried reordering my code and I already tried to turn off all possible optimizations. (although I need them badly) Could anybody please tell me, how to face an error like this?

Best Regards

LastFreeName
<font size="1
</font>



</font></font>

View the full article
 
Back
Top