aaron.ballman added a comment.

In https://reviews.llvm.org/D45835#1072557, @efriedma wrote:

> The list of features/extensions seems okay; it's information which is already 
> available through a stable interface (specifically, clang -E).  JSON also 
> seems fine as a representation.
>
> Including the language/codegen/etc. options as-is doesn't make sense; we can, 
> and often do, change the internal representation of the option structs.  If 
> the information is useful, we should provide a stable interface.


For our needs, the features/extensions is the most important information. I'd 
be happy to split this patch into two parts: one for the features/extensions 
dump and another for extended information if the compiler options part remains 
contentious.

Our tool already has to parse the Clang command line to get much of this 
information, and that effectively is the stable interface to compiler options. 
However, every once in a while, some piece of configuration information is 
calculated from the command line and getting Clang's exact answer is useful. If 
any of those options we care about wind up being changed, there's a good chance 
we may need to change something on our end anyway, so breaking us is actually 
useful. Given the benefits of having implementation freedom for the options 
interfaces, I'd prefer to keep them unstable for this feature.


https://reviews.llvm.org/D45835



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to