Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!henry From: henry@utzoo.UUCP (Henry Spencer) Newsgroups: net.lang.c Subject: Re: Must a NULL pointer be a 0 bit patte Message-ID: <4589@utzoo.UUCP> Date: Mon, 5-Nov-84 19:02:50 EST Article-I.D.: utzoo.4589 Posted: Mon Nov 5 19:02:50 1984 Date-Received: Mon, 5-Nov-84 19:02:50 EST References: <102@ISM780B.UUCP> Organization: U of Toronto Zoology Lines: 19 > Aside from the case of BSS initialization, which one could argue is equivalent > to an assignment so the compiler can handle pointers by initializing them > (good luck to people who depend on these variables really going into .bss), > there is calloc and memset(&structure, '\0', sizeof structure); these > would have to be changed to explicit member-by-member assignment, > or assignment from a dummy previously initialized structure. People who depend on specific variables really going into .bss are writing grossly unportable code -- the whole *notion* of .bss is quite implementation-dependent -- so I feel no sympathy for them. calloc() is admittedly problematic, but one can argue that the definition of calloc() is such that it is unimplementable on oddball machines. That is, the definition of calloc() is subtly machine-dependent. Viewed in this light, calloc() is a lesser issue. Ditto for memset(), whatever in the world that is. -- Henry Spencer @ U of Toronto Zoology {allegra,ihnp4,linus,decvax}!utzoo!henry