add type info to local variables

Dibyendu Majumdar 9 years ago
parent 1cfb88713a
commit 0de86704b2

@ -592,7 +592,7 @@ int luaK_exp2RK (FuncState *fs, expdesc *e) {
void luaK_storevar (FuncState *fs, expdesc *var, expdesc *ex) {
switch (var->k) {
case VLOCAL: {
if (var->ravi_tt != LUA_TNONE && var->ravi_tt != ex->ravi_tt)
if ((var->ravi_tt == LUA_TNUMFLT || var->ravi_tt == LUA_TNUMINT) && var->ravi_tt != ex->ravi_tt)
luaX_syntaxerror(fs->ls, luaO_pushfstring(fs->ls->L, "Invalid assignment of type: var type %d, expression type %d",
var->ravi_tt, ex->ravi_tt));
freeexp(fs, ex);

@ -1023,7 +1023,7 @@ static void simpleexp (LexState *ls, expdesc *v) {
break;
}
case TK_NIL: {
init_exp(v, VNIL, 0, LUA_TNONE);
init_exp(v, VNIL, 0, LUA_TNIL);
break;
}
case TK_TRUE: {

Loading…
Cancel
Save