Static type checking catches <1% of bugs. As a tool for verifying software correctness it's completely and totally in-effective.
The majority of bugs in code are about the behavior of the code rather than the typing. You require unit tests or some other more advanced technique.