Subject: Re: environ(7)
To: Roland McGrath <roland@frob.com>
From: J.T. Conklin <jconklin@netcom.com>
List: current-users
Date: 11/07/1994 22:16:12
> 1003.1-1988 specifies `extern char **environ;'.
> Not sure about about 1003.1-1990 off hand.

I'm working from 1003.1-1990.

The only mention of environ is in section 3.1.2.2 which states how a C 
language program is to be executed as a result of the exec() family of 
syscalls; and that environment for the new process image is taken from 
environ for the forms that do not take an envp pointer.

I have no question over whether or not "extern char **environ" is 
required.  I do question that it is supposed to be declared in a header 
file. 

Note that the fact that errno is declared in <errno.h> is mentioned in
several different places in 1003.1, and that 2003.1 has an assertion (2.4
01(A)) to verify that it is.  1003.1-90 never states that environ needs to
be declared; and 2003.1 doesn't have any assertions that test for a
declaration either.

	--jtc