diff options
| author | Roberto I <roberto@inf.puc-rio.br> | 2025-09-17 16:07:48 -0300 |
|---|---|---|
| committer | Roberto I <roberto@inf.puc-rio.br> | 2025-09-17 16:07:48 -0300 |
| commit | 8fb1af0e33cd8688f57cd0e3ab86420a8cfe99bd (patch) | |
| tree | 2c199de5e67f395a4f9c94fcfb2ef3f0dad8882a /lparser.h | |
| parent | 140b672e2ee2ac842661ece4b48e1a64f0cd11ea (diff) | |
| download | lua-8fb1af0e33cd8688f57cd0e3ab86420a8cfe99bd.tar.gz lua-8fb1af0e33cd8688f57cd0e3ab86420a8cfe99bd.tar.bz2 lua-8fb1af0e33cd8688f57cd0e3ab86420a8cfe99bd.zip | |
Varag parameter is a new kind of variable
To allow some optimizations on its use.
Diffstat (limited to 'lparser.h')
| -rw-r--r-- | lparser.h | 4 |
1 files changed, 3 insertions, 1 deletions
| @@ -37,6 +37,8 @@ typedef enum { | |||
| 37 | info = result register */ | 37 | info = result register */ |
| 38 | VLOCAL, /* local variable; var.ridx = register index; | 38 | VLOCAL, /* local variable; var.ridx = register index; |
| 39 | var.vidx = relative index in 'actvar.arr' */ | 39 | var.vidx = relative index in 'actvar.arr' */ |
| 40 | VVARGVAR, /* vararg parameter; var.ridx = register index; | ||
| 41 | var.vidx = relative index in 'actvar.arr' */ | ||
| 40 | VGLOBAL, /* global variable; | 42 | VGLOBAL, /* global variable; |
| 41 | info = relative index in 'actvar.arr' (or -1 for | 43 | info = relative index in 'actvar.arr' (or -1 for |
| 42 | implicit declaration) */ | 44 | implicit declaration) */ |
| @@ -97,7 +99,7 @@ typedef struct expdesc { | |||
| 97 | /* kinds of variables */ | 99 | /* kinds of variables */ |
| 98 | #define VDKREG 0 /* regular local */ | 100 | #define VDKREG 0 /* regular local */ |
| 99 | #define RDKCONST 1 /* local constant */ | 101 | #define RDKCONST 1 /* local constant */ |
| 100 | #define RDKVATAB 2 /* vararg table */ | 102 | #define RDKVAVAR 2 /* vararg parameter */ |
| 101 | #define RDKTOCLOSE 3 /* to-be-closed */ | 103 | #define RDKTOCLOSE 3 /* to-be-closed */ |
| 102 | #define RDKCTC 4 /* local compile-time constant */ | 104 | #define RDKCTC 4 /* local compile-time constant */ |
| 103 | #define GDKREG 5 /* regular global */ | 105 | #define GDKREG 5 /* regular global */ |
