aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>2024-05-03 20:48:10 +0200
committerP-E-P <32375388+P-E-P@users.noreply.github.com>2024-05-17 15:28:30 +0000
commite956f3a7bbf0d1e31d15bc46bd3451172a9b8869 (patch)
tree919bcbc5e6b6f0ef11361237c512a34180b25dce
parent1d8efec4f7b85e8d73eebe24a4667c702b7fb6f2 (diff)
downloadgcc-e956f3a7bbf0d1e31d15bc46bd3451172a9b8869.zip
gcc-e956f3a7bbf0d1e31d15bc46bd3451172a9b8869.tar.gz
gcc-e956f3a7bbf0d1e31d15bc46bd3451172a9b8869.tar.bz2
Change lookup_hir_struct_field return type
Wrap the function's return type within an optional to differentiate between a null pointer and a missing value. gcc/rust/ChangeLog: * util/rust-hir-map.cc (Mappings::insert_hir_struct_field): Change call site to accomodate new return type. (Mappings::lookup_hir_struct_field): 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>
-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 c2c75ab..1e5d322 100644
--- a/gcc/rust/util/rust-hir-map.cc
+++ b/gcc/rust/util/rust-hir-map.cc
@@ -672,18 +672,18 @@ void
Mappings::insert_hir_struct_field (HIR::StructExprField *field)
{
auto id = field->get_mappings ().get_hirid ();
- rust_assert (lookup_hir_struct_field (id) == nullptr);
+ rust_assert (!lookup_hir_struct_field (id));
hirStructFieldMappings[id] = field;
insert_node_to_hir (field->get_mappings ().get_nodeid (), id);
}
-HIR::StructExprField *
+tl::optional<HIR::StructExprField *>
Mappings::lookup_hir_struct_field (HirId id)
{
auto it = hirStructFieldMappings.find (id);
if (it == hirStructFieldMappings.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 7e1f644..d613d7f 100644
--- a/gcc/rust/util/rust-hir-map.h
+++ b/gcc/rust/util/rust-hir-map.h
@@ -167,7 +167,7 @@ public:
tl::optional<HIR::SelfParam *> lookup_hir_self_param (HirId id);
void insert_hir_struct_field (HIR::StructExprField *type);
- HIR::StructExprField *lookup_hir_struct_field (HirId id);
+ tl::optional<HIR::StructExprField *> lookup_hir_struct_field (HirId id);
void insert_hir_pattern (HIR::Pattern *pattern);
HIR::Pattern *lookup_hir_pattern (HirId id);