Switzerland has given the World Economic Forum diplomatic immunity.