> I'd say the fact that it has to do checking within the routine anyway > is no reason not to add checks to catch errors earlier. Making the > signature programmer-friendlier is like adding javascript validation > to a web form - sure, the target of the submission still has to do its > own validation, but it's still helpful for the user to do it up front.
But a fake signature makes errors harder to find and can make optimized builds works different as normal ones. We had already have lot of problems with arguments declared as non null that the compiler can't enforce. We can make two versions of the risky functions, but then we have the problem of ensure that the correct one in used i each case. -- Salu2