Subject: Re: sys_errlist definitioni
To: Chris G Demetriou <Chris_G_Demetriou@ux2.sp.cs.cmu.edu>
From: J.T. Conklin <jconklin@netcom.com>
List: current-users
Date: 07/02/1996 15:04:26
> The problem with this is that NetBSD changed the location of the
> errlist definition from its location in 4.4-Lite (and Lite-2)
> 
> In Lite, it was in <stdio.h>, but it was moved to <errno.h> in NetBSD.
> 
> So, in other words, unless the code in question uses bother <stdio.h>
> and <errno.h>, you won't be able to safely do a 'general' (i.e. not
> NetBSD specific) change...
> 
> I'll go on the record as saying that, though <errno.h> is probably a
> better place for the defition, it was REALLY STUPID to lose source
> code compatibility with other Lite-derived OSes to move the definition
> into "a better place."

We've made other changes in API and behavior that make us incompatible
with Lite, etc.  Where do you draw the line?  Must we always live with
the bad decisions made by others?  I think not.

> Virtually every package that i've seen which relied on the previous
> 'correct' way of fixing the problem on Lite-derived systems breaks
> with NetBSD, with trivial but REALLY ANNOYING compile errors.

Then those programs didn't use the 'correct' way of fixing the
problem.  Just how long has strerror() existed?

> "stupid, stupid, stupid" especially since the "NetBSD API" which
> had that definition in <stdio.h> had been around for a while.

An API should be able to evolve.  Mistakes should be able to be 
rectified.

	--jtc