Comeau C/C++ is a compiler for C and C++ produced by Comeau Computing. Comeau C/C++ was once described as the most standards-conformant C++ compiler.[1] In 2006-2008 it was described as the only mainstream C++ compiler to fully support the export keyword for exported templates.[2][3]

Comeau C/C++
Stable release
4.3.3
Preview release
4.3.10.1 beta2 / October 6, 2008; 16 years ago (2008-10-06)
Written inC/C++
Operating systemMicrosoft Windows, Linux, Mac OS X, Solaris
TypeCompiler
Licenseproprietary
WebsiteOriginal site no longer active

Design

edit

The compiler supports several dialects of both the C and C++ languages. It comes with its own version of the Standard C++ library, libcomo, that is based upon the Standard C++ library from Silicon Graphics, but can also be used with the Dinkumware Standard C library.[1][4]

The compiler is based upon the Edison Design Group C++ frontend, also utilized in the Intel C++ Compiler. Rather than produce an executable directly, Comeau C/C++ outputs C code and requires a separate C compiler in order to produce the final program. The Comeau C/C++ can employ several back ends.[1][5]

Standards compliance

edit

Comeau Computing is a founding member of the C++ committee. Comeau Computing's CEO, Greg Comeau, provided one of the early ports of cfront to the PC.[4][6]

Distribution

edit

A limited-function version of the compiler, which allows one to compile source code and view any resulting error messages, but not to produce executable programs, is available from the company's web site.[4]

The compiler is available for both Unix and Microsoft Windows platforms. Comeau also offers custom ports to other platforms, albeit that this is substantially more expensive than buying existent versions of the compiler.[1]

Status

edit

The compiler was updated October 6, 2008 featuring version 4.3.10.1 Beta 2.[citation needed]

As of September 2017, version 4.3.10.1 remains in Beta. The company website appears to have been sold to an unrelated blogger.

References

edit
  1. ^ a b c d D. Ryan Stephens; Christopher Diggins; Jonathan Turkanis; Jeff Cogswell (2006). C++ Cookbook. O'Reilly. p. 8. ISBN 978-0-596-00761-4.
  2. ^ Mark S. Joshi (2008). C++ Design Patterns and Derivatives Pricing. Cambridge University Press. p. 263. ISBN 978-0-521-72162-2.
  3. ^ Marshall Cline (2006). "35: How does the C++ keyword export help with template linker errors?". C++ FAQ Lite. Archived from the original on 2008-12-16. Retrieved 2007-11-29.
  4. ^ a b c Harvey M. Deitel; Paul J. Deitel (2007). C. Corso completo di programmazione (in Italian). translator I. Scagnetto. Apogeo Editore. p. 537. ISBN 978-88-503-2633-4.
  5. ^ David Abrahams and Aleksey Gurtovoy (2005). C++ Template Metaprogramming: Concepts, Tools, and Techniques from Boost and Beyond. Addison-Wesley. p. 155. ISBN 978-0-321-22725-6.
  6. ^ Stanley B. Lippman (1997). C++ Gems. Cambridge University Press. pp. x. ISBN 978-0-13-570581-0.