Page MenuHomePhabricator

[analyzer] Don't delete TaintConfig copy constructor
ClosedPublic

Authored by xiaobai on Tue, Aug 13, 5:58 PM.

Details

Summary

Explicitly deleting the copy constructor makes compiling the function
ento::registerGenericTaintChecker difficult with some compilers. When we
construct an llvm::Optional<TaintConfig>, the optional is constructed with a
const TaintConfig reference which it then uses to invoke the deleted TaintConfig
copy constructor.

I've observered this failing with clang 3.8 on Ubuntu 16.04.

Diff Detail

Repository
rL LLVM

Event Timeline

xiaobai created this revision.Tue, Aug 13, 5:58 PM
Herald added a project: Restricted Project. · View Herald TranscriptTue, Aug 13, 5:58 PM
Szelethus accepted this revision.Tue, Aug 13, 6:01 PM

This really shouldn't matter much. Go for it!

This revision is now accepted and ready to land.Tue, Aug 13, 6:01 PM
This revision was automatically updated to reflect the committed changes.
Herald added a project: Restricted Project. · View Herald TranscriptTue, Aug 13, 6:08 PM