Почему C и С++ не предоставляют набор выполняемых операций реализации для выполнения каждой из основных операций с целыми числами с проверкой переполнения (например, a bool safeAdd(int *out, int a, int b)
).
Как я понимаю, большинство наборов инструкций имеют способы определить, будут ли операции переполнены (например, переполнение x86 и флагов переноса), а также определить произойдет в случае целых чисел со знаком.
Таким образом, если компиляторы не способны выполнять намного лучшую работу, создавая более простые и быстрые операции, чем то, что можно кодировать на C и С++?