FIX: C4713 Internal Compiler Error, file reg86.c, line 2934Last reviewed: September 18, 1997Article ID: Q115850 |
|
1.00
WINDOWS
kbtool kbfixlist kbbuglist
The information in this article applies to:
SYMPTOMSThe optimizing C/C++ compiler generates the following internal compiler error message when the sample code below is compiled with the /Ox or /Oe compiler options:
warning C4713: test: internal compiler error; restarting
( compiler file '@(#)reg86.c:1.26', line 2934 )
CAUSEThe internal compiler error message is caused by using the global register allocation optimization. This is only a warning message. The compiler restarts the compile without the optimization after it realizes a problem has occurred due to the global register allocation optimization.
RESOLUTIONThere are four workarounds to avoid the warning message:
STATUSMicrosoft has confirmed this to be a problem in the Microsoft products listed above. This problem was corrected in Visual C++ version 1.5.
MORE INFORMATIONThe following sample can be used to demonstrate the problem.
Sample Code
/* Compile options needed: /Oe -or- /Ox
*/
Line 1 : typedef struct STRUCTURE
Line 2 : {
Line 3 : char* string1;
Line 4 : char* string2;
Line 5 : short index;
Line 6 : } *PSTRUCTURE;
Line 7 :
Line 8 : int ch;Line 9 : Line 10 : short test( PSTRUCTURE ptr)
Line 11 : {
Line 12 : for (;;)
Line 13 : {
Line 14 : if ( ch == '/' )
Line 15 : {
Line 16 : ptr->index = 2; // warining: C4713
Line 17 : ptr->string2 = ptr->string1;
Line 18 : return 0;
Line 19 : }
Line 20 :
Line 21 : if (ch == '\\' )
Line 22 : {
Line 23 : ch = *ptr->string1;
Line 24 : continue;
Line 25 : }
Line 26 : }
Line 30 : }
|
Additional reference words: 1.00 8.00
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |