From: notaz Date: Sat, 1 Mar 2014 19:52:26 +0000 (+0200) Subject: translate: extra check X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fe18709a017c7142452df242f060eea4d1b4ed34;p=ia32rtools.git translate: extra check --- diff --git a/tools/translate.c b/tools/translate.c index ce55bf9..f22cb1d 100644 --- a/tools/translate.c +++ b/tools/translate.c @@ -467,7 +467,7 @@ static int guess_lmod_from_c_type(enum opr_lenmod *lmod, "LONG", "HIMC", }; static const char *word_types[] = { - "uint16_t", "int16_t", "_WORD", + "uint16_t", "int16_t", "_WORD", "WORD", "unsigned __int16", "__int16", }; static const char *byte_types[] = { @@ -3172,6 +3172,8 @@ tailcall: // indirect call pp_c = resolve_icall(i, opcnt, &l); if (pp_c != NULL) { + if (!pp_c->is_func && !pp_c->is_fptr) + ferr(po, "call to non-func: %s\n", pp_c->name); pp = proto_clone(pp_c); my_assert_not(pp, NULL); if (l)