This is an archive of the discontinued LLVM Phabricator instance.

[clang][analyzer] Enable core.builtin even with -no-default-checks
AbandonedPublic

Authored by zinovy.nis on Feb 23 2020, 9:14 AM.

Details

Summary

It's required to properly handle attribute(([analyzer_]noreturn)) in checks.

See also https://reviews.llvm.org/D66042

Diff Detail

Event Timeline

zinovy.nis created this revision.Feb 23 2020, 9:14 AM
zinovy.nis edited the summary of this revision. (Show Details)Feb 25 2020, 10:17 PM
zinovy.nis edited reviewers, added: gribozavr; removed: alexfh.
Szelethus requested changes to this revision.Feb 25 2020, 11:45 PM

This doesn't seem to be in line with the current idea behind core checkers. Turning them off is strongly disencouraged as they are responsible for essential modeling. If you use --analyzer-no-default-checks, i can only imagine that the expected behaviour is to turn them off for good despite the warning.

If we want to create a world where checkers are only responsible for report emission and not modeling (which we are working on!), then we could change the behaviour to turn off all reporting checkers, but not default modeling checkers. This is however pretty much impossible with how intertwined everything is. Yet.

This revision now requires changes to proceed.Feb 25 2020, 11:45 PM

@Charusso implemented a flag that can silence checkers in D66042. I can offer that as an alternative while we're working on separating modeling and reporting in the checker insfrastructure.

zinovy.nis abandoned this revision.Feb 26 2020, 2:32 AM