Path: utzoo!utgpu!news-server.csri.toronto.edu!mailrus!cs.utexas.edu!usc!zaphod.mps.ohio-state.edu!mips!daver!tscs!tct!chip From: chip@tct.uucp (Chip Salzenberg) Newsgroups: comp.sys.ibm.pc.programmer Subject: Re: No Aliasing Compile Option Keywords: Microsoft 6.0 C update woes Message-ID: <2663F5E8.735B@tct.uucp> Date: 30 May 90 16:33:43 GMT References: <26547195.F69@tct.uucp> <134@qmsseq.imagen.com> <3866@rtifs1.UUCP> Organization: ComDev/TCT, Sarasota, FL Lines: 22 According to bcw@rti.rti.org (Bruce Wright): >In article <134@qmsseq.imagen.com>, pipkins@qmsseq.imagen.com (Jeff Pipkins) writes: >> Not only should ["-Oa"] not be used to compile benchmarks, IT SHOULD >> NOT EVEN BE AN AVAILABLE OPTION FOR THE COMPILER IN THE FIRST PLACE! > >It's also an UNSAFE assumption to optimize array references [...] Program safety is not the issue. Complete implementation of the C language is the issue. All relevant C documents permit unrestricted aliasing, as well as the "goto" statement and other features not often used by experienced and careful programmers. Nevertheless, a C compiler must support ALL features of the C language to be called a C compiler. Ergo, "cl -Oa" is not a C compiler, and Microsoft should stop using it in published benchmarks that claim to show results for the "Microsoft C Compiler." -- Chip, the new t.b answer man ,