idx = emitir(IRT(IR_TOINT, IRT_INTP), idx, IRTOINT_ANY);
#endif
if (ctype_ispointer(ct->info)) {
- ptrdiff_t sz = (ptrdiff_t)lj_ctype_size(cts, (sid = ctype_cid(ct->info)));
+ CTSize sz = lj_ctype_size(cts, (sid = ctype_cid(ct->info)));
idx = crec_reassoc_ofs(J, idx, &ofs, sz);
idx = emitir(IRT(IR_MUL, IRT_INTP), idx, lj_ir_kintp(J, sz));
ptr = emitir(IRT(IR_ADD, IRT_PTR), idx, ptr);
/* Simplified escape analysis: check for intervening stores. */
static AliasRet aa_escape(jit_State *J, IRIns *ir, IRIns *stop)
{
- IRRef ref = ir - J->cur.ir; /* The reference that might be stored. */
+ IRRef ref = (IRRef)(ir - J->cur.ir); /* The ref that might be stored. */
for (ir++; ir < stop; ir++)
if (ir->op2 == ref &&
(ir->o == IR_ASTORE || ir->o == IR_HSTORE ||