
El 22/09/2014 19:34, Mikael Persson wrote:
[snip]
What my problem basically boils down to is being able to have a recursive data structure with "back-pointers" (as iterators). Like this:
Thanks for the example. Back-pointers seem to be a very useful feature. I've merged your pull request, added the guarantee to instantiate iterators to containers of incomplete types and updated the recursive container example. I don't know if more explicit guarantees should be given both for containers and iterators. For example, this compiles: #include <boost/container/vector.hpp> struct I; int main() { static boost::container::vector<I> *p; p->size(); return 0; } but I think it would be too much work to specify which operations work with incomplete types. Have you found any need to support member functions of containers of incomplete types? Best, Ion