@@ -3456,8 +3456,11 @@ S_lossless_NV_to_IV(const NV nv, IV *ivp)
34563456# define IV_MUL_OVERFLOW_IS_EXPENSIVE (IVSIZE > PTRSIZE)
34573457# endif
34583458
3459+ # ifdef I_STDCKDINT
3460+ # include <stdckdint.h>
3461+ # endif
3462+
34593463# if defined(I_STDCKDINT ) && !IV_ADD_SUB_OVERFLOW_IS_EXPENSIVE
3460- /* XXX Preparation for upcoming C23, but I_STDCKDINT is not yet tested */
34613464# define S_iv_add_may_overflow (il , ir , result ) ckd_add(result, il, ir)
34623465# elif defined(HAS_BUILTIN_ADD_OVERFLOW ) && !IV_ADD_SUB_OVERFLOW_IS_EXPENSIVE
34633466# define S_iv_add_may_overflow __builtin_add_overflow
@@ -3485,7 +3488,6 @@ S_iv_add_may_overflow (IV il, IV ir, IV *const result)
34853488 */
34863489
34873490# if defined(I_STDCKDINT )
3488- /* XXX Preparation for upcoming C23, but I_STDCKDINT is not yet tested */
34893491# define S_uv_add_overflow (auv , buv , result ) ckd_add(result, auv, buv)
34903492# elif defined(HAS_BUILTIN_ADD_OVERFLOW )
34913493# define S_uv_add_overflow __builtin_add_overflow
@@ -3502,7 +3504,6 @@ S_uv_add_overflow (UV auv, UV buv, UV *const result)
35023504# endif
35033505
35043506# if defined(I_STDCKDINT ) && !IV_ADD_SUB_OVERFLOW_IS_EXPENSIVE
3505- /* XXX Preparation for upcoming C23, but I_STDCKDINT is not yet tested */
35063507# define S_iv_sub_may_overflow (il , ir , result ) ckd_sub(result, il, ir)
35073508# elif defined(HAS_BUILTIN_SUB_OVERFLOW ) && !IV_ADD_SUB_OVERFLOW_IS_EXPENSIVE
35083509# define S_iv_sub_may_overflow __builtin_sub_overflow
@@ -3524,7 +3525,6 @@ S_iv_sub_may_overflow (IV il, IV ir, IV *const result)
35243525# endif
35253526
35263527# if defined(I_STDCKDINT )
3527- /* XXX Preparation for upcoming C23, but I_STDCKDINT is not yet tested */
35283528# define S_uv_sub_overflow (auv , buv , result ) ckd_sub(result, auv, buv)
35293529# elif defined(HAS_BUILTIN_SUB_OVERFLOW )
35303530# define S_uv_sub_overflow __builtin_sub_overflow
@@ -3537,7 +3537,6 @@ S_uv_sub_overflow (UV auv, UV buv, UV *const result)
35373537# endif
35383538
35393539# if defined(I_STDCKDINT ) && !IV_MUL_OVERFLOW_IS_EXPENSIVE
3540- /* XXX Preparation for upcoming C23, but I_STDCKDINT is not yet tested */
35413540# define S_iv_mul_may_overflow (il , ir , result ) ckd_mul(result, il, ir)
35423541# elif defined(HAS_BUILTIN_MUL_OVERFLOW ) && !IV_MUL_OVERFLOW_IS_EXPENSIVE
35433542# define S_iv_mul_may_overflow __builtin_mul_overflow
@@ -3565,7 +3564,6 @@ S_iv_mul_may_overflow (IV il, IV ir, IV *const result)
35653564# endif
35663565
35673566# if defined(I_STDCKDINT )
3568- /* XXX Preparation for upcoming C23, but I_STDCKDINT is not yet tested */
35693567# define S_uv_mul_overflow (auv , buv , result ) ckd_mul(result, auv, buv)
35703568# elif defined(HAS_BUILTIN_MUL_OVERFLOW )
35713569# define S_uv_mul_overflow __builtin_mul_overflow
0 commit comments