| 172 | |
| 173 | |
| 174 | static int registerlocalvar (LexState *ls, TString *varname) { |
| 175 | FuncState *fs = ls->fs; |
| 176 | Proto *f = fs->f; |
| 177 | int oldsize = f->sizelocvars; |
| 178 | luaM_growvector(ls->L, f->locvars, fs->nlocvars, f->sizelocvars, |
| 179 | LocVar, SHRT_MAX, "too many local variables"); |
| 180 | while (oldsize < f->sizelocvars) f->locvars[oldsize++].varname = NULL; |
| 181 | f->locvars[fs->nlocvars].varname = varname; |
| 182 | luaC_objbarrier(ls->L, f, varname); |
| 183 | return fs->nlocvars++; |
| 184 | } |
| 185 | |
| 186 | |
| 187 | #define new_localvarliteral(ls,v,n) \ |