HomePhabricator

Add means to handle negative capabilities in thread safety annotations

Description

Add means to handle negative capabilities in thread safety annotations

Summary:

This commit is separated from #19238, and it adds support of Negative Capabilities in the Clang Thread Safety Analysis attributes.

Negative requirements are an alternative EXCLUDES [LOCKS_EXCLUDED] that provide a stronger safety guarantee. A negative requirement uses the REQUIRES [EXCLUSIVE_LOCKS_REQUIRED] attribute, in conjunction with the ! operator, to indicate that a capability should not be held.

This is a backport of core#19249

Test Plan: ninja

Reviewers: #bitcoin_abc, majcosta

Reviewed By: #bitcoin_abc, majcosta

Differential Revision: https://reviews.bitcoinabc.org/D9937

Details

Provenance
Hennadii Stepanov <32963518+hebasto@users.noreply.github.com>Authored on Jun 9 2020, 13:50
PiRKCommitted on Aug 26 2021, 08:04
PiRKPushed on Aug 26 2021, 08:05
Reviewer
Restricted Project
Differential Revision
D9937: Add means to handle negative capabilities in thread safety annotations
Parents
rABC21214d0ab812: wallet: error if an explicit fee rate was given but the needed fee rate differed
Branches
Unknown
Tags
Unknown