[parameter] Go C++11 and above only, or keep C++03 support?

classic Classic list List threaded Threaded
40 messages Options
12
Reply | Threaded
Open this post in threaded view
|

[parameter] Go C++11 and above only, or keep C++03 support?

Boost - Dev mailing list
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.Accumulators
Boost.Convert
Boost.Graph
Boost.Heap
Boost.Log
Boost.MetaStateMachine or Boost.MSM
Boost.Parameter_Python
Boost.Signals2

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.

Cromwell D. Enage

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [parameter] Go C++11 and above only, or keep C++03 support?

Boost - Dev mailing list
On Fri, Nov 2, 2018 at 9:17 PM Cromwell Enage via Boost <
[hidden email]> wrote:

> 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".
>

This seems like the kind of feature that could be optional and only turned
on when possible. Why not go that route?


--
-- Rene Rivera
-- Grafik - Don't Assume Anything
-- Robot Dreams - http://robot-dreams.net

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [parameter] Go C++11 and above only, or keep C++03 support?

Boost - Dev mailing list
Hi, Rene.

I've gone that route before, and I can do so again, although currently I'm
running into an unexpected difficulty getting the legacy portions of the
code generation macros to cooperate with a couple of corner cases.  I
removed C++03 support with the understanding that the rest of Boost would
drop C++03 support starting with the upcoming release.  Please let me know
if I'm mistaken.

Cromwell D. Enage

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [parameter] Go C++11 and above only, or keep C++03 support?

Boost - Dev mailing list
On Fri, Nov 2, 2018 at 9:48 PM Cromwell Enage via Boost <
[hidden email]> wrote:

> I've gone that route before, and I can do so again, although currently I'm
> running into an unexpected difficulty getting the legacy portions of the
> code generation macros to cooperate with a couple of corner cases.  I
> removed C++03 support with the understanding that the rest of Boost would
> drop C++03 support starting with the upcoming release.  Please let me know
> if I'm mistaken.
>

I'm not objecting.. I was only curious if there was some technical reason.

--
-- Rene Rivera
-- Grafik - Don't Assume Anything
-- Robot Dreams - http://robot-dreams.net

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [parameter] Go C++11 and above only, or keep C++03 support?

Boost - Dev mailing list
In reply to this post by Boost - Dev mailing list
On Fri, Nov 2, 2018 at 10:48 PM Cromwell Enage  wrote:
> I removed C++03 support with the understanding that the rest of Boost would
> drop C++03 support starting with the upcoming release.  Please let me know
> if I'm mistaken.

It has not been announced or finalized yet, and as such, is not the
case currently for the upcoming Boost 1.69 release.

Glen

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [parameter] Go C++11 and above only, or keep C++03 support?

Boost - Dev mailing list
On 11/3/2018 12:04 AM, Glen Fernandes via Boost wrote:
> On Fri, Nov 2, 2018 at 10:48 PM Cromwell Enage  wrote:
>> I removed C++03 support with the understanding that the rest of Boost would
>> drop C++03 support starting with the upcoming release.  Please let me know
>> if I'm mistaken.
>
> It has not been announced or finalized yet, and as such, is not the
> case currently for the upcoming Boost 1.69 release.

The changes mentioned in Parameter will not be in the 1.69 release, but
are planned for the 1.70 release. We have also discussed extensively
that Boost will be dropping support for C++03 and what this means.

>
> Glen


_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [parameter] Go C++11 and above only, or keep C++03 support?

Boost - Dev mailing list
Edward Diener wrote:

> We have also discussed extensively that Boost will be dropping support for
> C++03 and what this means.

We did discuss it, but we haven't decided anything yet. And if/when we do,
we'll need to announce it at least one release in advance.

(We still have time, in principle, for the decision and for the announcement
that 1.69 will be the last C++03 release. I doubt that we'll reach consensus
so quickly though.)


_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [parameter] Go C++11 and above only, or keep C++03 support?

Boost - Dev mailing list
On Sat, 3 Nov 2018 at 06:57, Peter Dimov via Boost <[hidden email]>
wrote:

> We did discuss it, but we haven't decided anything yet.
>

The writing is on the wall, the inevitable will need to be done at some
point. Here [with OP's question] we have a perfect example why this will be
happening.

My advice: Take the blue pill and cut the green wire coming of the battery
going to that pipe-like structure next to the ticking clock [before it goes
kaboom].

degski
--
*“If something cannot go on forever, it will stop" - Herbert Stein*

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [parameter] Go C++11 and above only, or keep C++03 support?

Boost - Dev mailing list
In reply to this post by Boost - Dev mailing list
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?

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [parameter] Go C++11 and above only, or keep C++03 support?

Boost - Dev mailing list
Hello, Andrey.

It's possible to retain the old code for C++03 compilers.  Which ones do
your library users have?

Cromwell D. Enage

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [parameter] Go C++11 and above only, or keep C++03 support?

Boost - Dev mailing list
On Sat, Nov 3, 2018 at 7:48 AM Cromwell Enage wrote:
> It's possible to retain the old code for C++03 compilers.  Which ones do
> your library users have?

For now, until all the library authors in question provide you with
some list of C++ implementations that they want to support, you can
ensure the current tested C++ implementations in the Develop and
Master regression matrix, as well as any in the Travis and Appveyor,
continue to pass if they did before.

But since this pull request is targeting Boost 1.70, it looks like
there is no rush anyway. After the ISO C++ committee meeting, I will
be happy to help (with code or reviews) if you find supporting C++03
difficult in some way.

Glen

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [parameter] Go C++11 and above only, or keep C++03 support?

Boost - Dev mailing list
In reply to this post by Boost - Dev mailing list
On 11/3/18 2:47 PM, Cromwell Enage via Boost wrote:
> Hello, Andrey.
>
> It's possible to retain the old code for C++03 compilers.  Which ones do
> your library users have?

I don't have this data. Boost.Log is documented to support gcc since 4.5
and MSVC since 8.0 SP1. It might be ok to raise the minimum requirement
a bit, if it makes it easier to support in Boost.Parameter and other
lower level libraries, but switching sraight to C++11 might be big deal
for users. I'm not adamantly against it, not to the point I would
rewrite Boost.Log just to stay C++03 compatible. But it would seem that
the C++11 requirement is not that necessary in Boost.Parameter either -
you can just keep the existing code in C++03 mode it it'll work as before.

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [parameter] Go C++11 and above only, or keep C++03 support?

Boost - Dev mailing list
On Sat, 3 Nov 2018 at 14:41, Andrey Semashev via Boost <
[hidden email]> wrote:

> On 11/3/18 2:47 PM, Cromwell Enage via Boost wrote:
> > Hello, Andrey.
> >
> > It's possible to retain the old code for C++03 compilers.  Which ones do
> > your library users have?
>
> I don't have this data. Boost.Log is documented to support gcc since 4.5
> and MSVC since 8.0 SP1. It might be ok to raise the minimum requirement
> a bit, if it makes it easier to support in Boost.Parameter and other
> lower level libraries, but switching sraight to C++11 might be big deal
> for users.


The following question has been asked many times by many posters and there
never is an answer: "Those users who want to stick to the old ways of doing
things and like to use unsafe compilers [Meltdown, Spectre come to mind],
why can't they just use old versions of Boost?" Why does the latest version
of Boost need to work with the oldest (limping) compiler in existence. If
you are [as a user] sticking to C++98 [forget C++03, that's just cosmetics]
you are seriously hampering yourself. Also as Edward points out, compiling
things with a later std does not imply that "the" user [or Boost] code
needs to change [at least in the case of C++11, there are very few changes
that are required].

There was, as far as I read it, considerable support to at least move to
C++11, which is already 2 standards behind the current standard [and is by
now fully supported on the main platforms]. Whatever is documented is not
relevant, if the docs are out of date, they have to be updated. If every
time this kind of question pops up, the answer is, "let's keep backward
compatibility", then when are we gonna move to a newer standard? Or to put
it differently, a direct question to you Andrey, at which point in time
[which new std, 20, 23, 26, 29, 32???] do you think it will be opportune to
move to C++11 and break with C++98 [because doing nothing will always be
easier]?


> I'm not adamantly against it, not to the point I would
> rewrite Boost.Log just to stay C++03 compatible. But it would seem that
> the C++11 requirement is not that necessary in Boost.Parameter either -
> you can just keep the existing code in C++03 mode it it'll work as before.
>

I guess, it's always possible to write more code [that's what you ask all
maintainers to do] and work around the C++11 specificities? Why do we even
get/need new standards, if one can just as well keep writing code the old
way, it's absolutely useless [those new standards], the old stuff works.
There does not need to be a new Boost release either, it worked so far, and
we can write code to work around the bugs [that's what (some) people seem
to do] or just depend on known UB [as long as you don't change the
compiler, it will keep working].

degski
--
*“If something cannot go on forever, it will stop" - Herbert Stein*

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [parameter] Go C++11 and above only, or keep C++03 support?

Boost - Dev mailing list
In reply to this post by Boost - Dev mailing list
Andrey Semashev wrote:

> I'm not adamantly against it, not to the point I would rewrite Boost.Log
> just to stay C++03 compatible.

Going that far may be unnecessary; we could just fork a `parameter03` so
that C++03 libraries can keep using it.


_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [parameter] Go C++11 and above only, or keep C++03 support?

Boost - Dev mailing list
In reply to this post by Boost - Dev mailing list
On 11/3/18 4:21 PM, degski wrote:

> On Sat, 3 Nov 2018 at 14:41, Andrey Semashev via Boost
> <[hidden email] <mailto:[hidden email]>> wrote:
>
>     On 11/3/18 2:47 PM, Cromwell Enage via Boost wrote:
>      > Hello, Andrey.
>      >
>      > It's possible to retain the old code for C++03 compilers.  Which
>     ones do
>      > your library users have?
>
>     I don't have this data. Boost.Log is documented to support gcc since
>     4.5
>     and MSVC since 8.0 SP1. It might be ok to raise the minimum requirement
>     a bit, if it makes it easier to support in Boost.Parameter and other
>     lower level libraries, but switching sraight to C++11 might be big deal
>     for users.
>
>
> The following question has been asked many times by many posters and
> there never is an answer: "Those users who want to stick to the old ways
> of doing things and like to use unsafe compilers [Meltdown, Spectre come
> to mind], why can't they just use old versions of Boost?"

As it was answered, also many times: because we don't do support
releases. Basically, if a bug is discovered, our recommendation is
always "use a more recent Boost release". Of course, users can apply
patches to their versions of Boost but this is a significant maintenance
burden and may not be acceptable to everyone.

Having new features and libraries might also be desirable. That the
user's code base is C++03 doesn't necessarily mean it doesn't evolve.

> There was, as far as I read it, considerable support to at least move to
> C++11, which is already 2 standards behind the current standard [and is
> by now fully supported on the main platforms]. Whatever is documented is
> not relevant, if the docs are out of date, they have to be updated. If
> every time this kind of question pops up, the answer is, "let's keep
> backward compatibility", then when are we gonna move to a newer
> standard? Or to put it differently, a direct question to you Andrey, at
> which point in time [which new std, 20, 23, 26, 29, 32???] do you think
> it will be opportune to move to C++11 and break with C++98 [because
> doing nothing will always be easier]?

If by "move" you mean actively stripping Boost from C++03 support then
probably never. But as far as I'm concerned, Boost has moved to C++11
and later as soon as the first C++11 was accepted. At that point in
time, the rest of Boost, still compatible with C++03, did not disappear
and stayed relevant. C++03-compatible libraries are still a part of
Boost and very much relevant, despite how many C++ versions have come out.

Specifically for Boost.Log, it already does use some of the C++11
features, when available. And I even think it started doing so before
C++11 was finalized. But I still consider C++03 compatibility a plus
rather than a minus.

On a personal note, I find this "C++11 holy cow" hype quite a pointless
waste of breath (or... network bandwidth, I guess). There is no point in
dropping libraries on the ground of C++03 compatibility, so that's never
going to happen. Boost never rejected libraries that targeted newer C++
versions, that's not changing either. Declaring that we're not testing
C++03 compilers anymore might make sense, but we actually do. So I don't
quite understand what were the recent discussions about "dropping C++03"
about. Just stop debating and start writing some great code, guys! Our
users will be only happy. :)

>     I'm not adamantly against it, not to the point I would
>     rewrite Boost.Log just to stay C++03 compatible. But it would seem that
>     the C++11 requirement is not that necessary in Boost.Parameter either -
>     you can just keep the existing code in C++03 mode it it'll work as
>     before.
>
> I guess, it's always possible to write more code [that's what you ask
> all maintainers to do] and work around the C++11 specificities?

It's a tradeoff, of course. In some cases, C++11 or whatever might be
crucial for the library design or functionality. The particular case
with Boost.Parameter doesn't seem to me like one, so yes, I'd *prefer*
to keep the compatibility with C++03. If there appears a case that would
make keeping the support for C++03 unreasonable (in Boost.Parameter or
elswhere), I will accept it and Boost.Log, by induction, will become
C++11-only.

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [parameter] Go C++11 and above only, or keep C++03 support?

Boost - Dev mailing list
In reply to this post by Boost - Dev mailing list
On 11/3/18 4:49 PM, Peter Dimov via Boost wrote:
> Andrey Semashev wrote:
>
>> I'm not adamantly against it, not to the point I would rewrite
>> Boost.Log just to stay C++03 compatible.
>
> Going that far may be unnecessary; we could just fork a `parameter03` so
> that C++03 libraries can keep using it.

Technically, this is a possibility. Practically, I don't think this
would be good for Boost.Parameter users. The forks will have to have
separate interfaces to not clash. Then there are interoperability issues.

No, if we definitely don't want to preserve C++03 compatibility then
let's just switch to C++11 in (the only) Boost.Parameter and declare
downstream libraries C++11 as well.

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [parameter] Go C++11 and above only, or keep C++03 support?

Boost - Dev mailing list
In reply to this post by Boost - Dev mailing list
On 11/3/18 5:17 PM, Andrey Semashev wrote:

> On 11/3/18 4:21 PM, degski wrote:
>> On Sat, 3 Nov 2018 at 14:41, Andrey Semashev via Boost
>> <[hidden email] <mailto:[hidden email]>> wrote:
>>
>>     On 11/3/18 2:47 PM, Cromwell Enage via Boost wrote:
>>      > Hello, Andrey.
>>      >
>>      > It's possible to retain the old code for C++03 compilers.  Which
>>     ones do
>>      > your library users have?
>>
>>     I don't have this data. Boost.Log is documented to support gcc since
>>     4.5
>>     and MSVC since 8.0 SP1. It might be ok to raise the minimum
>> requirement
>>     a bit, if it makes it easier to support in Boost.Parameter and other
>>     lower level libraries, but switching sraight to C++11 might be big
>> deal
>>     for users.
>>
>>
>> The following question has been asked many times by many posters and
>> there never is an answer: "Those users who want to stick to the old
>> ways of doing things and like to use unsafe compilers [Meltdown,
>> Spectre come to mind], why can't they just use old versions of Boost?"
>
> As it was answered, also many times: because we don't do support
> releases. Basically, if a bug is discovered, our recommendation is
> always "use a more recent Boost release". Of course, users can apply
> patches to their versions of Boost but this is a significant maintenance
> burden and may not be acceptable to everyone.
>
> Having new features and libraries might also be desirable. That the
> user's code base is C++03 doesn't necessarily mean it doesn't evolve.
>
>> There was, as far as I read it, considerable support to at least move
>> to C++11, which is already 2 standards behind the current standard
>> [and is by now fully supported on the main platforms]. Whatever is
>> documented is not relevant, if the docs are out of date, they have to
>> be updated. If every time this kind of question pops up, the answer
>> is, "let's keep backward compatibility", then when are we gonna move
>> to a newer standard? Or to put it differently, a direct question to
>> you Andrey, at which point in time [which new std, 20, 23, 26, 29,
>> 32???] do you think it will be opportune to move to C++11 and break
>> with C++98 [because doing nothing will always be easier]?
>
> If by "move" you mean actively stripping Boost from C++03 support then
> probably never. But as far as I'm concerned, Boost has moved to C++11
> and later as soon as the first C++11 was accepted.

That should read "the first C++11 library was accepted".

> At that point in
> time, the rest of Boost, still compatible with C++03, did not disappear
> and stayed relevant. C++03-compatible libraries are still a part of
> Boost and very much relevant, despite how many C++ versions have come out.
>
> Specifically for Boost.Log, it already does use some of the C++11
> features, when available. And I even think it started doing so before
> C++11 was finalized. But I still consider C++03 compatibility a plus
> rather than a minus.
>
> On a personal note, I find this "C++11 holy cow" hype quite a pointless
> waste of breath (or... network bandwidth, I guess). There is no point in
> dropping libraries on the ground of C++03 compatibility, so that's never
> going to happen. Boost never rejected libraries that targeted newer C++
> versions, that's not changing either. Declaring that we're not testing
> C++03 compilers anymore might make sense, but we actually do. So I don't
> quite understand what were the recent discussions about "dropping C++03"
> about. Just stop debating and start writing some great code, guys! Our
> users will be only happy. :)
>
>>     I'm not adamantly against it, not to the point I would
>>     rewrite Boost.Log just to stay C++03 compatible. But it would seem
>> that
>>     the C++11 requirement is not that necessary in Boost.Parameter
>> either -
>>     you can just keep the existing code in C++03 mode it it'll work as
>>     before.
>>
>> I guess, it's always possible to write more code [that's what you ask
>> all maintainers to do] and work around the C++11 specificities?
>
> It's a tradeoff, of course. In some cases, C++11 or whatever might be
> crucial for the library design or functionality. The particular case
> with Boost.Parameter doesn't seem to me like one, so yes, I'd *prefer*
> to keep the compatibility with C++03. If there appears a case that would
> make keeping the support for C++03 unreasonable (in Boost.Parameter or
> elswhere), I will accept it and Boost.Log, by induction, will become
> C++11-only.


_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [parameter] Go C++11 and above only, or keep C++03 support?

Boost - Dev mailing list
In reply to this post by Boost - Dev mailing list
Andrey Semashev wrote:

> So I don't quite understand what were the recent discussions about
> "dropping C++03" about.

It appears that not many do.

In short, the point is that much of the outside world thinks of Boost as a
single thing. Our perspective as library maintainers is that libraries are
independent, but that's not how others view them.

To give you a specific example, if Parameter drops C++03 support, `b2
install` will fail on all compilers where C++03 is default because Log will
fail to build. This is spelled "Boost 1.70 fails to build".


_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [parameter] Go C++11 and above only, or keep C++03 support?

Boost - Dev mailing list
On 11/3/2018 10:47 AM, Peter Dimov via Boost wrote:

> Andrey Semashev wrote:
>
>> So I don't quite understand what were the recent discussions about
>> "dropping C++03" about.
>
> It appears that not many do.
>
> In short, the point is that much of the outside world thinks of Boost as
> a single thing. Our perspective as library maintainers is that libraries
> are independent, but that's not how others view them.
>
> To give you a specific example, if Parameter drops C++03 support, `b2
> install` will fail on all compilers where C++03 is default because Log
> will fail to build. This is spelled "Boost 1.70 fails to build".

I assume that the "dropping C++03 support" was also about building Boost
for C++11 on up.


_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [parameter] Go C++11 and above only, or keep C++03 support?

Boost - Dev mailing list
Edward Diener wrote:

> > To give you a specific example, if Parameter drops C++03 support, `b2
> > install` will fail on all compilers where C++03 is default because Log
> > will fail to build. This is spelled "Boost 1.70 fails to build".
>
> I assume that the "dropping C++03 support" was also about building Boost
> for C++11 on up.

This was a response to Andrey's question which was essentially about why we
need to do anything on the Boost level to "drop C++03 support" rather than
accomplishing the same thing organically by doing nothing and letting
libraries drop it one by one.

"Building Boost for C++11" is an action taken on the Boost level. It's not
doing nothing and letting libraries drop it one by one.

To preempt the follow-up question of why can't Log just alter its Jamfile to
build for C++11 by default - because all of its dependencies will then
refuse to install as it will attempt to build them for C++11, whereas
they'll attempt to build themselves for C++03.


_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
12