Sign in to follow this  

GCC doesn't like my templates

This topic is 4676 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 have a structure that looks something like this:
template<typename T>
class Foo
{
    //...
};


template<typename T>
class Bar
{
    friend Foo<T>;
};

And I get some odd error like invalid class-key or something. (Sorry, can't get the exact error at the moment, GCC is not handy). What's wrong with this? VC 6/7 don't mind it at all.

Share this post


Link to post
Share on other sites
You need this:

template<typename T>
class Foo
{
//...
};


template<typename T>
class Bar
{
friend class Foo<T>;
};




Just compiled in Dev and it works [grin]

Original error was:
16 ... a class-key must be used when declaring a friend 

Share this post


Link to post
Share on other sites
A "class key" is simply the class keyword. Change that line to :

friend class Foo<T>;

and it will work.

<edit :: damn, the servers are so slow

Share this post


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