This reverts commit 8ac70957. This commit changes the public API of clang, so it needs to be reworked.