clang
From Wikipedia, the free encyclopedia
| clang | |
|---|---|
| Design by | Chris Lattner and others |
| Developed by | Apple Inc. |
| Written in | C++ |
| OS | Unix-like |
| Platform | Cross-platform |
| Development status | in active development |
| Genre | Compiler |
| License | University of Illinois Open Source License [1] |
| Website | clang home |
clang is a compiler front end for the C, C++, and Objective-C programming languages. It uses the Low Level Virtual Machine (LLVM) as its back end. It is still under development; when finished, it will offer a potential replacement to the GNU Compiler Collection (GCC). It is sponsored by Apple. Its goals include:
- a layered library design to allow compiler components to be reused in such features as:
- autocomplete
- code refactoring
- static analysis
- source code indexing
- documentation generation
- smaller memory footprint compared to GCC
- higher compilation speed than GCC
- command-line compatibility with GCC (for "drop-in" compatibility)
[edit] Current Status
The project is under rapid development. Currently (December 2007), code generation for C and Objective-C is partially complete. Support for C++ and Objective-C++ is still quite incomplete; the project team "[doesn't] expect to have respectable C++ support for another 2 years or so."
[edit] External links
- clang: a C language family frontend for LLVM
- LLVMdev: New LLVM C front-end: "clang", announcement (11 July 2007)
- Presentation, Slides
- Tech talk about LLVM future and clang, Slides

