[clang] [Clang] Fix ConstExpr comparing qualified atomic vec types (PR #199246)

Amr Hesham via cfe-commits cfe-commits at lists.llvm.org
Wed May 27 10:02:22 PDT 2026


================
@@ -1619,14 +1619,18 @@ template <class Emitter>
 bool Compiler<Emitter>::VisitVectorBinOp(const BinaryOperator *E) {
   const Expr *LHS = E->getLHS();
   const Expr *RHS = E->getRHS();
+
+  QualType LHSTy = LHS->getType().getAtomicUnqualifiedType();
----------------
AmrDeveloper wrote:

I found that the assert trigger only in the C mode, not in C++

https://godbolt.org/z/adf4e9vMf

I would expect that the qualifier is stripped too. I will run clang-ast locally to compare the two modes 🤔, especially the `NonAtomicToAtomic` cast 

https://github.com/llvm/llvm-project/pull/199246


More information about the cfe-commits mailing list