Subject: Re: lib/19638: isalpha (3) bug
To: None <netbsd-bugs@netbsd.org>
From: Luke Mewburn <lukem@netbsd.org>
List: netbsd-bugs
Date: 01/04/2003 12:25:22
On Fri, Jan 03, 2003 at 05:07:58PM -0800, cgd@broadcom.com wrote:
  | At Sat, 4 Jan 2003 01:02:36 +0000 (UTC), "Mike Cheponis" wrote:
  | > Should we try to convince them that what they are doing is wrong?
  | 
  | No!
  | 
  | The point is, since you're invoking undefined behaviour, their result
  | is also "correct."
  | 
  | NetBSD's would be equally correct if it returned 1, or exec'd emacs,
  | or...
  | 
  | 
  | (BTW, in my opinion, the most if one wanted a truly "robust"
  | implementation that checked its arguments well, one would also want it
  | to abort on invalid arguments...  Oh, and that would also be correct.  8-)

So, we put a _DIAGASSERT() into the ctype(3) arguments.

That way, Mike can recompile his system with -D_DIAGNOSTIC, and he
will get a syslog message, and if he sets $LIBC_DIAGNOSTIC to "al",
a core dump.