Почему std::thread не работает без вызова std::cout?
Оптимизатор вполне вправе вышвырнуть к чертям код, который ничего не меняет во внешнем мире.
Не могу понять, почему у меня не отрабатывает std::thread без вызова cout? Как такое вообще возможно?
А в ассемблер-то не заглянуть никак? Я вижу, что всё отрабатывает, что с cout, что без, что с -O0, что с -O2.