in reply to daniel:// stenberg://

depends what you mean by "C mistake".

When you use the type system to make it impossible to generate invalid combinations of arguments, you also remove a lot of issues.

Unfortunately the focus currently is to talk about memory safety when arguing against C. I find type safety much more important and would claim that would fix more CVEs than memory safety.

Of course, no language enforces this, so it does require the designer of an API to enforce it. But C doesn't even allow it.