Re: Dependency loop with templates

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

 



Perry Smith <pedz@xxxxxxxxxxxxxxxx> writes:

> Sorry to be such a pest about this.  I still don't understand this
> two phase lookup.  Here is my logic:
> 
> StreamSize(v[i]) depends upon v[i] which depends upon std::vector<V>
> which depends upon V.  So, StreamSize does (according to my logic)
> depend upon the template argument.  Where did I go wrong?

In fact, I think you're right, and I'm wrong.  Sorry about that.

I think this may be a bug in the compiler.  Here is a reduced test
case:

class c;
template<typename T> class tm { public: const T& g() const; };
namespace n {
  template <class T> int fn(const tm<T> &v) { return fn(v.g());  }
  int fn(const c *p);
}
int main() { tm<c *> v; return n::fn(v); }

Interestingly, it works as expected without the namespace.

I'll file this as a bug report and see what happens.

Thanks for pushing on this.

Ian

[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