I'll mention that I'm factoring this stuff out (along with the contravariance mechanics, and other things) as a library which other C projects could use.
But also... so it can have its own set of regression tests. Because currently the only "test" is having it build the Ren-C codebase. So if I tweak it and something stops working (e.g. it doesn't run a cast hook that it should) I have no real way of finding out about that, besides setting breakpoints in the hooks and seeing if they're hit or not.
Library Name: "Needful"
Because it has wrappers like Sink(T), Need(T), Init(T)... ChatGPT had a funny suggestion of calling the library "Needful", as in the amusing Indian-English phrase "do the needful".
I legitimately think this could be helpful for many codebases that have to build as C, for embedded purposes/etc. Using a C++ compiler to do static analysis is a tool you almost certainly have around, and there's nothing special to set up or install or configure.
It needs a good marketing phraseology...
"Needful: The library that does nothing in your C programs (and you NEED it!)"
![]()
