An abstract syntax of C for use by tools.
See syntax-for-tools for background.
We define abstract syntax trees (ASTs), and operations on them.