Clang

A C language family frontend for LLVM. The goal of the Clang project is to create a new C, C++, Objective C and Objective C++ front-end for the LLVM compiler.

clang1

What Is It?

Clang is considered to be a production quality C, Objective-C, C++ and Objective-C++ compiler when targeting X86-32, X86-64, and ARM (other targets may have caveats, but are usually easy to fix). If you are looking for source analysis or source-to-source transformation tools, clang is probably a great solution for you.
—Clang Website 2013-02-12

Versions

  • Version 3.0: as of 2011/12/01

Cost

  • Free

Features

  • Fast compiles and low memory use
  • Expressive diagnostics
  • GGC compatible
Pros Cons
  • A real-world, production quality compiler
  • A simple and hackable code base
  • A single unified parser for C, Objective C, C++, and Objective C++
  • Support Diverse Clients
  • Does not support Java, Ada, FORTRAN
  • Require a C++ compiler to build it
  • Requires you to write C++ code to use hackable code
feedback