Skip to content

Commit e35cc2d

Browse files
committed
[lldb][TypeSystemClang][NFC] Clean up TypeSystemClang::DeclGetMangledName to LLVM-style
Will make upcoming changes in this area easier to read.
1 parent 7914464 commit e35cc2d

File tree

1 file changed

+29
-26
lines changed

1 file changed

+29
-26
lines changed

lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp

Lines changed: 29 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -9164,33 +9164,36 @@ ConstString TypeSystemClang::DeclGetName(void *opaque_decl) {
91649164
}
91659165

91669166
ConstString TypeSystemClang::DeclGetMangledName(void *opaque_decl) {
9167-
if (opaque_decl) {
9168-
clang::NamedDecl *nd =
9169-
llvm::dyn_cast<clang::NamedDecl>((clang::Decl *)opaque_decl);
9170-
if (nd != nullptr && !llvm::isa<clang::ObjCMethodDecl>(nd)) {
9171-
clang::MangleContext *mc = getMangleContext();
9172-
if (mc && mc->shouldMangleCXXName(nd)) {
9173-
llvm::SmallVector<char, 1024> buf;
9174-
llvm::raw_svector_ostream llvm_ostrm(buf);
9175-
if (llvm::isa<clang::CXXConstructorDecl>(nd)) {
9176-
mc->mangleName(
9177-
clang::GlobalDecl(llvm::dyn_cast<clang::CXXConstructorDecl>(nd),
9178-
Ctor_Complete),
9179-
llvm_ostrm);
9180-
} else if (llvm::isa<clang::CXXDestructorDecl>(nd)) {
9181-
mc->mangleName(
9182-
clang::GlobalDecl(llvm::dyn_cast<clang::CXXDestructorDecl>(nd),
9183-
Dtor_Complete),
9184-
llvm_ostrm);
9185-
} else {
9186-
mc->mangleName(nd, llvm_ostrm);
9187-
}
9188-
if (buf.size() > 0)
9189-
return ConstString(buf.data(), buf.size());
9190-
}
9191-
}
9167+
clang::NamedDecl *nd = llvm::dyn_cast_or_null<clang::NamedDecl>(
9168+
static_cast<clang::Decl *>(opaque_decl));
9169+
9170+
if (!nd || llvm::isa<clang::ObjCMethodDecl>(nd))
9171+
return {};
9172+
9173+
clang::MangleContext *mc = getMangleContext();
9174+
if (!mc || !mc->shouldMangleCXXName(nd))
9175+
return {};
9176+
9177+
llvm::SmallVector<char, 1024> buf;
9178+
llvm::raw_svector_ostream llvm_ostrm(buf);
9179+
if (llvm::isa<clang::CXXConstructorDecl>(nd)) {
9180+
mc->mangleName(
9181+
clang::GlobalDecl(llvm::dyn_cast<clang::CXXConstructorDecl>(nd),
9182+
Ctor_Complete),
9183+
llvm_ostrm);
9184+
} else if (llvm::isa<clang::CXXDestructorDecl>(nd)) {
9185+
mc->mangleName(
9186+
clang::GlobalDecl(llvm::dyn_cast<clang::CXXDestructorDecl>(nd),
9187+
Dtor_Complete),
9188+
llvm_ostrm);
9189+
} else {
9190+
mc->mangleName(nd, llvm_ostrm);
91929191
}
9193-
return ConstString();
9192+
9193+
if (buf.size() > 0)
9194+
return ConstString(buf.data(), buf.size());
9195+
9196+
return {};
91949197
}
91959198

91969199
CompilerDeclContext TypeSystemClang::DeclGetDeclContext(void *opaque_decl) {

0 commit comments

Comments
 (0)