1 // { dg-additional-options "-fsyntax-only -fexceptions -w" } 2 3 // Diagose missing coroutine handle class template. 4 5 namespace std { 6 // coroutine traits 7 template<typename _R, typename...> struct coroutine_traits { 8 using promise_type = typename _R::promise_type; 9 }; 10 11 // name is present, but not a template. 12 struct coroutine_handle { 13 }; 14 } 15 16 int 17 bad_coroutine (void) 18 { 19 co_yield 5; // { dg-error {coroutines require a handle class template; cannot find 'std::coroutine_handle'} } 20 co_return; 21 } 22