This is an archive of the discontinued LLVM Phabricator instance.

Thread safety analysis: Support builtin pointer-to-member operators
ClosedPublic

Authored by aaronpuchert on Jul 11 2022, 1:43 PM.

Details

Summary

We consider an access to x.*pm as access of the same kind into x, and
an access to px->*pm as access of the same kind into *px. Previously we
missed reads and writes in the .* case, and operations to the pointed-to
data for ->* (we didn't miss accesses to the pointer itself, because
that requires an LValueToRValue cast that we treat independently).

We added support for overloaded operator->* in D124966.

Diff Detail

Event Timeline

aaronpuchert created this revision.Jul 11 2022, 1:43 PM
Herald added a project: Restricted Project. · View Herald Transcript
aaronpuchert requested review of this revision.Jul 11 2022, 1:43 PM
Herald added a project: Restricted Project. · View Herald TranscriptJul 11 2022, 1:43 PM
Herald added a subscriber: cfe-commits. · View Herald Transcript
aaron.ballman accepted this revision.Jul 12 2022, 5:44 AM

Good catch, LGTM!

This revision is now accepted and ready to land.Jul 12 2022, 5:44 AM