$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Alexander Grund (alexander.grund_at_[hidden])
Date: 2019-06-28 08:33:34
Am 27.06.19 um 16:06 schrieb David Sankel via Boost:
> It looks like "clever" mode was #ifdef'ed out, but removing it as cruft
> would improve maintainability of the implementation and remove the
> complexity of having an additional `core_out_ptr_t` class.
Very much in favor of this especially after discussion in
https://github.com/ThePhD/out_ptr/issues/19:
TLDR: "clever" contains a potential double-free and fix seems to be not
considered (or postboned) as it is "off by default"
Therefore having an unsafe, buggy class inside the library should not be
allowed.
> The provided implementation works for smart pointers that follow
> conventions like the standard, but has some additional logic if the types
> happen to be `std::shared_ptr` or `boost::shared_ptr`. This hard coded
> special casing won't work with, say, a company specific shared pointer
> implementation. This relates to my earlier comment that the customization
> point should be simplified.
Great point. I'd suggest to provide 1 implementation and let
customization points handle these "special cases". This will be a great
test on how to implement those using the "official" customization points
and whether the API is sufficient.