| 159 | |
| 160 | |
| 161 | static int registerlocalvar (LexState *ls, TString *varname) { |
| 162 | FuncState *fs = ls->fs; |
| 163 | Proto *f = fs->f; |
| 164 | int oldsize = f->sizelocvars; |
| 165 | luaM_growvector(ls->L, f->locvars, fs->nlocvars, f->sizelocvars, |
| 166 | LocVar, SHRT_MAX, "local variables"); |
| 167 | while (oldsize < f->sizelocvars) |
| 168 | f->locvars[oldsize++].varname = NULL; |
| 169 | f->locvars[fs->nlocvars].varname = varname; |
| 170 | luaC_objbarrier(ls->L, f, varname); |
| 171 | return fs->nlocvars++; |
| 172 | } |
| 173 | |
| 174 | |
| 175 | static void new_localvar (LexState *ls, TString *name) { |