Topic: Evaluations of C++ compilers


Author: yonald@corvette.lcs.mit.edu (Yonald Chery)
Date: 23 Nov 1994 16:38:15 GMT
Raw View
I'm trying to come up with criteria for evaluating C++ compilers and
their supporting environment for both UNIX boxes and PCs.

Does anyone know of any good references to reviews, evaluations, or
discussions about these different C++ compiler products ?

Along those lines, does anyone know if there is a set of C++ test
suites that I could use to test a compiler's correctness and warning
capabilities.

Any help would be most appreciated.

Thanks,

Yonald Chery





Author: dcb@lovat.fmrco.com (David Binderman)
Date: Fri, 25 Nov 1994 15:12:18 GMT
Raw View
In article 94Nov23113815@corvette.lcs.mit.edu, yonald@corvette.lcs.mit.edu (Yonald Chery) writes:
>I'm trying to come up with criteria for evaluating C++ compilers and
>their supporting environment for both UNIX boxes and PCs.

That depends. You might consider

1. Does compiler X do the right thing with the code that you have today ?

2. How close is compiler X to the ARM ?

3. How close is compiler X to some recent draft of the ISO spec ?

4. What is the perceived quality of the support group for the compiler ?

5. How few tests does compiler X fail in test suite Y ?

6. Is the GUI powerful ?

>Does anyone know of any good references to reviews, evaluations, or
>discussions about these different C++ compiler products ?

Well, this stuff is extremely commercially sensitive, but as a general rule

1. The MS-DOS/ Windows market is faster moving than UNIX. Many UNIX
teams use 3-4 year old compilers happily.

2. You get what you pay for. Mostly. YMMV.

>Along those lines, does anyone know if there is a set of C++ test
>suites that I could use to test a compiler's correctness and warning
>capabilities.

I've found the Perennial test suite to be extremely useful. Basically, each
sentence in the ARM which says "C++ does X" has a corresponding test in
the Perennial test suite. e-mail info@peren.com or something like that.

Be warned Perennial seem to sell mostly to compiler vendors. I've heard numbers
like $50,000 bandied about.

A compiler can still be some use, and fail 100's of tests.

>Any help would be most appreciated.

The golden rule is to not trust any one C++ compiler. They _all_ have bugs,
so choose an odd number of them, require all your code to go thru them all,
and where compiler disagreement breaks out, since you've got an odd number
of them, use majority voting.

Even today I found a commercial C++ compiler that thinks that friendship
is inherited. Oh dear !

Regards

David C Binderman MSc BSc       +44 171 975 4723         dcb@lovat.fmrco.com
O-O analysis & design, C++, C, UNIX, ...