jkorous added a comment. In D125349#3509073 <https://reviews.llvm.org/D125349#3509073>, @aaron.ballman wrote:
> It's interesting to note that `an_atomic_uint = an_atomic_uint + > an_enum_value` works correctly: https://godbolt.org/z/cvP9e6nh7. I was trying > to figure out whether the atomic qualifier is properly stripped for the > compound operator. When I run under a debugger and dump the AST for > `Args[0]`, I get: `DeclRefExpr 0x26efcf87f88 '_Atomic(unsigned int)' lvalue > Var 0x26efcf44cb8 'an_atomic_uint' '_Atomic(unsigned int)'` which seems like > it may be the root cause of the problem here (tough to say given that this is > a C extension in C++ though). The lvalue conversion that takes place for > `an_atomic_uint` should drop the atomic qualifier per C2x 6.3.2.1p2. Thank you for the suggestion! I'm looking into this. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D125349/new/ https://reviews.llvm.org/D125349 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits