Re: Problem with forward declaration of classes with nested templates

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi John,

oh, thanks i thought i simplified as much as i can. But i guess i was
wrong. Maybe i shouldn't simplify that much. My the real problem
occurs when using 2 recurring templates like this:

-----------------
struct a;
struct b;

struct a
{
   template<int i>
   struct impl : public b::template impl<i>
   {};
};

struct b
{
   template<int i>
   struct impl : public a::template impl<i-1>
   {};
};
-----------------

but I know i can be happy by rewriting it to:

-----------------
struct a;
struct b;

struct a
{
   template<int i>
   struct impl;
};

struct b
{
   template<int i>
   struct impl;
};

template<int i>
struct a::impl : public b::template impl<i>
{};

template<int i>
struct b::impl : public a::template impl<i-1>
{};
-----------------

But the question still remains, why doesn't it compile. Can you name something ?

Regards,
 Steven

On 9/26/06, John (Eljay) Love-Jensen <eljay@xxxxxxxxx> wrote:
Hi Steven,

It does not compile for the same reason this does not compile:

-----------------
struct b;

struct a : public b
{};

struct b
{};
-----------------

HTH,
--Eljay


[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux