aboutsummaryrefslogtreecommitdiff
path: root/gcc/rust/util
diff options
context:
space:
mode:
authorPierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>2024-05-03 20:55:01 +0200
committerArthur Cohen <arthur.cohen@embecosm.com>2025-03-17 16:35:26 +0100
commit19ed0a94fa485fbe9c388713c4cdb2bf633a1b86 (patch)
tree573335b38f750fd2757f5fd6713c0986eeb8b7d8 /gcc/rust/util
parent058d76b9a84d70565743bec6513f1a86293ced2e (diff)
downloadgcc-19ed0a94fa485fbe9c388713c4cdb2bf633a1b86.zip
gcc-19ed0a94fa485fbe9c388713c4cdb2bf633a1b86.tar.gz
gcc-19ed0a94fa485fbe9c388713c4cdb2bf633a1b86.tar.bz2
gccrs: Change lookup_hir_pattern return type
Wrap the function's return type within an optional in order to differentiate between a null pointer and a missing value. gcc/rust/ChangeLog: * util/rust-hir-map.cc (Mappings::insert_hir_pattern): Change call site in order to accomodate new return type. (Mappings::lookup_hir_pattern): Change the function's return type. * util/rust-hir-map.h: Update the function's prototype. Signed-off-by: Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
Diffstat (limited to 'gcc/rust/util')
-rw-r--r--gcc/rust/util/rust-hir-map.cc6
-rw-r--r--gcc/rust/util/rust-hir-map.h2
2 files changed, 4 insertions, 4 deletions
diff --git a/gcc/rust/util/rust-hir-map.cc b/gcc/rust/util/rust-hir-map.cc
index d1f55a3..2ac6141 100644
--- a/gcc/rust/util/rust-hir-map.cc
+++ b/gcc/rust/util/rust-hir-map.cc
@@ -692,18 +692,18 @@ void
Mappings::insert_hir_pattern (HIR::Pattern *pattern)
{
auto id = pattern->get_mappings ().get_hirid ();
- rust_assert (lookup_hir_pattern (id) == nullptr);
+ rust_assert (!lookup_hir_pattern (id));
hirPatternMappings[id] = pattern;
insert_node_to_hir (pattern->get_mappings ().get_nodeid (), id);
}
-HIR::Pattern *
+tl::optional<HIR::Pattern *>
Mappings::lookup_hir_pattern (HirId id)
{
auto it = hirPatternMappings.find (id);
if (it == hirPatternMappings.end ())
- return nullptr;
+ return tl::nullopt;
return it->second;
}
diff --git a/gcc/rust/util/rust-hir-map.h b/gcc/rust/util/rust-hir-map.h
index 740a8e6..c556d76 100644
--- a/gcc/rust/util/rust-hir-map.h
+++ b/gcc/rust/util/rust-hir-map.h
@@ -170,7 +170,7 @@ public:
tl::optional<HIR::StructExprField *> lookup_hir_struct_field (HirId id);
void insert_hir_pattern (HIR::Pattern *pattern);
- HIR::Pattern *lookup_hir_pattern (HirId id);
+ tl::optional<HIR::Pattern *> lookup_hir_pattern (HirId id);
void walk_local_defids_for_crate (CrateNum crateNum,
std::function<bool (HIR::Item *)> cb);