Csmith is a test case generation tool.
It can generate random C programs that statically and dynamically conform to the C99 standard.
It is used for stress-testing compilers, static analyzers, and other tools that process C code.
It is a free, open source, permissively licensed C compiler fuzzer developed by researchers at the University of Utah.
It was previously called Randprog.