Minoru
в твоём примере вместо print мог быть какой-то свой блок с кучей переменных (≥64 байт). В этом случае второе присваивание дергало бы старую линию, которая, быть может, уже вывалилась из кеша. Тут компилятор должен решить, что ему важнее: сэкономить стек (но держать в кеше старую линию) или экономить количество линий (и тогда, наверное, лучше переиспользовать переменную из недавних линий, или вообще завести новую)