@@ -706,12 +706,13 @@ local function parseLocalAttrs()
706706 else
707707 missSymbol ' >'
708708 end
709- if State .version ~= ' Lua 5.4' then
709+ if State .version ~= ' Lua 5.4'
710+ and State .version ~= ' Lua 5.5' then
710711 pushError {
711712 type = ' UNSUPPORT_SYMBOL' ,
712713 start = attr .start ,
713714 finish = attr .finish ,
714- version = ' Lua 5.4' ,
715+ version = { ' Lua 5.4' , ' Lua 5.5 ' } ,
715716 info = {
716717 version = State .version
717718 }
@@ -906,13 +907,14 @@ local function parseStringUnicode()
906907 end
907908 if State .version ~= ' Lua 5.3'
908909 and State .version ~= ' Lua 5.4'
910+ and State .version ~= ' Lua 5.5'
909911 and State .version ~= ' LuaJIT'
910912 then
911913 pushError {
912914 type = ' ERR_ESC' ,
913915 start = leftPos - 2 ,
914916 finish = rightPos ,
915- version = {' Lua 5.3' , ' Lua 5.4' , ' LuaJIT' },
917+ version = {' Lua 5.3' , ' Lua 5.4' , ' Lua 5.5 ' , ' LuaJIT' },
916918 info = {
917919 version = State .version ,
918920 }
@@ -932,7 +934,7 @@ local function parseStringUnicode()
932934 end
933935 return nil , offset
934936 end
935- if State .version == ' Lua 5.4' then
937+ if State .version == ' Lua 5.4' or State . version == ' Lua 5.5 ' then
936938 if byte < 0 or byte > 0x7FFFFFFF then
937939 pushError {
938940 type = ' UTF8_MAX' ,
@@ -951,7 +953,7 @@ local function parseStringUnicode()
951953 type = ' UTF8_MAX' ,
952954 start = leftPos ,
953955 finish = rightPos ,
954- version = byte <= 0x7FFFFFFF and ' Lua 5.4' or nil ,
956+ version = byte <= 0x7FFFFFFF and { ' Lua 5.4' , ' Lua 5.5 ' } or nil ,
955957 info = {
956958 min = ' 000000' ,
957959 max = ' 10FFFF' ,
@@ -1095,7 +1097,7 @@ local function parseShortString()
10951097 type = ' ERR_ESC' ,
10961098 start = left ,
10971099 finish = left + 4 ,
1098- version = {' Lua 5.2' , ' Lua 5.3' , ' Lua 5.4' , ' LuaJIT' },
1100+ version = {' Lua 5.2' , ' Lua 5.3' , ' Lua 5.4' , ' Lua 5.5 ' , ' LuaJIT' },
10991101 info = {
11001102 version = State .version ,
11011103 }
@@ -1274,7 +1276,7 @@ local function parseNumber2(start)
12741276 finish = getPosition (offset - 1 , ' right' ),
12751277 version = ' LuaJIT' ,
12761278 info = {
1277- version = ' Lua 5.4 ' ,
1279+ version = State . version ,
12781280 }
12791281 }
12801282 end
@@ -2672,18 +2674,15 @@ local function parseBinaryOP(asAction, level)
26722674 if token == ' //'
26732675 or token == ' <<'
26742676 or token == ' >>' then
2675- if State .version ~= ' Lua 5.3'
2676- and State .version ~= ' Lua 5.4' then
2677- pushError {
2678- type = ' UNSUPPORT_SYMBOL' ,
2679- version = {' Lua 5.3' , ' Lua 5.4' },
2680- start = op .start ,
2681- finish = op .finish ,
2682- info = {
2683- version = State .version ,
2684- }
2677+ pushError {
2678+ type = ' UNSUPPORT_SYMBOL' ,
2679+ version = {' Lua 5.3' , ' Lua 5.4' , ' Lua 5.5' },
2680+ start = op .start ,
2681+ finish = op .finish ,
2682+ info = {
2683+ version = State .version ,
26852684 }
2686- end
2685+ }
26872686 end
26882687 Index = Index + 2
26892688 return op , myLevel
@@ -3230,6 +3229,7 @@ local function parseLabel()
32303229 local olabel = guide .getLabel (block , name )
32313230 if olabel then
32323231 if State .version == ' Lua 5.4'
3232+ or State .version == ' Lua 5.5'
32333233 or block == guide .getBlock (olabel ) then
32343234 pushError {
32353235 type = ' REDEFINED_LABEL' ,
@@ -3252,7 +3252,7 @@ local function parseLabel()
32523252 type = ' UNSUPPORT_SYMBOL' ,
32533253 start = left ,
32543254 finish = lastRightPosition (),
3255- version = {' Lua 5.2' , ' Lua 5.3' , ' Lua 5.4' , ' LuaJIT' },
3255+ version = {' Lua 5.2' , ' Lua 5.3' , ' Lua 5.4' , ' Lua 5.5 ' , ' LuaJIT' },
32563256 info = {
32573257 version = State .version ,
32583258 }
@@ -3634,7 +3634,8 @@ local function parseFor()
36343634 missExp ()
36353635 end
36363636
3637- if State .version == ' Lua 5.4' then
3637+ if State .version == ' Lua 5.4'
3638+ or State .version == ' Lua 5.5' then
36383639 forStateVars = 4
36393640 else
36403641 forStateVars = 3
0 commit comments