https://github.com/Michael137 updated https://github.com/llvm/llvm-project/pull/77596
>From 5c439cb2bb04ce19c198d8a7120dc369d567f210 Mon Sep 17 00:00:00 2001 From: Michael Buch <michaelbuc...@gmail.com> Date: Wed, 10 Jan 2024 12:30:53 +0000 Subject: [PATCH 1/2] [lldb][ClangASTImporter][NFC] Remove redundant do-while loop This seems to have always been a redundant do-while since its introduction in `2e93a2ad2148d19337bf5f9885e46e3c00e8ab82`. --- .../Clang/ClangASTImporter.cpp | 52 +++++++++---------- 1 file changed, 25 insertions(+), 27 deletions(-) diff --git a/lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp b/lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp index 5d109feb3d39fa..d1e276f38506e7 100644 --- a/lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp +++ b/lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp @@ -943,44 +943,42 @@ void ClangASTImporter::ASTImporterDelegate::ImportDefinitionTo( // the class was originally sourced from symbols. if (ObjCInterfaceDecl *to_objc_interface = dyn_cast<ObjCInterfaceDecl>(to)) { - do { - ObjCInterfaceDecl *to_superclass = to_objc_interface->getSuperClass(); + ObjCInterfaceDecl *to_superclass = to_objc_interface->getSuperClass(); - if (to_superclass) - break; // we're not going to override it if it's set + if (to_superclass) + return; // we're not going to override it if it's set - ObjCInterfaceDecl *from_objc_interface = - dyn_cast<ObjCInterfaceDecl>(from); + ObjCInterfaceDecl *from_objc_interface = + dyn_cast<ObjCInterfaceDecl>(from); - if (!from_objc_interface) - break; + if (!from_objc_interface) + return; - ObjCInterfaceDecl *from_superclass = from_objc_interface->getSuperClass(); + ObjCInterfaceDecl *from_superclass = from_objc_interface->getSuperClass(); - if (!from_superclass) - break; + if (!from_superclass) + return; - llvm::Expected<Decl *> imported_from_superclass_decl = - Import(from_superclass); + llvm::Expected<Decl *> imported_from_superclass_decl = + Import(from_superclass); - if (!imported_from_superclass_decl) { - LLDB_LOG_ERROR(log, imported_from_superclass_decl.takeError(), - "Couldn't import decl: {0}"); - break; - } + if (!imported_from_superclass_decl) { + LLDB_LOG_ERROR(log, imported_from_superclass_decl.takeError(), + "Couldn't import decl: {0}"); + return; + } - ObjCInterfaceDecl *imported_from_superclass = - dyn_cast<ObjCInterfaceDecl>(*imported_from_superclass_decl); + ObjCInterfaceDecl *imported_from_superclass = + dyn_cast<ObjCInterfaceDecl>(*imported_from_superclass_decl); - if (!imported_from_superclass) - break; + if (!imported_from_superclass) + return; - if (!to_objc_interface->hasDefinition()) - to_objc_interface->startDefinition(); + if (!to_objc_interface->hasDefinition()) + to_objc_interface->startDefinition(); - to_objc_interface->setSuperClass(m_source_ctx->getTrivialTypeSourceInfo( - m_source_ctx->getObjCInterfaceType(imported_from_superclass))); - } while (false); + to_objc_interface->setSuperClass(m_source_ctx->getTrivialTypeSourceInfo( + m_source_ctx->getObjCInterfaceType(imported_from_superclass))); } } >From 66fa987ae0370f2284007decd9c7a54fff5f85d6 Mon Sep 17 00:00:00 2001 From: Michael Buch <michaelbuc...@gmail.com> Date: Wed, 10 Jan 2024 13:04:59 +0000 Subject: [PATCH 2/2] fixup! clang-format --- .../source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp b/lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp index d1e276f38506e7..62a30c14912bc9 100644 --- a/lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp +++ b/lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp @@ -948,8 +948,7 @@ void ClangASTImporter::ASTImporterDelegate::ImportDefinitionTo( if (to_superclass) return; // we're not going to override it if it's set - ObjCInterfaceDecl *from_objc_interface = - dyn_cast<ObjCInterfaceDecl>(from); + ObjCInterfaceDecl *from_objc_interface = dyn_cast<ObjCInterfaceDecl>(from); if (!from_objc_interface) return; _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits