I'm not involved in smart contract development, but my understanding is that Vyper and its offshot Fe, are more amenable to formal verification on the Ethereum Virtual Machine.
And there's VeriSol, which allows for formal verification of Solidity smart contracts:
Anyway, FV doesn't guarantee secure smart contracts, because it doesn't guarantee that the claims that a team sets out to formally prove are themselves correct, or sufficient.
If instead the language supported formal verification, almost all of this would be unneeded.