Hello, thank you for the nice lib.
I will try to describe my problem.
The default scheduler runs several tasks, says A and B
Task A creates a temporary scheduler and wait on it's internal tasks with when_all(A_tasks).wait()
The waiting thread runs task B and this leads to a mess as B cannot be called from A.
A thread waiting for a task to end should not run another task.