まず、C11 3.4.3は、すべての例や脚注と同様に、規範的なテキストではないため、引用には関係がないことに注意してください。
整数と浮動小数点数のオーバーフローが未定義の動作であることを示す関連テキストは次のとおりです。
C11 6.5 / 5
式の評価中に例外条件が発生した場合(つまり、結果が数学的に定義されていないか、その型の表現可能な値の範囲にない場合)、動作は未定義です。
符号なし整数型の動作に関する明確な説明は、ここにあります:
C11 6.2.5 / 9
符号付き整数型の非負の値の範囲は、対応する符号なし整数型の部分範囲であり、各型の同じ値の表現は同じです。結果の符号なし整数型で表すことができない結果は、結果の型で表すことができる最大値よりも1大きい数を法として減じられるため、符号なしオペランドを含む計算はオーバーフローすることはありません。
これにより、符号なし整数型が特別なケースになります。
また、いずれかの型が符号付きの型に変換され、古い値を表すことができない場合は、例外があることにも注意してください。信号は発生する可能性がありますが、動作は単に実装によって定義されます。
C11 6.3.1.3
6.3.1.3符号付きおよび符号なし整数
整数型の値が_Bool以外の別の整数型に変換されるとき、値が新しい型で表現できる場合、値は変更されません。
それ以外の場合、新しいタイプが符号なしの場合、値が新しいタイプの範囲内になるまで、新しいタイプで表すことができる最大値よりも1だけ多く加算または減算することによって値が変換されます。
そうでない場合、新しいタイプは署名され、値をそのタイプで表すことができません。結果は実装定義であるか、実装定義の信号が発生します。