Boost logo

Boost :

Subject: Re: [boost] [containers] Clarifications on incomplete type support?
From: Ion Gaztañaga (igaztanaga_at_[hidden])
Date: 2014-09-22 16:56:02


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


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk