1 -- reads luac listings and reports global variable usage
2 -- lines where a global is written to are marked with "*"
3 -- typical usage: luac -p -l file.lua | lua globals.lua | sort | lua table.lua
7 if s
==nil then break end
8 local ok
,_
,l
,op
,g
=string.find(s
,"%[%-?(%d*)%]%s*([GS])ETGLOBAL.-;%s+(.*)$")
10 if op
=="S" then op
="*" else op
="" end
11 io
.write(g
,"\t",l
,op
,"\n")