`assert(!enter.IsEmpty());` ? Same for exit.