BP said it’s generating so much cash at the moment that, provided oil prices remain around their current range, the company will pay