• Advertisement
Sign in to follow this  

Visual C++ Template error

This topic is 4790 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I'm quite sure I've found a compiler error and a workaround for it. So I post it here just in case someone will need it.
void func0(int) {}

//typedef int int_alias; //with this line it compiles OK
#define int_alias int //with this line it generates an error (see below)

template <void (*problem_symbol)(int_alias)>
void func(int i) {}

template <typename T>
void func2(int i = -1) {}

template<>
void func2<float>(int i)
{
    func<func0>(i);
    //error C2383: 'problem_symbol' : default-arguments are not allowed on this symbol
}

Share this post


Link to post
Share on other sites
Advertisement
Sign in to follow this  

  • Advertisement