diff options
| author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2002-01-09 20:02:47 -0200 |
|---|---|---|
| committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2002-01-09 20:02:47 -0200 |
| commit | f083812c020186d0d919833100c1a0b6eda8c2c0 (patch) | |
| tree | 29c2e1d25f05af62277aab03e8e070aaa1a0d664 /lcode.c | |
| parent | 3533382a1ed7ba21f0233057c886be2dd8a71d92 (diff) | |
| download | lua-f083812c020186d0d919833100c1a0b6eda8c2c0.tar.gz lua-f083812c020186d0d919833100c1a0b6eda8c2c0.tar.bz2 lua-f083812c020186d0d919833100c1a0b6eda8c2c0.zip | |
first implementation of coroutines
Diffstat (limited to 'lcode.c')
| -rw-r--r-- | lcode.c | 3 |
1 files changed, 1 insertions, 2 deletions
| @@ -264,8 +264,7 @@ static int nil_constant (FuncState *fs) { | |||
| 264 | 264 | ||
| 265 | void luaK_setcallreturns (FuncState *fs, expdesc *e, int nresults) { | 265 | void luaK_setcallreturns (FuncState *fs, expdesc *e, int nresults) { |
| 266 | if (e->k == VCALL) { /* expression is an open function call? */ | 266 | if (e->k == VCALL) { /* expression is an open function call? */ |
| 267 | if (nresults == LUA_MULTRET) nresults = NO_REG; | 267 | SETARG_C(getcode(fs, e), nresults+1); |
| 268 | SETARG_C(getcode(fs, e), nresults); | ||
| 269 | if (nresults == 1) { /* `regular' expression? */ | 268 | if (nresults == 1) { /* `regular' expression? */ |
| 270 | e->k = VNONRELOC; | 269 | e->k = VNONRELOC; |
| 271 | e->u.i.info = GETARG_A(getcode(fs, e)); | 270 | e->u.i.info = GETARG_A(getcode(fs, e)); |
