История изменений
Исправление rumgot, (текущая версия) :
Мне очевидно, что текст стандарта (черновик для C++17)
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/n4659.pdf
9.6.3 The return statement [stmt.return]
2.
…
Flowing off the end of a constructor, a destructor, or a function with a cv void return type is equivalent to a return with no operand. Otherwise, flowing off the end of a function other than main (6.6.1) results in undefined behavior.
говорит, что отсутствие return в non-void функции И дохождение потока выполнения до конца этой функции И последующий выход за пределы этой функции дают в сумме неопределенное поведение. Не очень понимаю твою претензию.
Исходная версия rumgot, :
Мне очевидно, что текст стандарта (черновик для C++17)
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/n4659.pdf
9.6.3 The return statement [stmt.return]
2.
…
Flowing off the end of a constructor, a destructor, or a function with a cv void return type is equivalent to a return with no operand. Otherwise, flowing off the end of a function other than main (6.6.1) results in undefined behavior.
говорит, что отсутствие return в non-void функции И дохождение потока выполнения до конца этой функции и последующий выход за пределы этой функции дают в сумме неопределенное поведение. Не очень понимаю твою претензию.