| 1066 | |
| 1067 | |
| 1068 | static void primaryexp (LexState *ls, expdesc *v) { |
| 1069 | /* primaryexp -> NAME | '(' expr ')' */ |
| 1070 | switch (ls->t.token) { |
| 1071 | case '(': { |
| 1072 | int line = ls->linenumber; |
| 1073 | luaX_next(ls); |
| 1074 | expr(ls, v); |
| 1075 | check_match(ls, ')', '(', line); |
| 1076 | luaK_dischargevars(ls->fs, v); |
| 1077 | return; |
| 1078 | } |
| 1079 | case TK_NAME: { |
| 1080 | singlevar(ls, v); |
| 1081 | return; |
| 1082 | } |
| 1083 | default: { |
| 1084 | luaX_syntaxerror(ls, "unexpected symbol"); |
| 1085 | } |
| 1086 | } |
| 1087 | } |
| 1088 | |
| 1089 | |
| 1090 | static void suffixedexp (LexState *ls, expdesc *v) { |
no test coverage detected