Boost logo

Boost :

From: Eric Friedman (ebf_at_[hidden])
Date: 2003-10-05 16:14:33

With the new variant changes I recently checked into CVS, I've started
getting errors with EDG-based compilers. I'll reproduce my problem below in
the hopes someone might be able to set me straight on what I'm doing wrong.


Compiling the following code...

  template <typename T>
  class outer
    template <typename U> class inner { };
    template <typename U> friend class inner;
    // ...

  int main()
    typedef outer<int>::inner<double> test;

...I get the following error with Comeau:

  error: template nesting depth does not match the previous
          declaration of class template "outer<T>::inner [with T=int]"
    template <typename U> friend class inner;

In case it's not evident, the goal is for outer<T>::inner<U> to have access
to private members of outer<T>.

Boost list run by bdawes at, gregod at, cpdaniel at, john at