Boost logo

Boost Users :

From: Thorsten Ottosen (thorsten.ottosen_at_[hidden])
Date: 2007-03-16 03:38:11


Brian Neal wrote:
> On 3/15/07, Brian Neal <bgneal_at_[hidden]> wrote:
>
>>On 3/15/07, Thorsten Ottosen <thorsten.ottosen_at_[hidden]> wrote:
>>
>>>Brian Neal wrote:
>>>
>>>>Hi -
>>>>
>>>>We used the ptr_container library under gcc and Linux. We are now
>>>>porting our software to the Integrity OS and the Green Hills Multi C++
>>>>compiler. This compiler has the EDG front end. It cannot compile
>>>>reversible_ptr_container.hpp.
>>>>
>>>>I had to change this:
>>>>
>>>> class reversible_ptr_container
>>>> {
>>>> private:
>>>> BOOST_STATIC_CONSTANT( bool, allow_null = Config::allow_null );
>>>>
>>>> typedef BOOST_DEDUCED_TYPENAME Config::value_type Ty_;
>>>>
>>>>To this:
>>>>
>>>> class reversible_ptr_container
>>>> {
>>>> public:
>>>> typedef BOOST_DEDUCED_TYPENAME Config::value_type Ty_;
>>>> private:
>>>> BOOST_STATIC_CONSTANT( bool, allow_null = Config::allow_null );

> The problem is, I believe, that null_clone_allocater, as a nested
> class of reversible_ptr_container, has no special visibility to see
> the type Ty_, which is private in the outer class.

This makes sense.

I guess a fix could be to make the class a friend, but I'm not keen
on using this with templates.

I guess I shuld simply use

   typedef typename Config::value_type* pointer;

inside null_clone_allocator

Thomas, can we fix this for 1.34?

-Thorsten


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net