Anyone claiming they can write memory safe / defined C code at scale either has no experience with it or has their head buried in the sand.
I think it's plausible you could well enough without annotations, just a subset of the language excluding bad stuff.
-
-
Annotations meaning stuff like forcing pointers to be passed with a size marked as being associated, forcing bounds checks, etc.
-
Only allowing bounds checks to be omitted if a simple set of rules can prove safety, and forbidding most manual mem management.
-
Only allow memory management via specially marked types/functions for managing different kinds of ownership (unique, shared).
-
Can essentially turn C into a more primitive form of Rust, still able to be compiled by a legacy toolchain without the checks.
End of conversation
New conversation -
-
-
The stuff that you think isn't bad will break your program whenever LLVM decides to optimize the UB it relies on
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.