[PATCH] D45835: Add new driver mode for dumping compiler options

Aaron Ballman via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Apr 19 13:15:41 PDT 2018


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





More information about the cfe-commits mailing list