Prime Minister Boris Johnson has said there are “no circumstances” in which he will delay Brexit beyond 31 October, as rebel MPs prepare to table a bill designed to stop him taking the UK out of the EU without a deal.

Mr Johnson's comments in a dramatic statement outside 10 Downing Street appear to indicate that the prime minister will not accept the outcome if MPs vote to force him to delay - potentially by calling a general election.

Speaking against the backdrop of loud chants from anti-Brexit protesters outside the gates to Downing Street, Mr Johnson said that defeat in the Commons on the timetable would "chop the legs" from under UK negotiators seeking to secure a deal in Brussels.

Mr Johnson insisted: "I don't want an election. You don't want an election."

Speaking immediately after an unscheduled cabinet meeting in Number 10, Mr Johnson said he was “encouraged” by progress in Brexit talks and believed the chances of reaching a deal with Brussels at the upcoming EU summit on October 17 were “rising”.

But he warned: “If there is one thing that can hold us back in these talks, it is the sense in Brussels that MPs may find some way to cancel the referendum or that tomorrow MPs will vote with Jeremy Corbyn for yet another pointless delay.

(Getty Images (Getty Images)

“I don’t think they will. I hope that they won’t. But if they do, they will plainly chop the legs out from under the UK position and make any further negotiation absolutely impossible.

“And so I say to show our friends in Brussels that we are united in our purpose, MPs should vote with the government against Corbyn’s pointless delay.”

He added: “I want everybody to know – there are no circumstances in which I will ask Brussels to delay. We are leaving on 31 October, no ifs or buts.

“We will not accept any attempt to go back on our promises or scrub that referendum