Chapter 4. The Frontend

The compiler frontend converts source code into the compiler's intermediate representation prior to target-specific code generation. Since programming languages have distinct syntax and semantic domains, frontends usually handle either a single language or a group of similar ones. Clang, for instance, handles C, C++, and objective-C source code inputs. In this chapter, we will cover the following topics:

  • How to link programs with Clang libraries and use libclang
  • Clang diagnostics and the Clang frontend stages
  • Lexical, syntactical, and semantic analyses with libclang examples
  • How to write a simplified compiler driver that uses the C++ Clang libraries

Introducing Clang

The Clang project is known as the official LLVM frontend for ...

Get Getting Started with LLVM Core Libraries now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.