Boost logo

Boost :

Subject: Re: [boost] [parameter] Go C++11 and above only, or keep C++03 support?
From: Andrey Semashev (andrey.semashev_at_[hidden])
Date: 2018-11-03 11:12:58


On 11/3/18 5:17 AM, Cromwell Enage via Boost wrote:
> Hi, everyone.
>
> The end of section 3.2.1 of the current Boost.Parameter home page tutorial
> notes "that because of the forwarding problem,
> parameter::parameters::operator() can't accept non-const rvalues". I've
> submitted a PR to the develop branch on GitHub that would grant
> Boost.Parameter the ability to support perfect forwarding and eliminate
> this issue. However, the PR uses rvalue references (in parameter::keyword,
> parameter::parameters, and the code generation macros) and variadic
> templates (in parameter::parameters and the code generation macros). With
> the exception of BOOST_PARAMETER_TEMPLATE_KEYWORD, the PR would make
> Boost.Parameter a C++11 library. As a result--based on <
> http://pdimov.github.io/boostdep-report/develop/parameter.html#reverse-dependencies>--the
> following Boost libraries known to use Boost.Parameter would also become
> C++11:
>
> Boost.Log
>
> I'd like to hear from everyone else, especially the maintainers and users
> of these libraries, if it's okay for Boost.Parameter to go C++11 and above
> only or if C++03 support is still necessary.

I would prefer to keep backward compatibility with C++03, if possible.
Is it possible to use Boost.Move or conditionally enable perfect
forwarding on C++11 and retain the old code for C++03?


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