[Bug libstdc++/106183] New: std::atomic::wait might deadlock on platforms without platform_wait()

2022-07-04 Thread lewissbaker.opensource at gmail dot com via Gcc-bugs
: normal Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: lewissbaker.opensource at gmail dot com Target Milestone: --- I have been doing some research on implementations of std::atomic::notify_all() and std::atomic::wait

[Bug c++/101247] New: ICE when using static constexpr bool defined in base-class in derived class constructor requires-clause

2021-06-28 Thread lewissbaker.opensource at gmail dot com via Gcc-bugs
Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: lewissbaker.opensource at gmail dot com Target Milestone: --- Compiling the following code with GCC trunk and flags: -std=c

[Bug c++/97452] [coroutines] incorrect sequencing of await_resume() when multiple co_await expressions occur in a single statement

2021-04-09 Thread lewissbaker.opensource at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97452 --- Comment #9 from Lewis Baker --- > In terms of the standard do you think this is technically undefined behaviour? Yes, I think this is something that Gor was looking into as a wording issue that could do with some clarification. I think the

[Bug libstdc++/99537] New: Wrong memory_order used in stop_token ref-counting

2021-03-10 Thread lewissbaker.opensource at gmail dot com via Gcc-bugs
Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: lewissbaker.opensource at gmail dot com Target Milestone: --- In the implementation of stop_token the _Stop_state_t implements reference-counting for tracking shared ownership of the stop-state. This is done via

[Bug c++/97452] New: [coroutines] incorrect sequencing of await_resume() when multiple co_await expressions occur in a single statement

2020-10-15 Thread lewissbaker.opensource at gmail dot com via Gcc-bugs
: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: lewissbaker.opensource at gmail dot com Target Milestone: --- See https://godbolt.org/z/9Kj9o8 Compile

[Bug c++/95736] coroutine method improperly copies awaitable

2020-06-18 Thread lewissbaker.opensource at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95736 Lewis Baker changed: What|Removed |Added CC||lewissbaker.opensource@gmai

[Bug c++/95616] New: [coroutines] coroutines with potentially-throwing 'co_await promise.final_suspend()' expressions should be ill-formed

2020-06-09 Thread lewissbaker.opensource at gmail dot com
: 10.1.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: lewissbaker.opensource at gmail dot com Target Milestone: --- The wording of [dcl.fct.def.coroutine]/15 states

[Bug c++/95615] New: [coroutines] Coroutine frame and promise is leaked if exception thrown from promise.initial_suspend()

2020-06-09 Thread lewissbaker.opensource at gmail dot com
: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: lewissbaker.opensource at gmail dot com Target Milestone: --- If an exception is thrown from any of the following: - promise_type constructor

[Bug c++/95599] [coroutines] destructor for temporary operand to co_yield expression called before end of full-expression

2020-06-09 Thread lewissbaker.opensource at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95599 --- Comment #3 from Lewis Baker --- I don't think that whether or not the awaitables or operands to co_yield are captured by reference / aliased should play into the sequencing of calls to the destructor. The destructors of temporaries should

[Bug c++/95599] [coroutines] destructor for temporary operand to co_yield expression called before end of full-expression

2020-06-08 Thread lewissbaker.opensource at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95599 --- Comment #1 from Lewis Baker --- Note there is also some different behaviour if we change the example slightly by removing awaitable::~awaitable() and leaving the awaitable type with a trivial destructor. See https://godbolt.org/z/ff5Uvy In

[Bug c++/95599] New: [coroutines] destructor for temporary operand to co_yield expression called before end of full-expression

2020-06-08 Thread lewissbaker.opensource at gmail dot com
Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: lewissbaker.opensource at gmail dot com Target Milestone: --- If I write the statement: co_yield T{}; Then I expect the T

[Bug c++/95598] New: [coroutines] Destructor for object returned from get_return_object() never called

2020-06-08 Thread lewissbaker.opensource at gmail dot com
Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: lewissbaker.opensource at gmail dot com Target Milestone: --- Compile the following code with GCC trunk with flags -std=c++2a -fcoroutines See https://godbolt.org/z

[Bug c++/95591] New: [coroutines] ICE when co_yielding string literal from generator coroutine

2020-06-08 Thread lewissbaker.opensource at gmail dot com
: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: lewissbaker.opensource at gmail dot com Target Milestone: --- Build the following code sample using GCC trunk. Command-line flags: -std=c++2a -fcoroutines -- #include

[Bug c++/95350] New: [coroutines] coroutines with move-only by-value parameters attempt to copy parameter instead of move it

2020-05-26 Thread lewissbaker.opensource at gmail dot com
Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: lewissbaker.opensource at gmail dot com Target Milestone: --- The following code fails to compile under GCC 10.0 and GCC trunk

[Bug c++/95346] New: [coroutines] coroutine return-type should be initialised with rvalue if different from get_return_object() return-type

2020-05-26 Thread lewissbaker.opensource at gmail dot com
Version: 10.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: lewissbaker.opensource at gmail dot com Target Milestone: --- If I have the following code: -- #include

[Bug c++/95017] [coroutines] Failure to generate code for co_yield expression if its the only statement in a loop

2020-05-08 Thread lewissbaker.opensource at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95017 --- Comment #1 from Lewis Baker --- Created attachment 48487 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=48487=edit test.cpp

[Bug c++/95017] New: [coroutines] Failure to generate code for co_yield expression if its the only statement in a loop

2020-05-08 Thread lewissbaker.opensource at gmail dot com
Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: lewissbaker.opensource at gmail dot com Target Milestone: --- See https://godbolt.org/z/v-Tkvi Given a simple coroutine generator type, if I compile

[Bug c++/94752] New: [coroutines] compiler ICE with coroutine with unnamed parameter

2020-04-24 Thread lewissbaker.opensource at gmail dot com
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: lewissbaker.opensource at gmail dot com Target Milestone: --- See https://godbolt.org/z/QCXqeo Compile the following source code with GCC trunk. Flags: -std=c++20 -fcoroutines

[Bug c++/70790] Can't mangle noexcept expressions

2020-04-07 Thread lewissbaker.opensource at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70790 Lewis Baker changed: What|Removed |Added CC||lewissbaker.opensource@gmai

[Bug c++/92933] New: [coroutines] compiler ICE compiling coroutine with try/catch

2019-12-13 Thread lewissbaker.opensource at gmail dot com
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: lewissbaker.opensource at gmail dot com Target Milestone: --- Created attachment 47490 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=47490=edit Example program Compil

[Bug libstdc++/92895] New: [libstdc++] stop_token conformance issues

2019-12-10 Thread lewissbaker.opensource at gmail dot com
: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: lewissbaker.opensource at gmail dot com Target Milestone: --- The current implementation of std::stop_token in trunk has a few issues that make it non-conformant with regards to the latest draft specification N4842

[Bug c++/91673] New: GCC ICE when partially specialising class template on a function-signature type with deduced noexcept qualifier

2019-09-05 Thread lewissbaker.opensource at gmail dot com
: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: lewissbaker.opensource at gmail dot com Target Milestone: --- See https://godbolt.org/z/BndP6r Version: GCC trunk