Even though __objc_get_forward_imp returns an IMP type, it will be casted to a compatable function type before calling it. So we adding a cast to `void*` will disable warning about the incompatible type.
Pushed after bootstrap/test on x86_64. libobjc/ChangeLog: PR libobjc/89586 * sendmsg.c (__objc_get_forward_imp): Add cast to `void*` before casting to IMP. Signed-off-by: Andrew Pinski <quic_apin...@quicinc.com> --- libobjc/sendmsg.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libobjc/sendmsg.c b/libobjc/sendmsg.c index e781b2a9e50..65bc250ad90 100644 --- a/libobjc/sendmsg.c +++ b/libobjc/sendmsg.c @@ -126,11 +126,11 @@ __objc_get_forward_imp (id rcv, SEL sel) && objc_sizeof_type (t) > OBJC_MAX_STRUCT_BY_VALUE #endif ) - return (IMP)__objc_block_forward; + return (IMP)(void*)__objc_block_forward; else if (t && (*t == 'f' || *t == 'd')) - return (IMP)__objc_double_forward; + return (IMP)(void*)__objc_double_forward; else - return (IMP)__objc_word_forward; + return (IMP)(void*)__objc_word_forward; } } -- 2.43.0