Skip to content

Commit fef866e

Browse files
committed
Fix required classes
1 parent 6ace5f2 commit fef866e

1 file changed

Lines changed: 5 additions & 3 deletions

File tree

‎cpp2rust/rule_preprocessing/cpp_rule_indexer.cpp‎

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,9 +81,11 @@ void AddRequiredClasses(clang::QualType type,
8181
return;
8282
}
8383
if (auto alias = type->getAs<clang::TypedefType>()) {
84-
auto qualifier = alias->getQualifier();
85-
if (qualifier.getKind() == clang::NestedNameSpecifier::Kind::Type) {
86-
AddRequiredClasses(clang::QualType(qualifier.getAsType(), 0), required);
84+
if (auto record = llvm::dyn_cast<clang::RecordDecl>(
85+
alias->getDecl()->getDeclContext())) {
86+
if (auto key = RulesLoader::ClassKey(record); !key.empty()) {
87+
required.insert(key);
88+
}
8789
}
8890
}
8991
const clang::NamedDecl *decl = type->getAsTagDecl();

0 commit comments

Comments
 (0)