Skip to content

Commit 75424e6

Browse files
badumbatishCohenArthur
authored andcommitted
Fix small FixMe task in rust macro builtins
gcc/rust/ChangeLog: * expand/rust-macro-builtins.cc: Change BuiltinMacro in builtin_macro_from_string to tl::optional<> * expand/rust-macro-builtins.h (enum class): Change BuiltinMacro in builtin_macro_from_string to tl::optional<> * resolve/rust-early-name-resolver.cc (EarlyNameResolver::visit): Resolved wrong type dependency of builtin_macro_from_string Signed-off-by: jjasmine <tanghocle456@gmail.com>
1 parent 4ef924f commit 75424e6

File tree

3 files changed

+3
-4
lines changed

3 files changed

+3
-4
lines changed

gcc/rust/expand/rust-macro-builtins.cc

+1-2
Original file line numberDiff line numberDiff line change
@@ -126,8 +126,7 @@ std::unordered_map<std::string, AST::MacroTranscriberFunc>
126126
{"Hash", MacroBuiltin::proc_macro_builtin},
127127
};
128128

129-
// FIXME: This should return an tl::optional
130-
BuiltinMacro
129+
tl::optional<BuiltinMacro>
131130
builtin_macro_from_string (const std::string &identifier)
132131
{
133132
auto macro = MacroBuiltin::builtins.lookup (identifier);

gcc/rust/expand/rust-macro-builtins.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ enum class BuiltinMacro
7575
Hash,
7676
};
7777

78-
BuiltinMacro
78+
tl::optional<BuiltinMacro>
7979
builtin_macro_from_string (const std::string &identifier);
8080

8181
/**

gcc/rust/resolve/rust-early-name-resolver.cc

+1-1
Original file line numberDiff line numberDiff line change
@@ -497,7 +497,7 @@ EarlyNameResolver::visit (AST::MacroInvocation &invoc)
497497
{
498498
auto builtin_kind
499499
= builtin_macro_from_string (rules_def->get_rule_name ().as_string ());
500-
invoc.map_to_builtin (builtin_kind);
500+
invoc.map_to_builtin (builtin_kind.value ());
501501
}
502502

503503
auto attributes = rules_def->get_outer_attrs ();

0 commit comments

Comments
 (0)