namespace
{
    size_t s_value = 0;
}

Recursive recursiveCoro(bool recurse)
{
    while (true)
    {
        for (size_t idx = 0; idx != 2; ++idx)
            co_yield ++s_value;

        // here recursiveCoro will recursively be called 

        for (size_t idx = 0; idx != 2; ++idx)
            co_yield ++s_value;
    }
}
