https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104177
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|[diagnostic] basic.align#9 |coroutine frame is not |should emit diagnostic for |being allocated with the |unsupported alignas |correct alignment --- Comment #8 from Andrew Pinski <pinskia at gcc dot gnu.org> --- The problem is GCC produces: _1 = .CO_FRAME (6144, _Coro_frameptr); _Coro_frameptr = std::promise_base_alloc<void>::operator new (_1); But also does not use std::promise_base_alloc<void>::operator new (std::size_t size, std::align_val_t align); There could also be a Defect in the C++ standard when it comes to coroutines where it misses out on overaligned types on the stack. Someone who how more knowledge on that should be able to answer the question.