Edge Rewrite
// HTMLRewriter · presentation

This page was redesigned at the edge.

Cloudflare fetched the original article and streamed it through HTMLRewriter to apply an entirely new visual system without rebuilding the source page.

// request.cf · coarse context

A page that knows where it met you.

Only coarse request metadata is shown. This demo does not display or persist visitor IP addresses.

Country
US
Cloudflare location
CMH
Connection
HTTP/2
Language
Not provided

Ray ID: a21d59f9cae7cf6e

Jump to content

Comeau C/C++

From Wikipedia, the free encyclopedia
(Redirected from Comeau Computing)
Comeau C/C++
Stable release
4.3.3
Preview release
4.3.10.1 beta2 / October 6, 2008; 17 years ago (2008-10-06)
Written inC/C++
Operating systemMicrosoft Windows, Linux, Mac OS X, Solaris
TypeCompiler
Licenseproprietary
Websitecomeaucomputing.com (Original site no longer active)

Comeau C/C++ was 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]

Design

[edit]

The compiler supported several dialects of both the C and C++ languages. It came with its own version of the C++ Standard Library, libcomo, that was based on the C++ Standard Library from Silicon Graphics, but could also be used with the Dinkumware C Standard Library.[1][4]

The compiler was based on the Edison Design Group C++ frontend, also utilized in the Intel C++ Compiler. Rather than produce an executable directly, Comeau C/C++ would output C code and required a separate C compiler in order to produce the final program. The Comeau C/C++ compiler could employ several back ends.[1][5]

Comeau C/C++ supported exported templates, which no other compiler was known to support. This was a feature that allowed templated symbols to be defined external of their declaration.[6][7] It introduced the export keyword in the context of templates with C++03, but this feature was removed from C++ in C++11. The keyword was later reintroduced with more general application in C++20 with the introduction of modules.

Standards compliance

[edit]

Comeau Computing was 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][8]

Distribution

[edit]

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

The compiler was available for purchase for both Unix and Microsoft Windows platforms. Comeau also offered custom ports to other platforms, albeit at a substantially increased cost.[1]

Status

[edit]

The compiler was last 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 SEO spammer.

References

[edit]
  1. 1 2 3 4 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. 1 2 3 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. "Export Overview". comeaucomputing.com. Comeau Computing. Archived from the original on 2 June 2003.
  7. "Exported Template Overview". comeaucomputing.com. Comeau Computing. Archived from the original on 22 April 2003.
  8. Stanley B. Lippman (1997). C++ Gems. Cambridge University Press. pp. x. ISBN 978-0-13-570581-0.