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. |