[PATCH] D128750: [C++20] Implement P2113R0: Changes to the Partial Ordering of Constrained Functions

Matheus Izvekov via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Oct 11 23:29:38 PDT 2022


mizvekov added inline comments.


================
Comment at: clang/include/clang/Sema/SemaConcept.h:53-62
+          if (const auto *SubstB =
+                  ArgB.getAsType()->getAs<SubstTemplateTypeParmType>()) {
+            QualType ReplacementA = SubstA->getReplacementType();
+            QualType ReplacementB = SubstB->getReplacementType();
+            if (ReplacementA->isDecltypeType() &&
+                ReplacementB->isDecltypeType()) {
+              assert(ReplacementA->isDependentType() &&
----------------
Why didn't we manage to get rid of this workaround yet?
I thought the changes to canonical AutoType were part of this, or are we still missing something?

A dependent DecltypeType is uniqued and has a canonical type by the way, this is implemented through the `DependentDecltypeType` subclass.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D128750/new/

https://reviews.llvm.org/D128750



More information about the cfe-commits mailing list