Moving ASTConsumers.h to include/clang/Frontend ?

Per subject, the suggestion is to move ASTConsumers.h to
include/clang/Frontend, and the related .cpp files into lib/Frontend.
It seems like a good idea because it's a set of completely
self-contained utilities, and it potentially allows programs other
than clang-cc to use these utilities. (CreateBackendConsumer in
particular strikes me as useful, and the others could be nice to
have.) Does anyone disagree?

Note that the following changes would be required first:
1. Move the declaration for CreateAnalysisConsumer to clang-cc.h;
AnalysisConsumer.cpp has a bunch of command-line options, so it can't
go into lib/ in its current form.
2. Move the "Wno-rewrite-macros" option for the ObjC rewriter to clang-cc.cpp.

-Eli

Hi Eli,

Per subject, the suggestion is to move ASTConsumers.h to
include/clang/Frontend, and the related .cpp files into lib/Frontend.
It seems like a good idea because it's a set of completely
self-contained utilities, and it potentially allows programs other
than clang-cc to use these utilities. (CreateBackendConsumer in
particular strikes me as useful, and the others could be nice to
have.) Does anyone disagree?

Not at all, this is definitely where we should be going in my opinion.
I'd like to see your patch to move the file names to streams go in
first, with the idea that the Frontend library shouldn't be making
policy decisions (like how to replace a suffix).

In the long term, I would like to see clang-cc be little more than a
wrapper around code in Frontend which just translates the command line
options into API calls / data structures. This should make it easier
to build new clients, and to have the driver integrate the compiler
directly.

- Daniel