[clang] [clang] fix structural comparison for dependent class member pointer (PR #133343)
Matheus Izvekov via cfe-commits
cfe-commits at lists.llvm.org
Fri Mar 28 11:14:47 PDT 2025
================
@@ -154,10 +154,30 @@ namespace TestMemberPointerPartialSpec {
// DUMP-NEXT: |-TemplateArgument type 'type-parameter-0-0 type-parameter-0-1::*'
// DUMP-NEXT: | `-MemberPointerType {{.+}} 'type-parameter-0-0 type-parameter-0-1::*' dependent
// DUMP-NEXT: | |-TemplateTypeParmType {{.+}} 'type-parameter-0-1' dependent depth 0 index 1
-// DUMP-NEXT: | |-<<<NULL>>>
// DUMP-NEXT: | `-TemplateTypeParmType {{.+}} 'type-parameter-0-0' dependent depth 0 index 0
} // namespace TestMemberPointerPartialSpec
+namespace TestDependentMemberPointer {
+ template <class U> struct A {
+ using X = int U::*;
+ using Y = int U::test::*;
+ using Z = int U::template V<int>::*;
+ };
+// DUMP-LABEL: NamespaceDecl {{.+}} TestDependentMemberPointer{{$}}
+// DUMP: |-TypeAliasDecl {{.+}} X 'int U::*'{{$}}
+// DUMP-NEXT: | `-MemberPointerType {{.+}} 'int U::*' dependent
+// DUMP-NEXT: | |-TemplateTypeParmType {{.+}} 'U' dependent depth 0 index 0
+// DUMP-NEXT: | | `-TemplateTypeParm {{.+}} 'U'
+// DUMP-NEXT: | `-BuiltinType {{.+}} 'int'
+// DUMP-NEXT: |-TypeAliasDecl {{.+}} Y 'int U::test::*'{{$}}
+// DUMP-NEXT: | `-MemberPointerType {{.+}} 'int U::test::*' dependent
+// DUMP-NEXT: | `-BuiltinType {{.+}} 'int'
+// DUMP-NEXT: `-TypeAliasDecl {{.+}} Z 'int U::template V<int>::*'{{$}}
+// DUMP-NEXT: `-MemberPointerType {{.+}} 'int U::template V<int>::*' dependent
+// DUMP-NEXT: |-DependentTemplateSpecializationType {{.+}} 'U::template V<int>' dependent
+// DUMP-NEXT: `-BuiltinType {{.+}} 'int'
+} // namespoace TestDependentMemberPointer
----------------
mizvekov wrote:
fixed in main, thanks
https://github.com/llvm/llvm-project/pull/133343
More information about the cfe-commits
mailing list