[PATCH] D106375: Thread safety analysis: Mock getter for private mutexes can be undefined

Aaron Ballman via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Jul 23 05:56:43 PDT 2021


aaron.ballman added a comment.

In D106375#2899827 <https://reviews.llvm.org/D106375#2899827>, @aaronpuchert wrote:

> In D106375#2896484 <https://reviews.llvm.org/D106375#2896484>, @aaron.ballman wrote:
>
>> LGTM! It took me a minute to convince myself it wasn't really an ODR use (the argument goes through the usual expression evaluation parsing and sema bits), but because the arguments to these attributes never wind up being used in codegen, they're not really a use as far as the ODR is concerned.
>
> Right, the standard doesn't know about our attributes. My reasoning was that they are basically an unevaluated context like a `sizeof` expression.

Nonstandard attributes are wholly up to the implementation for what their semantic effects are, so they can be unevaluated *or* constant evaluated *or* runtime evaluated depending on need. I mostly just needed to make sure we weren't accidentally marking these uses as ODR uses, and happily, we weren't.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D106375



More information about the cfe-commits mailing list