function luaK.concat(G,P,O,Q)if Q==G.NO_JUMP then return O elseif O==G.NO_JUMP then return Q else local v=O local T=G:getjump(P,v)while T~=G.NO_JUMP do v=T T=G:getjump(P,v)end G:fixjump(P,v,Q)end return O end
------------------------------------------------------------------------
-- * l1 was a pointer, now l1 is returned and callee assigns the value
-- * used in multiple locations
------------------------------------------------------------------------
function luaK:concat(fs, l1, l2)
	if l2 == self.NO_JUMP then
		return l1
	elseif l1 == self.NO_JUMP then
		return l2
	else
		local list = l1
		local _next = self:getjump(fs, list)
		while _next ~= self.NO_JUMP do -- find last element
			list = _next
			_next = self:getjump(fs, list)
		end
		self:fixjump(fs, list, l2)
	end
	return l1
end
