
Clang project is a c, c++, objective c and objective c++ front-end for the llvm compiler. some of its goals include the following:
end-user features:
* fast compiles and low memory use
* expressive diagnostics (examples)
* gcc compatibility
utility and applications:
* modular library based architecture
* support diverse clients (refactoring, static analysis, code
generation, etc)
* allow tight integration with ides
* use the llvm 'bsd' license
internal design and implementation:
* a real-world, production quality compiler
* a simple and hackable code base
* a single unified parser for c, objective c, c++, and objective c++
* conformance with c/c++/objc and their variants