Date: Tue, 25 Jan 2000 09:52:26 +0200 (IST) From: Eli Zaretskii X-Sender: eliz AT is To: Nate Eldredge cc: djgpp AT delorie DOT com Subject: Re: make depend In-Reply-To: <83u2k3kwja.fsf@mercury.st.hmc.edu> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Reply-To: djgpp AT delorie DOT com Errors-To: dj-admin AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk On 24 Jan 2000, Nate Eldredge wrote: > If you don't include , the implicit declaration of `sqrt' will > be used: `int sqrt();'. Yes. > Does ANSI really expect every platform to work some magic to make this > work anyhow? The magic is to add this to the program: double sqrt(); The point is that any additional tricks the system headers play, beyond declaring the prototypes, should not prevent a working program to continue working if it doesn't include any of the headers. Assuming, of course, that the source code doesn't rely on any transformations of the arguments passed to functions beyond the normal C promotion rules. > Are there any that actually do? All programs of the K&R era do this. The whole point of this requirement is to allow them to continue to work.