Refer to Why is Signed Overflow due to computation still Undefined Behavior in C++20 where there some discussion on this.

On Fri, 7 Apr 2023 at 16:51, Frederick Virchanza Gotham via Std-Proposals <> wrote:
Since the latest Standard now dictates that signed integers are
implemented in two's complement, can we now do away with signed
overflow being undefined behaviour?

How about the following being true for all compilers?

     int i = INT_MAX;


    static_assert( INT_MIN == i );
Std-Proposals mailing list