Initial Patches Wire In C++20 Coroutines For The GCC Compiler
The GNU Compiler Collection continues picking up new features aligned for the upcoming C++20 standard. The latest are patches pending on the mailing list for implementing coroutines in C++.
C++20 is expected to have coroutines per the pending technical specification. Coroutines allow a function to have its execution stopped/suspended and then to be resumed later.
Developer Iain Sandoe has posted an initial set of patches implementing C++ coroutines similar to what is already offered by LLVM Clang and Microsoft MSVC.
These patches are a good start but in their current form are hidden behind a -fcoroutines flag until the support has been vetted.
Judging from that mailing list post, the GCC state for C++ coroutines is looking fairly good with these patches. But with GCC 10 ending its feature development and moving on to bug fixing, depending upon how it plays out this support could be delayed a year until GCC 11.
The current state of C++20 (C++2A) support within GCC can be found via this status page. A lot of functionality for what is expected of C++20 is already in place but a number of items remain.
C++20 is expected to have coroutines per the pending technical specification. Coroutines allow a function to have its execution stopped/suspended and then to be resumed later.
Developer Iain Sandoe has posted an initial set of patches implementing C++ coroutines similar to what is already offered by LLVM Clang and Microsoft MSVC.
These patches are a good start but in their current form are hidden behind a -fcoroutines flag until the support has been vetted.
Judging from that mailing list post, the GCC state for C++ coroutines is looking fairly good with these patches. But with GCC 10 ending its feature development and moving on to bug fixing, depending upon how it plays out this support could be delayed a year until GCC 11.
The current state of C++20 (C++2A) support within GCC can be found via this status page. A lot of functionality for what is expected of C++20 is already in place but a number of items remain.
40 Comments