Microsoft KB Archive/143081

= PRB: Ambiguous Msg If Function Template Return Type Omitted =

Article ID: 143081

Article Last Modified on 7/5/2005

-

APPLIES TO


 * Microsoft Visual C++ 4.0 Professional Edition
 * Microsoft Visual C++ 5.0 Learning Edition

-



This article was previously published under Q143081



SYMPTOMS
Given 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 : ';'



RESOLUTION
Specify a return type for the function template.



STATUS
This behavior is by design.



MORE INFORMATION
In 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  Min (X &t1, X &t2) { if (t1 X& Min (X &t1, X &t2) { if (t1<t2) return t1; return t2; }

Keywords: kbprb kbcpponly kbcompiler KB143081

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.