Skip to content

Commit d8c1d25

Browse files
jcsxkyhuqizhi
authored andcommitted
update testcase
1 parent 7e602ae commit d8c1d25

File tree

1 file changed

+26
-7
lines changed

1 file changed

+26
-7
lines changed

clang/unittests/AST/ASTImporterTest.cpp

Lines changed: 26 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9674,25 +9674,44 @@ TEST_P(ASTImporterOptionSpecificTestBase, ImportInstantiatedFromMember) {
96749674
EXPECT_TRUE(ImportedPartialSpecialization->getInstantiatedFromMember());
96759675
}
96769676

9677+
AST_MATCHER_P(EnumDecl, hasEnumConstName, StringRef, ConstName) {
9678+
for (EnumConstantDecl *D : Node.enumerators())
9679+
if (D->getName() == ConstName)
9680+
return true;
9681+
return false;
9682+
}
9683+
96779684
TEST_P(ASTImporterOptionSpecificTestBase, ImportAnonymousEnum) {
96789685
const char *ToCode =
96799686
R"(
96809687
struct A {
9681-
enum { E1,E2} x;
9688+
enum { E1, E2} x;
9689+
enum { E3, E4} y;
96829690
};
96839691
)";
9684-
(void)getToTuDecl(ToCode, Lang_CXX11);
9692+
Decl *ToTU = getToTuDecl(ToCode, Lang_CXX11);
9693+
auto *ToE1 = FirstDeclMatcher<EnumDecl>().match(
9694+
ToTU, enumDecl(hasEnumConstName("E1")));
9695+
auto *ToE3 = FirstDeclMatcher<EnumDecl>().match(
9696+
ToTU, enumDecl(hasEnumConstName("E3")));
96859697
const char *Code =
96869698
R"(
96879699
struct A {
9688-
enum { E1,E2} x;
9700+
enum { E1, E2} x;
9701+
enum { E3, E4} y;
96899702
};
96909703
)";
96919704
Decl *FromTU = getTuDecl(Code, Lang_CXX11);
9692-
auto *FromE = FirstDeclMatcher<EnumDecl>().match(FromTU, enumDecl());
9693-
auto *ToE = Import(FromE, Lang_CXX11);
9694-
ASSERT_TRUE(ToE);
9695-
EXPECT_FALSE(ToE->enumerators().empty());
9705+
auto *FromE1 = FirstDeclMatcher<EnumDecl>().match(
9706+
FromTU, enumDecl(hasEnumConstName("E1")));
9707+
auto *ImportedE1 = Import(FromE1, Lang_CXX11);
9708+
ASSERT_TRUE(ImportedE1);
9709+
EXPECT_EQ(ImportedE1, ToE1);
9710+
auto *FromE3 = FirstDeclMatcher<EnumDecl>().match(
9711+
FromTU, enumDecl(hasEnumConstName("E3")));
9712+
auto *ImportedE3 = Import(FromE3, Lang_CXX11);
9713+
ASSERT_TRUE(ImportedE3);
9714+
EXPECT_EQ(ImportedE3, ToE3);
96969715
}
96979716

96989717
INSTANTIATE_TEST_SUITE_P(ParameterizedTests, ASTImporterLookupTableTest,

0 commit comments

Comments
 (0)