[clang] [Clang][Sema] properly remove qualifiers in __is_pointer_interconvertible_base_of (PR #167881)
Rose Hudson via cfe-commits
cfe-commits at lists.llvm.org
Mon Nov 17 00:49:11 PST 2025
================
@@ -15607,8 +15607,8 @@ bool Sema::IsLayoutCompatible(QualType T1, QualType T2) const {
bool Sema::IsPointerInterconvertibleBaseOf(const TypeSourceInfo *Base,
const TypeSourceInfo *Derived) {
- QualType BaseT = Base->getType()->getCanonicalTypeUnqualified();
- QualType DerivedT = Derived->getType()->getCanonicalTypeUnqualified();
+ QualType BaseT = Base->getType().getUnqualifiedType();
+ QualType DerivedT = Derived->getType().getUnqualifiedType();
----------------
rosefromthedead wrote:
also, if canonical types can have qualifiers, why is `A` the canonical type of `const A`?
https://github.com/llvm/llvm-project/pull/167881
More information about the cfe-commits
mailing list