My point is that the halting problem doesn’t prevent you from analyzing any particular program for exploits.
The halting problem doesn't prevent playing whack-a-mole against previous exploits, but it ensures that proving more exploits do not exist is impossible. That's why I think a turing-complete language for smart contracts is a poor choice.