Fix bug which does not allow to open file with lot of comments.
https://www.eclipse.org/forums/index.php/t/1088617/
diff --git a/libraries/metalua/metalua/grammar/lexer.lua b/libraries/metalua/metalua/grammar/lexer.lua
index 9ca1936..9719a91 100644
--- a/libraries/metalua/metalua/grammar/lexer.lua
+++ b/libraries/metalua/metalua/grammar/lexer.lua
@@ -171,7 +171,17 @@
local first = lines[1].lineinfo.first
local last = lines[#lines].lineinfo.last
local lineinfo = M.new_lineinfo(first, last)
- return setmetatable({lineinfo=lineinfo, unpack(lines)}, MT.comment)
+ -- 8000 is the limit to use unpack
+ -- because of C variable LUAI_MAXCSTACK
+ if #lines < 8000 then
+ return setmetatable({lineinfo=lineinfo, unpack(lines)}, MT.comment)
+ else
+ local t = {lineinfo=lineinfo}
+ for i=1,#lines do
+ t[i]=lines[i]
+ end
+ return setmetatable(t, MT.comment)
+ end
end
function MT.comment :text()