| 141 | |
| 142 | |
| 143 | static int registerlocalvar (LexState *ls, TString *varname) { |
| 144 | FuncState *fs = ls->fs; |
| 145 | Proto *f = fs->f; |
| 146 | int oldsize = f->sizelocvars; |
| 147 | luaM_growvector(ls->L, f->locvars, fs->nlocvars, f->sizelocvars, |
| 148 | LocVar, SHRT_MAX, "too many local variables"); |
| 149 | while (oldsize < f->sizelocvars) f->locvars[oldsize++].varname = NULL; |
| 150 | f->locvars[fs->nlocvars].varname = varname; |
| 151 | luaC_objbarrier(ls->L, f, varname); |
| 152 | return fs->nlocvars++; |
| 153 | } |
| 154 | |
| 155 | |
| 156 | #define new_localvarliteral(ls,v,n) \ |