================ @@ -3963,8 +3995,8 @@ ExprResult Sema::BuildAtomicExpr(SourceRange CallRange, SourceRange ExprRange, return ExprError(); } - if (!IsC11 && !AtomTy.isTriviallyCopyableType(Context) && - !AtomTy->isScalarType()) { + if (!IsC11 && Form != TestAndSet && Form != Clear && + !AtomTy.isTriviallyCopyableType(Context) && !AtomTy->isScalarType()) { ---------------- jyknight wrote:
And then you can remove this diff, because the `AtomTy` will be (correctly) `char`. https://github.com/llvm/llvm-project/pull/121943 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits