Subject: Re: src/gnu/usr.bin/egcs/common
To: None <tech-userlevel@netbsd.org>
From: Michael C. Richardson <mcr@sandelman.ottawa.on.ca>
List: tech-userlevel
Date: 12/20/1999 15:30:19
>>>>> "Bill" == Bill Sommerfeld <sommerfeld@orchard.arlington.ma.us> writes:
    Bill> First of all, this all would be moot if it were not for:

    Bill> #define stdin (&__sF[0]) #define stdout (&__sF[1]) #define stderr
    Bill> (&__sF[2])

    Bill> in stdio.h;

..

    Bill> ABI, were it not for this.  Anyhow, if we're going to bump the
    Bill> major numbers, i'd hope we'd just make stdin/stdout/stderr visible
    Bill> in the ABI as independant externals rather than elements of an
    Bill> array..

  Do you mean that we do:

#define stdin	(*__sFstdin)
#define stdout	(*__sFstdout)
#define stderr  (*__sfStderr)

  just in case we want to change something in the future, or does POSIX
screw this possibility?  

    Bill> Anyhow, in the kludge department, we could allocate another flag
    Bill> bit to indicate "out of line lock"; the standard FILE *'s in __sF
    Bill> would have their locks in the corresponding __sL[] array, while
    Bill> other FILE *'s could be allocated as part of a larger structure..

  Sure, that sounds reasonable to me.

   :!mcr!:            |  Cow#1: Are you worried about getting Mad Cow Disease?
   Michael Richardson |  Cow#2: No. I'm a duck.
 Home: mcr@sandelman.ottawa.on.ca. PGP key available.