Path: utzoo!attcan!uunet!ogicse!blake!milton!uw-beaver!ssc-vax!coy From: coy@ssc-vax.UUCP (Stephen B Coy) Newsgroups: comp.sys.ibm.pc.programmer Subject: Re: No Aliasing Compile Option Keywords: Microsoft 6.0 C update woes Message-ID: <3384@ssc-vax.UUCP> Date: 1 Jun 90 21:57:23 GMT References: <1913@cod.NOSC.MIL> <265A8814.1465@tct.uucp> <1920@cod.NOSC.MIL> <2663F3E5.725E@tct.uucp> Organization: Boeing Aerospace & Electronics, Seattle WA Lines: 44 This discussion has gotten a bit overblown. Please read my comments with a healthy dose of :-)'s. In article <2663F3E5.725E@tct.uucp>, chip@tct.uucp (Chip Salzenberg) writes: > PLEASE NOTE: My complaint is that Microsoft is using "cl -Oa" in > PUBLISHED BENCHMARKS. I consider this practice EVIL and RUDE, > because "cl -Oa" is not a C compiler. It produces incorrect > results on C programs that use aliasing within functions. Such > programs may be poorly written in the opinion of some, but they > are still *valid* C programs. This implies that any compiler with a bug, no matter how obscure or easy to work around is "not a real(tm) C compiler." I'll bet that most compiler vendors also run their benchmarks with trigraph recognition turned off to save time in their lexer. More EVIL and RUDE practice to be sure. But should that bother you? When was the last time you needed trigraphs? Running benchmarks with -Oa is valid because most code can take advantage of extra speed gain just as compiling without trigraphs is valid since trigraph recognition tends to be extra baggage in the great majority of cases. > If I read a Microsoft C benchmark result, I want it to be > compiled with a COMPLETE C COMPILER. To do otherwise is > fraudulent advertising on Microsoft's part. Last time I checked MSC still wasn't 100% ANSI compliant. Close enough for real work but not a COMPLETE C COMPILER. Note that this also applies to all the other "C" compilers on the market. > Is that clear enough? One comment. With all the variables involved in benchmarking compilers I'm surprised anybody would even believe a vendor's benchmarks have any validity whatsoever. A good first step would be to check out what Computer Language or other magazines have to say when they compare compilers. The only realistic approach is to try your own code. > Chip, the new t.b answer man , Stephen Coy uw-beaver!ssc-vax!coy