This is an archive of the discontinued LLVM Phabricator instance.

[analyzer] allow plugins built as shared libraries to receive events
ClosedPublic

Authored by jranieri-grammatech on Oct 4 2018, 1:51 PM.

Details

Summary

Event types are uniqued by using the addresses of a local static defined in a header files, but it isn't the same across shared library boundaries and plugins can't currently handle ImplicitNullDerefEvents.

Diff Detail

Repository
rC Clang

Event Timeline

jranieri-grammatech retitled this revision from CSA: allow plugins built as shared libraries to receive events to [analyzer] allow plugins built as shared libraries to receive events.Oct 9 2018, 6:57 AM

Please reupload with full context (-U9999).

lib/StaticAnalyzer/Core/Checker.cpp
20

nit: Static fields initialize to 0 without out of line definition.

Szelethus added inline comments.Oct 9 2018, 8:48 AM
lib/StaticAnalyzer/Core/Checker.cpp
20

Never mind, you still have to define it. It's been a while since I used static :).

NoQ accepted this revision.Oct 9 2018, 12:13 PM

Yup, this one looks great as well. I'll commit. Thanks!

This revision is now accepted and ready to land.Oct 9 2018, 12:13 PM
NoQ closed this revision.Oct 19 2018, 5:36 PM

I committed both patches as rC344823 but it seems that Phabricator doesn't pick up closing multiple revisions with the same commit, so closing manually.

Also thanks!~