aboutsummaryrefslogtreecommitdiff
path: root/gcc/rust
diff options
context:
space:
mode:
authorPierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>2024-04-24 23:21:57 +0200
committerArthur Cohen <arthur.cohen@embecosm.com>2025-03-17 16:35:23 +0100
commit97f03ba35810fcbb3a4e05128d323ba655d74acf (patch)
treebda1a943a113c99fe7519faced14c9e086e5a0ed /gcc/rust
parentaf34aa18c6fa1f9ab88e63ce1ec03e1c5aaed69f (diff)
downloadgcc-97f03ba35810fcbb3a4e05128d323ba655d74acf.zip
gcc-97f03ba35810fcbb3a4e05128d323ba655d74acf.tar.gz
gcc-97f03ba35810fcbb3a4e05128d323ba655d74acf.tar.bz2
gccrs: Change return type of resolve_nodeid_to_stmt
Change the return type to an optional. gcc/rust/ChangeLog: * util/rust-hir-map.cc (Mappings::resolve_nodeid_to_stmt): Change the return type and remove pointer out argument. * util/rust-hir-map.h: Update function prototype. Signed-off-by: Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
Diffstat (limited to 'gcc/rust')
-rw-r--r--gcc/rust/util/rust-hir-map.cc10
-rw-r--r--gcc/rust/util/rust-hir-map.h2
2 files changed, 5 insertions, 7 deletions
diff --git a/gcc/rust/util/rust-hir-map.cc b/gcc/rust/util/rust-hir-map.cc
index b8d3937..57a7667 100644
--- a/gcc/rust/util/rust-hir-map.cc
+++ b/gcc/rust/util/rust-hir-map.cc
@@ -805,17 +805,15 @@ Mappings::lookup_location (HirId id)
return it->second;
}
-bool
-Mappings::resolve_nodeid_to_stmt (NodeId id, HIR::Stmt **stmt)
+tl::optional<HIR::Stmt *>
+Mappings::resolve_nodeid_to_stmt (NodeId id)
{
auto it = nodeIdToHirMappings.find (id);
if (it == nodeIdToHirMappings.end ())
- return false;
+ return tl::nullopt;
HirId resolved = it->second;
- auto resolved_stmt = lookup_hir_stmt (resolved);
- *stmt = resolved_stmt;
- return resolved_stmt != nullptr;
+ return {lookup_hir_stmt (resolved)};
}
void
diff --git a/gcc/rust/util/rust-hir-map.h b/gcc/rust/util/rust-hir-map.h
index 6fd0e7a..6ed3bee 100644
--- a/gcc/rust/util/rust-hir-map.h
+++ b/gcc/rust/util/rust-hir-map.h
@@ -176,7 +176,7 @@ public:
void insert_location (HirId id, location_t locus);
location_t lookup_location (HirId id);
- bool resolve_nodeid_to_stmt (NodeId id, HIR::Stmt **stmt);
+ tl::optional<HIR::Stmt *> resolve_nodeid_to_stmt (NodeId id);
std::set<HirId> &get_hirids_within_crate (CrateNum crate)
{