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

Aaron Ballman via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Apr 23 00:12:17 PDT 2018


aaron.ballman added a comment.

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

> > 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.
>
> I'm not sure I follow.  The language options have specific consequences you could check some other way, so they're "stable" in the sense that the same flags will produce the same result (e.g. LangOpts.FastMath represents whether __FAST_MATH__ is defined).  So it should be possible to provide the data somehow; I'm more concerned about taking names and enum values from LangOptions.def itself.


When a name or enum value from LangOptions.def changes, that generally signals some behavior may have changed (we don't often rename things just for the sake of renaming them, but that seems a less likely scenario) and we might want to react to that in our product. That's why the list of names from LangOptions.def directly is somewhat of a benefit (but it is not a design requirement).

How do you envision surfacing a list of language options that isn't tied to values from LangOptions.def itself? Would it still be tied in to the syntax in LangOptions.def (and others) so that there's not a substantial increase in maintenance burden when modifying options?


https://reviews.llvm.org/D45835





More information about the cfe-commits mailing list