Здравствуйте, _NN_, Вы писали:
_NN>Ну это не проблема checked<int> , modulo<int>.
_NN>И будет вам предсказуемость.
Это будет не эффективно. По умолчанию должна быть модульная арифметика, а вот остальные должны включаться явно если нужны, а не наоборот с помощью ключей -fwrapv компилятора.
_NN>Но что-то я не встречал такое в промышленном коде.
_NN>Может людям не особо она и нужна
Слишком много накладных расходов. Как в runtime так и при написании кода. Короче оно того не стоит.
_NN>Осталось только привнести в массы и убедить, что нужно писать именно так, а не просто int sum(int a, int b).
Для этого в своём namespace определяется тип type int num; и пишеться без особых напрягов. При необходимости тип num можно изменить.
num sum(num a,num b);