This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Strange compilier's behaviour with function template, NAN and default parameter

I have got an error message with next code

template< typename Type >
int func( Type as, float fl=NAN );
error:  #109: expression preceding parentheses of apparent call must have (pointer-to-) function type

It seems the problem is with resolving NAN, defined in math.h at line 249

#   define NAN (__ESCAPE__(0f_7FC00000))

There is no problem if no NAN used

template< typename Type >
int func( Type as, float fl=0 );

There is no problem if template not used

int func( int as, float fl=NAN );

There is no problem with GCC.

Compilier version

*** Using Compiler 'V5.05 update 2 (build 169)'