Path: utzoo!utgpu!news-server.csri.toronto.edu!mailrus!uunet!know!zaphod.mps.ohio-state.edu!mips!daver!llustig!objy!objy!peter From: peter@objy.objy.com (Peter Moore) Newsgroups: comp.std.c++ Subject: Re: Randomly ordered fields !?!? (Was: Message-ID: <1990Sep8.154622@objy.objy.com> Date: 8 Sep 90 22:46:22 GMT References: <1990Aug27.152540@bert.llnl.gov> <1990Aug28.211752.24905@zorch.SF-Bay.ORG> <1990Aug28.173553@bert.llnl.gov> <1990Sep1.131041.15411@zorch.SF-Bay.ORG> Sender: news@objy.com Reply-To: peter@objy.com Organization: Objectivity Inc. Lines: 34 In article <1990Sep1.131041.15411@zorch.SF-Bay.ORG>, xanthian@zorch.SF-Bay.ORG (Kent Paul Dolan) writes: << I will paraphrase, since the >>'s were getting too deep: If the standard doesn't mandate structure layout, then compiler writers will be free to change structure layout over time and render all existing stored binary data obsolete >> Now hold on. There may be arguments for enforcing structure layout, but this sure isn't one of them. If the different releases of the compiler change the internal representation of structures, then all old binaries and libraries will become incompatible. This is immediately unacceptable to me, without any secondary worries about old binary data. If a vendor tried to do that, I would simple change vendors, and never come back. And no sane vendor would try such a change. The vendor himself has linkers, debuggers, libraries, and compilers for other languages that all would change, not to mention thousands of irate customers burning the vendor in effigy. There are so many things that a vendor could change that would cause incompatibility: calling formats, floating point formats, object file formats, etc.. The vendor could take 3 years to upgrade to ANSI or insist on supplying non-standard features that can't be turned off. Structure layout is just a small part. By your argument, ANSI should legislate them all, and that is unreasonable and WAY too restrictive on implementations. The standard can never protect you from an incompetent or malicious vendor. It can only act as a common ground for well intentioned vendors and customers to meet. Peter Moore peter@objy.com