I think some cool safety checks would be useful, I know I would appreciate them when building some network facing services.
I would heavily prioritize memory-safety checks. Those are the ones responsible for serious vulnerabilities. An undefined overflow is only a problem when your compiler makes dumb assumptions about it not possibly happening; it could be the first step of an exploit but is likely followed by an unsafe memory access.
GCC and Clang have the options to use AddressSanitizer and UndefinedBehaviorSanitizer. Both of these act give useful diagnostic information when safety defined behavior checks are violated. It may be worth looking into optional linking of those libraries.