Conversation

Replying to and
Temporal safety becomes increasingly difficult as software scales up and is much harder to resolve by following good practices. Bounds safety is easier to maintain, easier to automate deterministically via instrumentation and the issues are also largely tied to integer overflows.
1
2
If you start using automatic integer overflow checks for both signed and unsigned integers, it avoids tons of bounds-related vulnerabilities but only a few of the temporary safety ones. Bounds safety issues are almost always simple local issues if absurd things aren't being done.
1
It can be hard to reason about integer overflow too but at least you can check for overflow locally. There's solid tooling including automated checks usable in production with the ability to mark operations as explicitly checked, unchecked or intended overflows with Clang/GCC.
1