[clang] Support [[guarded_by(mutex)]] attribute inside C struct (PR #94216)
Arthur Eubanks via cfe-commits
cfe-commits at lists.llvm.org
Wed Jun 12 15:31:19 PDT 2024
aeubanks wrote:
this seems to have broken code like [this](https://crsrc.org/c/base/allocator/partition_allocator/src/partition_alloc/random.cc;drc=36293863bf9bbc8131797eb8f4d2bafe8af3de79;l=33) with
```
../../base/allocator/partition_allocator/src/partition_alloc/random.cc:33:69: error: invalid use of non-static data member 'lock_'
33 | internal::base::InsecureRandomGenerator instance_ PA_GUARDED_BY(lock_);
| ^~~~~
../../base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/thread_annotations.h:59:70: note: expanded from macro 'PA_GUARDED_BY'
59 | #define PA_GUARDED_BY(x) PA_THREAD_ANNOTATION_ATTRIBUTE__(guarded_by(x))
| ^
../../base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/thread_annotations.h:44:60: note: expanded from macro 'PA_THREAD_ANNOTATION_ATTRIBUTE__'
44 | #define PA_THREAD_ANNOTATION_ATTRIBUTE__(x) __attribute__((x))
| ^
../../base/allocator/partition_allocator/src/partition_alloc/random.cc:35:65: error: invalid use of non-static data member 'lock_'
35 | internal::base::InsecureRandomGenerator)] PA_GUARDED_BY(lock_) = {};
| ^~~~~
../../base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/thread_annotations.h:59:70: note: expanded from macro 'PA_GUARDED_BY'
59 | #define PA_GUARDED_BY(x) PA_THREAD_ANNOTATION_ATTRIBUTE__(guarded_by(x))
| ^
../../base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/thread_annotations.h:44:60: note: expanded from macro 'PA_THREAD_ANNOTATION_ATTRIBUTE__'
44 | #define PA_THREAD_ANNOTATION_ATTRIBUTE__(x) __attribute__((x))
| ^
```
is that intentional?
https://github.com/llvm/llvm-project/pull/94216
More information about the cfe-commits
mailing list