summaryrefslogtreecommitdiff
path: root/server/src/parser
diff options
context:
space:
mode:
Diffstat (limited to 'server/src/parser')
-rw-r--r--server/src/parser/grammar.lua9
1 files changed, 5 insertions, 4 deletions
diff --git a/server/src/parser/grammar.lua b/server/src/parser/grammar.lua
index 32be697b..4a483514 100644
--- a/server/src/parser/grammar.lua
+++ b/server/src/parser/grammar.lua
@@ -247,8 +247,9 @@ ExpBshift <- (ExpConcat (Bshift ExpConcat)*) -> Binary
ExpConcat <- (ExpAdds (Concat ExpConcat)*) -> Binary
ExpAdds <- (ExpMuls (Adds ExpMuls)*) -> Binary
ExpMuls <- (ExpUnary (Muls ExpUnary)*) -> Binary
-ExpUnary <- ( (Unary+ ExpPower)) -> Unary
- / ExpPower
+ExpUnary <- ( (Unary+ (ExpPower / DirtyName)))
+ -> Unary
+ / ExpPower
ExpPower <- (ExpUnit (POWER ExpUnary)*) -> Binary
ExpUnit <- Nil
/ Boolean
@@ -267,7 +268,7 @@ Suffix <- DOT MustName
/ COLON MustName
/ Sp ({} Table {}) -> Call
/ Sp ({} String {}) -> Call
- / BL Exp -> Index BR
+ / BL DirtyExp -> Index BR?
/ Sp ({} PL ExpList (PR / Sp) {}) -> Call
DirtyExp <- Exp / DirtyName
@@ -377,7 +378,7 @@ ElseIfPart <- ELSEIF Exp THEN
{} (!ELSE !ELSEIF Action)* {}
/ ELSEIF DirtyExp THEN
{} (!ELSE !ELSEIF Action)* {}
- / ELSEIF DirtyExp THEN
+ / ELSEIF DirtyExp
{} {}
ElsePart <- ELSE
{} Action* {}