[PATCH] D72635: Add "context" capability to Thread Safety Analysis

Aaron Ballman via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Jan 17 06:11:15 PST 2020


aaron.ballman added a comment.

In D72635#1825219 <https://reviews.llvm.org/D72635#1825219>, @aaronpuchert wrote:

> Hmm, I have been wondering about this as well. The way I see it, all of these things are what we call //capabilities//, and we treat them all the same. The names are just meant to make warning messages more readable, because what the analysis considers a capability, the user might know as a //mutex//, or //role//, or //sequence//.


Yup, that was intentional. We started out with thread safety analysis using "lock" terminology everywhere, but then switched to "capability" analysis which is roughly the same thing using more generic terms.

> I think I'll read a bit of code to see if this is really true and there are no functional differences between the differently named capabilities, but other than that I've no objections to allowing arbitrary names. I'm trying to come up with potential problems caused by opening the flood gates, but frankly I don't see any.
> 
> Edit: I've gone through `ThreadSafety.cpp` and `AnalysisBasedWarnings.cpp` and it seems that we indeed only write the name into the diagnostic.

Thank you for double-checking -- I had come to the same conclusion myself.


Repository:
  rC Clang

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

https://reviews.llvm.org/D72635





More information about the cfe-commits mailing list