Пока ваш стек не растет без ограничений, все будет в порядке. Когда вы возвращаете целое число N из C API в Lua, происходят две вещи:
Дэвид Сейлер упоминает о возможности вызова вашего кода C из другого кода C, а не из движка Lua. Это продвинутый метод, и если вы задаете этот вопрос, вам вряд ли придется беспокоиться об этой конкретной проблеме. (Но то, как это происходит с точки зрения Lua, остается тем же самым - когда all код C завершает свою работу, он должен возвращать целое число, и Lua снимает столько значений со стека, а затем освобождает остальные.)
Если вы используете слишком много стековых слотов, ваша программа остановится с нормальным и разумным сообщением об ошибке (насколько я знаю из опыта).