Когда переменная инициализируется, она инициализируется в стеке, а не в куче. Хотя и стек, и куча являются частью памяти, мы обычно говорим только о распределении относительно кучи. Это связано с тем, что стек полностью контролируется программой, работающей в данный момент, и не требуется никаких обращений к ОС, чтобы что-то вытолкнуть на него.
С учетом всего вышесказанного, максимальный размер стека может увеличиться, и как только мы вырастем до этого размера, у нас (по совпадению) "переполнение стека". Так что, да, есть момент, когда создание другой переменной не подходит, но использование термина «распределение» - неправильный способ его описания.