9cc is a small and educational C compiler designed to demonstrate the internal workings of a compiler while still being capable of compiling meaningful programs. It serves as a continuation of Rui Ueyama’s series of compiler projects, focusing on clarity and incremental development rather than production-level optimization. The compiler implements essential stages such as lexical analysis, parsing, semantic analysis, and code generation, providing a complete pipeline from source code to executable output. It supports a subset of the C language sufficient to understand real-world compilation concepts, making it a valuable learning resource for developers interested in low-level programming. The project emphasizes readability and simplicity, with code structured to be easily understood rather than highly optimized. It also demonstrates key compiler design principles such as abstract syntax trees and symbol tables.

Features

  • Implementation of a functional C compiler pipeline
  • Readable and educational codebase for learning purposes
  • Support for core C language features
  • Includes lexer, parser, and code generator components
  • Demonstrates abstract syntax trees and symbol handling
  • Designed for incremental understanding of compiler design

Project Samples

Project Activity

See All Activity >

Categories

Compilers

License

MIT License

Follow 9cc C compiler

9cc C compiler Web Site

Other Useful Business Software
Our Free Plans just got better! | Auth0 Icon
Our Free Plans just got better! | Auth0

With up to 25k MAUs and unlimited Okta connections, our Free Plan lets you focus on what you do best—building great apps.

You asked, we delivered! Auth0 is excited to expand our Free and Paid plans to include more options so you can focus on building, deploying, and scaling applications without having to worry about your security. Auth0 now, thank yourself later.
Try free now
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of 9cc C compiler!

Additional Project Details

Operating Systems

Linux

Programming Language

C

Related Categories

C Compilers

Registered

2026-03-26