[PATCH] D57860: [analyzer] Validate checker option names and values

Kristóf Umann via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Sat Mar 23 03:41:36 PDT 2019


Szelethus added a comment.

In D57860#1432728 <https://reviews.llvm.org/D57860#1432728>, @dcoughlin wrote:

> I think it would be better if the default for compatibility mode were 'true'. That way this change will be backwards compatible and clients who want to enforce stricter checking could enable it. Setting compatibility mode to be true in the driver is not sufficient since many build systems call the frontend directly.


Well, this is how 8.0.0. landed, so for better or for worse, changing it back wouldn't help on those clients much -- the question is now that whether there's a point in changing this yet back again. I would argue *strongly* on the side that it is not, because, according to the FAQ <https://clang.llvm.org/docs/FAQ.html>:

> Frontend-only options are intended to be used only by clang developers. Users should not run clang -cc1 directly, because -cc1 options are not guaranteed to be stable.

Of course, developers could also just invoke the analyzer with compatibility mode disabled, but thats I think a chore, and easy to forget -- it would greatly diminish the value of these patches, and as a frequent contributor, I would personally strongly prefer the analyzer to just terminate and not waste my time when I mess up an invocation.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D57860/new/

https://reviews.llvm.org/D57860





More information about the cfe-commits mailing list