[Bug c++/95540] [coroutine] coroutine_traits<> lookup for lambdas

2020-06-11 Thread bruck.michael at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95540 Michael Bruck changed: What|Removed |Added Status|NEW |RESOLVED Resolution|---

[Bug c++/95540] [coroutine] coroutine_traits<> lookup for lambdas

2020-06-10 Thread iains at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95540 --- Comment #7 from Iain Sandoe --- to summarise. This doesn't appear to be a bug in GCC (or clang) but something perhaps that could benefit from a clarifying note in the std?

[Bug c++/95540] [coroutine] coroutine_traits<> lookup for lambdas

2020-06-05 Thread iains at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95540 --- Comment #6 from Iain Sandoe --- (In reply to Michael Bruck from comment #5) > > Since the coroutine traits are global, and the closure type is unique, > > that provides a way to disambiguate instantiations of the traits for > > lambdas with

[Bug c++/95540] [coroutine] coroutine_traits<> lookup for lambdas

2020-06-05 Thread bruck.michael at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95540 --- Comment #5 from Michael Bruck --- > Since the coroutine traits are global, and the closure type is unique, > that provides a way to disambiguate instantiations of the traits for > lambdas with otherwise identical signatures. But the closure

[Bug c++/95540] [coroutine] coroutine_traits<> lookup for lambdas

2020-06-05 Thread iains at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95540 --- Comment #4 from Iain Sandoe --- (In reply to Michael Bruck from comment #3) > I think you misread, I was complaining about it passing the closure to the > traits/constructor/allocator. But if that is what was agreed upon... > > Can the

[Bug c++/95540] [coroutine] coroutine_traits<> lookup for lambdas

2020-06-05 Thread bruck.michael at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95540 --- Comment #3 from Michael Bruck --- I think you misread, I was complaining about it passing the closure to the traits/constructor/allocator. But if that is what was agreed upon... Can the closure object that is being passed to the constructor

[Bug c++/95540] [coroutine] coroutine_traits<> lookup for lambdas

2020-06-05 Thread iains at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95540 Iain Sandoe changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever confirmed|0

[Bug c++/95540] [coroutine] coroutine_traits<> lookup for lambdas

2020-06-04 Thread bruck.michael at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95540 --- Comment #1 from Michael Bruck --- "impossible" is too strong here, you can add another overload: template struct std::coroutine_traits { using promise_type = pt; };