C code. It would be relatively easy to turn this into a JIT compiler using\r
LLVM.</li>\r
\r
+<li><b>Self-testing using clang</b>: There are several neat ways to\r
+improve the quality of clang by self-testing. Some examples:\r
+<ul>\r
+ <li>Improve the reliability of AST printing and serialization by\r
+ ensuring that the AST produced by clang on an input doesn't change\r
+ when it is reparsed or unserialized.\r
+\r
+ <li>Improve parser reliability and error generation by automatically\r
+ or randomly changing the input checking that clang doesn't crash and\r
+ that it doesn't generate excessive errors for small input\r
+ changes. Manipulating the input at both the text and token levels is\r
+ likely to produce interesting test cases.\r
+</ul>\r
+</li>\r
+\r
</ul>\r
\r
<p>If you hit a bug with clang, it is very useful for us if you reduce the code\r