The goal of the Clang project is to create a new C based language
front-end: C, C++, Objective C/C++, OpenCL C and others for the LLVM
Development of the new front-end was started out of a need for a
compiler that allows better diagnostics, better integration with IDEs,
a license that is compatible with commercial products, and a nimble
compiler that is easy to develop and maintain. All of these were
motivations for starting work on a new front-end that could meet these needs.