diff options
Diffstat (limited to 'server/src')
-rw-r--r-- | server/src/parser/ast.lua | 11 | ||||
-rw-r--r-- | server/src/parser/grammar.lua | 5 | ||||
-rw-r--r-- | server/src/workspace.lua | 1 |
3 files changed, 15 insertions, 2 deletions
diff --git a/server/src/parser/ast.lua b/server/src/parser/ast.lua index 55364ca9..f7a94dfc 100644 --- a/server/src/parser/ast.lua +++ b/server/src/parser/ast.lua @@ -1235,6 +1235,17 @@ local Defs = { symbol = symbol, } } + return + end, + UnknownAction = function (start, symbol) + pushError { + type = 'UNKNOWN_SYMBOL', + start = start, + finish = start + #symbol - 1, + info = { + symbol = symbol, + } + } return false end, DirtyName = function (pos) diff --git a/server/src/parser/grammar.lua b/server/src/parser/grammar.lua index 42e52d05..b5e083e6 100644 --- a/server/src/parser/grammar.lua +++ b/server/src/parser/grammar.lua @@ -55,6 +55,7 @@ defs.er = '\r' defs.et = '\t' defs.ev = '\v' defs['nil'] = m.Cp() / function () return nil end +defs['false'] = m.Cp() / function () return false end defs.NotReserved = function (_, _, str) if RESERVED[str] then return false @@ -386,9 +387,9 @@ CrtAction <- Semicolon / Call / ExpInAction UnkAction <- ({} {Word+}) - -> UnknownSymbol + -> UnknownAction / ({} {. (!Sps !CrtAction .)*}) - -> UnknownSymbol + -> UnknownAction ExpInAction <- Sp ({} Exp {}) -> ExpInAction diff --git a/server/src/workspace.lua b/server/src/workspace.lua index 16649939..1efa16f0 100644 --- a/server/src/workspace.lua +++ b/server/src/workspace.lua @@ -408,6 +408,7 @@ function mt:matchPath(baseUri, input) end function mt:searchPath(baseUri, str) + str = getFileName(fs.path(str)) if self.searched[baseUri] and self.searched[baseUri][str] then return self.searched[baseUri][str] end |