diff options
author | Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> | 2024-05-04 03:21:27 +0200 |
---|---|---|
committer | Arthur Cohen <arthur.cohen@embecosm.com> | 2025-03-17 16:35:26 +0100 |
commit | 1d7d56aab77fa53e3cba8a885208a07772d91a76 (patch) | |
tree | 3f30d7d20875a3da3bd52a732ed8bdfaefa4de04 /gcc/rust/util | |
parent | e4778eceb42e914e4d202f851cd71f426f19ef7e (diff) | |
download | gcc-1d7d56aab77fa53e3cba8a885208a07772d91a76.zip gcc-1d7d56aab77fa53e3cba8a885208a07772d91a76.tar.gz gcc-1d7d56aab77fa53e3cba8a885208a07772d91a76.tar.bz2 |
gccrs: Change lookup_macro_invocation's return type
Wrap the function's return type within an optional and remove the out
reference argument.
gcc/rust/ChangeLog:
* expand/rust-macro-expand.cc (MacroExpander::expand_invoc): Adapt
the function call to match its new prototype.
* resolve/rust-early-name-resolver-2.0.cc (Early::insert_once):
Likewise.
(Early::visit): Likewise.
* resolve/rust-early-name-resolver.cc (EarlyNameResolver::visit):
Likewise.
* util/rust-hir-map.cc (Mappings::lookup_macro_invocation): 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.cc | 10 | ||||
-rw-r--r-- | gcc/rust/util/rust-hir-map.h | 4 |
2 files changed, 6 insertions, 8 deletions
diff --git a/gcc/rust/util/rust-hir-map.cc b/gcc/rust/util/rust-hir-map.cc index f6df55f..3b72119 100644 --- a/gcc/rust/util/rust-hir-map.cc +++ b/gcc/rust/util/rust-hir-map.cc @@ -897,16 +897,14 @@ Mappings::insert_macro_invocation (AST::MacroInvocation &invoc, macroInvocations[invoc.get_macro_node_id ()] = def; } -bool -Mappings::lookup_macro_invocation (AST::MacroInvocation &invoc, - AST::MacroRulesDefinition **def) +tl::optional<AST::MacroRulesDefinition *> +Mappings::lookup_macro_invocation (AST::MacroInvocation &invoc) { auto it = macroInvocations.find (invoc.get_macro_node_id ()); if (it == macroInvocations.end ()) - return false; + return tl::nullopt; - *def = it->second; - return true; + return it->second; } void diff --git a/gcc/rust/util/rust-hir-map.h b/gcc/rust/util/rust-hir-map.h index 3747804..d80a15e 100644 --- a/gcc/rust/util/rust-hir-map.h +++ b/gcc/rust/util/rust-hir-map.h @@ -282,8 +282,8 @@ public: void insert_macro_invocation (AST::MacroInvocation &invoc, AST::MacroRulesDefinition *def); - bool lookup_macro_invocation (AST::MacroInvocation &invoc, - AST::MacroRulesDefinition **def); + tl::optional<AST::MacroRulesDefinition *> + lookup_macro_invocation (AST::MacroInvocation &invoc); void insert_exported_macro (AST::MacroRulesDefinition &def); std::vector<NodeId> &get_exported_macros (); |