diff options
author | Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> | 2024-05-03 19:49:44 +0200 |
---|---|---|
committer | P-E-P <32375388+P-E-P@users.noreply.github.com> | 2024-05-17 15:28:30 +0000 |
commit | d1dad032ded0c9c9cace45d0211ccd68ec6af755 (patch) | |
tree | 2e4c511099bf88ff7c8c93388f0ccdaf2318b827 | |
parent | 478c227c864f108a49ffa9bc695c0413e159c15c (diff) | |
download | gcc-d1dad032ded0c9c9cace45d0211ccd68ec6af755.zip gcc-d1dad032ded0c9c9cace45d0211ccd68ec6af755.tar.gz gcc-d1dad032ded0c9c9cace45d0211ccd68ec6af755.tar.bz2 |
Change lookup_hir_path_expr_seg return type
Make the function's return type optional in order to differentiate
between null pointers and missing value.
gcc/rust/ChangeLog:
* util/rust-hir-map.cc (Mappings::insert_hir_path_expr_seg): Change
call site to accomodate the new return type.
(Mappings::lookup_hir_path_expr_seg): Wrap the function's return type
with an optional.
* 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.cc | 6 | ||||
-rw-r--r-- | gcc/rust/util/rust-hir-map.h | 2 |
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 cfd2a58..02e24be 100644 --- a/gcc/rust/util/rust-hir-map.cc +++ b/gcc/rust/util/rust-hir-map.cc @@ -550,19 +550,19 @@ void Mappings::insert_hir_path_expr_seg (HIR::PathExprSegment *expr) { auto id = expr->get_mappings ().get_hirid (); - rust_assert (lookup_hir_path_expr_seg (id) == nullptr); + rust_assert (!lookup_hir_path_expr_seg (id)); hirPathSegMappings[id] = expr; insert_node_to_hir (expr->get_mappings ().get_nodeid (), id); insert_location (id, expr->get_locus ()); } -HIR::PathExprSegment * +tl::optional<HIR::PathExprSegment *> Mappings::lookup_hir_path_expr_seg (HirId id) { auto it = hirPathSegMappings.find (id); if (it == hirPathSegMappings.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 6544935..dbfc8c0 100644 --- a/gcc/rust/util/rust-hir-map.h +++ b/gcc/rust/util/rust-hir-map.h @@ -149,7 +149,7 @@ public: tl::optional<HIR::Expr *> lookup_hir_expr (HirId id); void insert_hir_path_expr_seg (HIR::PathExprSegment *expr); - HIR::PathExprSegment *lookup_hir_path_expr_seg (HirId id); + tl::optional<HIR::PathExprSegment *> lookup_hir_path_expr_seg (HirId id); void insert_hir_generic_param (HIR::GenericParam *expr); HIR::GenericParam *lookup_hir_generic_param (HirId id); |