Authors: Edwin Steiner
- $Id: typecheck.c 730 2003-12-11 21:23:31Z edwin $
+ $Id: typecheck.c 788 2003-12-15 18:45:28Z edwin $
*/
}
+#if 0
static
void
typeinfo_print_blocks(FILE *file,int vnum,u1 *vtype,typeinfo *vinfo)
show_icmd_block(block+bi);
}
}
+#endif
#endif
TYPECHECK_COPYVARS; \
} \
else { \
- TYPECHECK_COPYJSR(jsrchain); \
+ if (way != REACH_THROW) TYPECHECK_COPYJSR(jsrchain); \
TYPECHECK_COPYVARS; \
} \
if (way != REACH_THROW) TYPECHECK_COPYSTACK; \
changed = false; \
if (way == REACH_JSR) \
TYPECHECK_CHECK_JSR_CHAIN; \
- else \
+ else if (way != REACH_THROW) \
TYPECHECK_MERGEJSR; \
TYPECHECK_MERGEVARS; \
if (way != REACH_THROW) TYPECHECK_MERGESTACK; \
touched = DMNEW(u1,numlocals);
vtype = vartype + numlocals * block_count;
vinfo = vartypeinfo + numlocals * block_count;
- memset(vartype,TYPE_VOID,numlocals * (block_count+1) * sizeof(typeinfo));
+ memset(vartype,TYPE_VOID,numlocals * (block_count+1) * sizeof(u1));
memset(vartypeinfo,0,numlocals * (block_count+1) * sizeof(typeinfo));
LOG("Variable buffer initialized.\n");