[llvm-branch-commits] [clang] [clang] remove unneeded template deduction canonicalizations (PR #101594)

via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Sun Aug 4 03:35:38 PDT 2024


================
@@ -4751,19 +4743,16 @@ TemplateDeductionResult Sema::DeduceTemplateArguments(
 
 TemplateDeductionResult Sema::DeduceTemplateArguments(
     FunctionTemplateDecl *ConversionTemplate, QualType ObjectType,
-    Expr::Classification ObjectClassification, QualType ToType,
+    Expr::Classification ObjectClassification, QualType A,
     CXXConversionDecl *&Specialization, TemplateDeductionInfo &Info) {
   if (ConversionTemplate->isInvalidDecl())
     return TemplateDeductionResult::Invalid;
 
   CXXConversionDecl *ConversionGeneric
     = cast<CXXConversionDecl>(ConversionTemplate->getTemplatedDecl());
 
-  QualType FromType = ConversionGeneric->getConversionType();
-
-  // Canonicalize the types for deduction.
-  QualType P = Context.getCanonicalType(FromType);
-  QualType A = Context.getCanonicalType(ToType);
+  QualType P = ConversionGeneric->getConversionType();
+  bool IsReferenceP = P->isReferenceType(), IsReferenceA = A->isReferenceType();
----------------
cor3ntin wrote:

Please put that on 2 lines

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


More information about the llvm-branch-commits mailing list