Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!purdue!haven!adm!smoke!gwyn From: gwyn@smoke.BRL.MIL (Doug Gwyn) Newsgroups: comp.lang.c Subject: Re: Uninitialized externals and statics. Message-ID: <10791@smoke.BRL.MIL> Date: 21 Aug 89 19:09:59 GMT References: <2128@infmx.UUCP> <10764@smoke.BRL.MIL> <478.nlhp3@oracle.nl> <1989Aug19.053711.7462@twwells.com> Reply-To: gwyn@brl.arpa (Doug Gwyn) Organization: Ballistic Research Lab (BRL), APG, MD. Lines: 11 In article <1989Aug19.053711.7462@twwells.com> bill@twwells.com (T. William Wells) writes: >int Array[1000] = {0}; >This sort of thing made the difference between a product that could >be shipped on one floppy and one that required two. The interesting thing is, the compiler is entitled to treat this exactly the same as the non-explicit initializer case. The difference is a side effect of UNIX having adopted the COMMON model for extern data. Somewhere along the way, AT&T PCC releases started supporting DEF/REF (in effect), without the extra cleverness that would have kept executables from turning .BSS into .DATA.