Вылетает из-за Stackoverflow , конечно, поскольку нет условия завершения, но технически компилятору C++
разрешено не компилировать его, поскольку в C ++:
main() cannot be called from within a program.
The address of main() cannot be taken.
The main() function cannot be overloaded.
Что говорится в стандарте:
Приложение к C Совместимость
3,6
Change: Main cannot be called recursively and cannot have its address taken
Rationale: The main function may require special actions.
Effect on original feature: Deletion of semantically well-defined feature
Difficulty of converting: Trivial: create an intermediary function such as mymain(argc, argv).
How widely used: Seldom