** codes instruction to create new closure in parent function. ** The OP_CLOSURE instruction must use the last available register, ** so that, if it invokes the GC, the GC knows which registers ** are in use at that time. */
| 520 | ** are in use at that time. |
| 521 | */ |
| 522 | static void codeclosure (LexState *ls, expdesc *v) { |
| 523 | FuncState *fs = ls->fs->prev; |
| 524 | init_exp(v, VRELOCABLE, luaK_codeABx(fs, OP_CLOSURE, 0, fs->np - 1)); |
| 525 | luaK_exp2nextreg(fs, v); /* fix it at the last register */ |
| 526 | } |
| 527 | |
| 528 | |
| 529 | static void open_func (LexState *ls, FuncState *fs, BlockCnt *bl) { |
no test coverage detected