Subject: Re: [boost] std::auto_ptr in public interfaces
From: Robert Ramey (ramey_at_[hidden])
Date: 2017-05-20 17:46:24


On 5/20/17 10:18 AM, Richard Hodges via Boost wrote:

> If the maintainers have the bandwidth, I'd like my c++14 code to stop
> whining about auto_ptr when I link to boost. Since auto_ptr is deprecated
> in 14 I'd prefer to see the auto_ptr interface vanish when building for 14
> unless I specifically request it by defining the preprocess or symbol
> BOOST_ALLOW_AUTO_PTR or some such.

We already BOOST_NO_AUTO_PTR have as part of config.hpp . It was
originally defined to address C++03 libraries that didn't included it.
The implementation could easily (I presume, since I'm not the person who
is going to do it) be extended so that it is defined for C++11+
conforming compilers.

As an aside, config.hpp, developed / maintained by John Maddoc is a
masterpiece which is the cornerstone of boost. Without this we would
have not been able to get library development working across the wide
variety of C++ compilers we have addressed. Without this, there is no
way the serialization library (for example) could hope to maintain
backward compatibility for code AND data. Without this, neither Boost
nor C++ would be where they are today. And it's not just a trick -
it's a huge effort in it's own right. A large majority of boost users,
and even some developers fail to understand and appreciate this this.

Robert Ramey