Boost logo

Boost :

From: Richard Hodges (hodges.r_at_[hidden])
Date: 2020-05-02 21:09:17


Thank you all for your help and attention.

I have been spending the day investigating the root cause of compilation
problems and extensively testing our fix.

In summary, I am inclined to de-escalate for now as I have discovered that
neither

* clang-10 -std=c++20, nor
* gcc-10 -std=c++20

will compile any asio program which involves a call to asio::co_spawn,
which is fundamental requirement in a coroutine-enabled asio program.

What seems to be happening is that when concepts are enabled (which they
are in the above compilers) asio is checking the result_of the supplied
coroutine.

In clang-9 with -fcoroutines-ts, concepts are not enabled, so the check is
not made.

I thinik I have been told previously by Lewis that it's not possible to
take the result_of a coroutine. It's entirely possible that I have
misunderstood as coroutine implementation is not yet my domain of expertise.

In summary, one of either (Asio && MSVC) || (clang && gcc) are in the wrong.

I am not qualified to say which at this stage.

I suspect there's a workaround in clang & gcc which will involve using
macro definitions to convince asio that concepts are not available when
compiled in c++20.

It's late for me now but I'll check this train of thought in the morning.

R

On Sat, 2 May 2020 at 22:11, Robert Ramey via Boost <boost_at_[hidden]>
wrote:

> On 5/2/20 10:44 AM, Vinnie Falco via Boost wrote:
> > On Sat, May 2, 2020 at 9:34 AM Glen Fernandes <glen.fernandes_at_[hidden]>
> wrote:
> >> A new release is costly
> >
> > Understood. The problem is that the Boost 1.73 release as it is
> > currently shipped, has a Beast that does not work with C++20
> > coroutines. Thus one or more other individuals besides me and Richard
> > should decide if this is important enough to justify the cost of a new
> > release. I can go either way on it. The fixes are stable and well
> > tested.
> >
>
> We'll have another release in 2-4 months. I very much doubt that there
> are many users who are currently using Beast with C++20. And I don't
> see a huge hardship if those users need to wait a couple of months. I
> just don't see that a patch is worth all the extra work, including
> distribution, publicity, and confusion it might cause. Onward !!! don't
> waste time looking back.
>
> better to spend a little more time to tweak the testing/release process
> so that such a thing can't recurre.
>
> Robert Ramey
>
> > Thanks
> >
> > _______________________________________________
> > Unsubscribe & other changes:
> http://lists.boost.org/mailman/listinfo.cgi/boost
> >
>
>
>
> _______________________________________________
> Unsubscribe & other changes:
> http://lists.boost.org/mailman/listinfo.cgi/boost
>

-- 
Richard Hodges
hodges.r_at_[hidden]
office: +442032898513
home: +376841522
mobile: +376380212

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