================
@@ -3742,7 +3742,13 @@ CheckOriginalCallArgDeduction(Sema &S, 
TemplateDeductionInfo &Info,
   QualType OriginalParamType = OriginalArg.OriginalParamType;
 
   // Check for type equality (top-level cv-qualifiers are ignored).
-  if (Context.hasSameUnqualifiedType(A, DeducedA))
+  // _Atomic is treated as a qualifier, so strip it from both sides.
+  auto StripAtomic = [](QualType T) -> QualType {
+    if (const auto *AT = T->getAs<AtomicType>())
+      return AT->getValueType();
+    return T;
+  };
+  if (Context.hasSameUnqualifiedType(StripAtomic(A), StripAtomic(DeducedA)))
----------------
mkovacevic99 wrote:

good catch, I updated it

https://github.com/llvm/llvm-project/pull/197874
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to