Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!swrinde!zaphod.mps.ohio-state.edu!samsung!munnari.oz.au!metro!usage.csd.unsw.oz.au!spectrum!cameron From: cameron@usage.csd.oz (Cameron Simpson) Newsgroups: comp.unix.programmer Subject: Re: List of routines safe to use in signals? Message-ID: <995@usage.csd.unsw.oz.au> Date: 14 Dec 90 08:25:52 GMT References: <1990Dec13.205957.25208@athena.mit.edu> Sender: news@usage.csd.unsw.oz.au Reply-To: cameron@spectrum.cs.unsw.oz.au (Cameron Simpson) Organization: none Lines: 21 In <1990Dec13.205957.25208@athena.mit.edu>, by jik@athena.mit.edu (Jonathan I. Kamens): | In <1990Dec13.022804.7712@scuzzy.in-berlin.de>, src@scuzzy.in-berlin.de (Heiko Blume): | |> don't get me wrong, but there are so many things that are in the | |> man page, but just don't work. | | Then they should be fixed as they are found. | | A man page for a library function is a specification for that function. True, but often a man page specifies more than what is portable. For instance, free() may be defined as accepting NULL happily. Or (my personal peeve) realloc() may say the old pointer is invalid even if the realloc fails. The thing is that there is often (nay, never) a distinction made in the manual about what is specific to the local implementation and what is generic (generic BSD, generic Sys5, generic ANSI C, etc etc etc). It is often difficult to decide how much of a manual page one should trust when writing code to run on different implementations. - Cameron Simpson cameron@spectrum.cs.unsw.oz.au