Media playback is unsupported on your device Media caption McDonnell on Nissan, GDP and 'chaotic Brexit'

Labour has accused the government of favouring a "bankers' Brexit" at the expense of the wider economy.

Shadow chancellor John McDonnell said the Tories wanted to "cut special deals" for the financial sector.

Asked about Nissan's announcement of investment in Sunderland, he said the government had a "chaotic" approach on a "factory-by-factory" basis.

And he said Labour would not make "cynical promises" to reduce immigration post Brexit.

Prime Minister Theresa May has promised a Brexit deal "that is right for the UK" and ministers have accused Labour of offering "division and incompetence" on the EU.

The government is refusing to offer a "running commentary" on its negotiating position for exit talks, which are due to begin formally by the end of March.

In a speech at the Institution of Mechanical Engineers in London, Mr McDonnell said: "The Tories want to cut special deals for bankers."

He warned that the negotiations should benefit everyone in the country and "not just Tory special interests", describing government preparations for negotiations as "shambolic".

He added: "Already, Tory cabinet ministers are looking to cook up special deals for their friends in the City of London, while Tory backbenchers want to attack hard-won workplace rights.

"They'll cut a deal for finance, but ignore our small businesses and manufacturers."

'What about us?'

Reflecting on the Labour leadership's referendum campaign - which was criticised as lukewarm by some of the party's MPs - he said he believed the EU was "a flawed institution" but that it had been better to fight for reform than to leave.

As for the outcome of the vote, the shadow chancellor added: "We should not pretend the referendum result can be undone."

Labour would take back control from the EU of the "economic levers of power" like state intervention, Mr McDonnell said, and would protect the financial sector but expect it to finance other industries.

Taking questions afterwards, he was asked about whether Nissan's announcement - that it will build both the new Qashqai and the X-Trail SUV at its Sunderland plant - disproved his "bankers' Brexit" attack.

"This is chaos at the moment," he said, accusing the government of doing deals "secretly behind closed doors" on "individual factory deals".

"What other manufacturers are going to say is 'what about us?'"

'Incompetence'

Mr McDonnell was also challenged to clarify the party's position on immigration, with some senior party figures suggesting numbers should be reduced after Brexit.

He said Labour favoured "balanced migration" and that the vote to leave the EU reflected worries about people's living standards.

Speaking earlier on BBC Radio 4's Today programme, he said the free movement of people would "formally" come to an end when the UK leaves the EU, but added: "We will still need to ensure that there is movement... both in terms of UK into Europe and the other way round."

He said "unscrupulous employers" should not be able to use immigration to undercut wages.

Reacting to his speech, David Gauke, chief secretary to the Treasury, said: "All Labour can offer the British people is division and incompetence.

"They don't believe Britain can thrive outside the EU - and after the economic mess they left behind last time, no-one should ever trust them again with the economy.

"The Conservative Party will deliver the right deal for the whole United Kingdom as we leave the EU and build an economy that works for everyone here at home.‎"