unused `io_uring_context` crashing on destruction
ericniebler opened this issue · 0 comments
ericniebler commented
Input:
#include <stdexec/execution.hpp>
#include <exec/linux/io_uring_context.hpp>
int main() {
exec::io_uring_context io_uring;
}
Result:
In file included from <source>:15:
/opt/compiler-explorer/libs/stdexec/trunk/include/exec/linux/io_uring_context.hpp:42:2: warning: #warning "Your kernel is too old to support io_uring with cancellation support." [-Wcpp]
42 | #warning "Your kernel is too old to support io_uring with cancellation support."
| ^~~~~~~
Execution build compiler returned: 0
Program returned: 139
output.s: /opt/compiler-explorer/libs/stdexec/trunk/include/stdexec/__detail/__intrusive_queue.hpp:47: stdexec::__queue::__intrusive_queue<_Next>::~__intrusive_queue() [with _Item = exec::__io_uring::__task; _Item* _Item::* _Next = &exec::__io_uring::__task::__next_]: Assertion `empty()' failed.
Program terminated with signal: SIGSEGV