util.c: In function ‘I32 Perl_xs_handshake(U32, void*, const char*, ...)’:
util.c:5389:39: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
PERL_ARGS_ASSERT_XS_HANDSHAKE;
va_start(args, file);
- got = (void *)(key & HSm_KEY_MATCH);
+ got = INT2PTR(void*, (UV)(key & HSm_KEY_MATCH));
need = (void *)(HS_KEY(FALSE, FALSE, "", "") & HSm_KEY_MATCH);
- if(UNLIKELY(got != need))
+ if (UNLIKELY(got != need))
goto bad_handshake;
/* try to catch where a 2nd threaded perl interp DLL is loaded into a process
by a XS DLL compiled against the wrong interl DLL b/c of bad @INC, and the