[all-commits] [llvm/llvm-project] c7ccfc: Thread Safety Analysis: Support reentrant capabili...
Marco Elver via All-commits
all-commits at lists.llvm.org
Mon May 26 08:04:17 PDT 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: c7ccfc6dfc1c2d0ca9cf5615f9f95bb7ad78b1c9
https://github.com/llvm/llvm-project/commit/c7ccfc6dfc1c2d0ca9cf5615f9f95bb7ad78b1c9
Author: Marco Elver <elver at google.com>
Date: 2025-05-26 (Mon, 26 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/docs/ThreadSafetyAnalysis.rst
M clang/include/clang/Analysis/Analyses/ThreadSafety.h
M clang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Analysis/ThreadSafety.cpp
M clang/lib/Analysis/ThreadSafetyCommon.cpp
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/test/Misc/pragma-attribute-supported-attributes-list.test
M clang/test/Sema/warn-thread-safety-analysis.c
M clang/test/SemaCXX/thread-safety-annotations.h
M clang/test/SemaCXX/warn-thread-safety-analysis.cpp
M clang/test/SemaCXX/warn-thread-safety-parsing.cpp
M clang/unittests/AST/ASTImporterTest.cpp
Log Message:
-----------
Thread Safety Analysis: Support reentrant capabilities (#137133)
Introduce the `reentrant_capability` attribute, which may be specified
alongside the `capability(..)` attribute to denote that the defined
capability type is reentrant. Marking a capability as reentrant means
that acquiring the same capability multiple times is safe, and does not
produce warnings on attempted re-acquisition.
The most significant changes required are plumbing to propagate if the
attribute is present to a CapabilityExpr, and introducing
ReentrancyDepth to the LockableFactEntry class.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list