PRB: Ambiguous Msg If Function Template Return Type OmittedLast reviewed: July 31, 1997Article ID: Q143081 |
The information in this article applies to:
SYMPTOMSGiven a function template, if the return type is omitted, the error that results is a syntax error on the semicolon preceding the closing brace of the function.
minmax.cpp(4) : error C2059: syntax error : ';' RESOLUTIONSpecify a return type for the function template.
STATUSThis behavior is by design.
MORE INFORMATIONIn C++, it is an error for a function to be declared without a return type. This is in compliance with the proposed ANSI C++ specification (ref. ARM, section 7.1.1).
Sample Code
/* Compile options needed: /c */ // This Min is in error (no return type is specified) template <class X> Min (X &t1, X &t2) { if (t1<t2) return t1; return t2; } //the error message appears for this line //This Min is correct template <class X> X& Min (X &t1, X &t2) { if (t1<t2) return t1; return t2; } Keywords : CPPIss Version : 4.0 Platform : NT WINDOWS Issue type : kbprb |
================================================================================
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |