[clang] 024c3d0 - [clang][Interp][NFC] Refactor Program::getGlobal()
Timm Bäder via cfe-commits
cfe-commits at lists.llvm.org
Mon Apr 22 06:28:41 PDT 2024
Author: Timm Bäder
Date: 2024-04-22T15:28:00+02:00
New Revision: 024c3d0c079fd9297725c35082316f2ca29c9526
URL: https://github.com/llvm/llvm-project/commit/024c3d0c079fd9297725c35082316f2ca29c9526
DIFF: https://github.com/llvm/llvm-project/commit/024c3d0c079fd9297725c35082316f2ca29c9526.diff
LOG: [clang][Interp][NFC] Refactor Program::getGlobal()
Move the iterator declarations into the if statements and return
std::nullopt explicitly.
Added:
Modified:
clang/lib/AST/Interp/Program.cpp
Removed:
################################################################################
diff --git a/clang/lib/AST/Interp/Program.cpp b/clang/lib/AST/Interp/Program.cpp
index 2c8c6781b34833..7bf842f1a9404b 100644
--- a/clang/lib/AST/Interp/Program.cpp
+++ b/clang/lib/AST/Interp/Program.cpp
@@ -108,27 +108,23 @@ Pointer Program::getPtrGlobal(unsigned Idx) const {
}
std::optional<unsigned> Program::getGlobal(const ValueDecl *VD) {
- auto It = GlobalIndices.find(VD);
- if (It != GlobalIndices.end())
+ if (auto It = GlobalIndices.find(VD); It != GlobalIndices.end())
return It->second;
// Find any previous declarations which were already evaluated.
std::optional<unsigned> Index;
- for (const Decl *P = VD; P; P = P->getPreviousDecl()) {
- auto It = GlobalIndices.find(P);
- if (It != GlobalIndices.end()) {
+ for (const Decl *P = VD->getPreviousDecl(); P; P = P->getPreviousDecl()) {
+ if (auto It = GlobalIndices.find(P); It != GlobalIndices.end()) {
Index = It->second;
break;
}
}
// Map the decl to the existing index.
- if (Index) {
+ if (Index)
GlobalIndices[VD] = *Index;
- return std::nullopt;
- }
- return Index;
+ return std::nullopt;
}
std::optional<unsigned> Program::getOrCreateGlobal(const ValueDecl *VD,
More information about the cfe-commits
mailing list