FIX: Incorrect Template Declaration Causes Compiler HangLast reviewed: September 18, 1997Article ID: Q121015 |
2.00
WINDOWS NT
kbtool kbfixlist kbcode
The information in this article applies to:
SYMPTOMSThe compiler may hang (stop processing) when compiling a template that includes a syntax error in the function declaration as shown in the samples in this article.
RESOLUTIONPress CTRL+BREAK to stop the build process and return the focus to Visual C++. Correcting the syntax error will allow the code to compile.
STATUSMicrosoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. This problem was corrected in Microsoft Visual C++, 32-bit Edition, version 4.0.
MORE INFORMATIONThe following samples can be used to reproduce the problem:
Sample Code 1
/* Compile options needed: none */template <class T>
T max(T a, T b> // Note: ">" on right should be a ")" { return a; } void main () {} Sample Code 2
/* Compile options needed: none */template<class TYPE, class ARG_TYPE> class CList { public: TYPE* GetHead (void);};
// // SYNTAX ERROR: "TYPE(" instead of "TYPE*" //template<class TYPE, class ARG_TYPE> inline TYPE( CList<TYPE, ARG_TYPE>::GetHead (void) { }
|
Additional reference words: 2.00 9.00 hang lock-up freeze
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |