aboutsummaryrefslogtreecommitdiff
path: root/gcc/rust/expand/rust-macro-builtins-utility.cc
diff options
context:
space:
mode:
authorArthur Cohen <arthur.cohen@embecosm.com>2024-06-18 13:47:57 +0200
committerCohenArthur <arthur.cohen@embecosm.com>2024-06-18 12:24:32 +0000
commit7d22e900b069c5acdff8272da89b959c50dcb666 (patch)
treef8fe54ff3039a6171bc3100bfeff287ae8052e3b /gcc/rust/expand/rust-macro-builtins-utility.cc
parentfb906a41a4e911f7f0d7b506347286c7d942995e (diff)
downloadgcc-7d22e900b069c5acdff8272da89b959c50dcb666.zip
gcc-7d22e900b069c5acdff8272da89b959c50dcb666.tar.gz
gcc-7d22e900b069c5acdff8272da89b959c50dcb666.tar.bz2
expand: Switch semicolon boolean to an enum instead.
gcc/rust/ChangeLog: * ast/rust-ast-fragment.h (enum class): Add InvocKind and AsmKind enums. * ast/rust-macro.h: Switch semicolon boolean to InvocKind enum. * expand/rust-expand-visitor.cc (ExpandVisitor::visit): Likewise. * expand/rust-macro-builtins-asm.cc (MacroBuiltin::asm_handler): Likewise. (parse_asm): Likewise. * expand/rust-macro-builtins-asm.h (parse_asm): Likewise. * expand/rust-macro-builtins-format-args.cc (MacroBuiltin::format_args_handler): Likewise. * expand/rust-macro-builtins-include.cc (MacroBuiltin::include_bytes_handler): Likewise. (MacroBuiltin::include_str_handler): Likewise. (MacroBuiltin::include_handler): Likewise. * expand/rust-macro-builtins-location.cc (MacroBuiltin::file_handler): Likewise. (MacroBuiltin::column_handler): Likewise. (MacroBuiltin::line_handler): Likewise. * expand/rust-macro-builtins-log-debug.cc (MacroBuiltin::assert_handler): Likewise. * expand/rust-macro-builtins-utility.cc (MacroBuiltin::compile_error_handler): Likewise. (MacroBuiltin::concat_handler): Likewise. (MacroBuiltin::env_handler): Likewise. (MacroBuiltin::cfg_handler): Likewise. (MacroBuiltin::stringify_handler): Likewise. * expand/rust-macro-builtins.cc (format_args_maker): Likewise. (enum class): Likewise. (inline_asm_maker): Likewise. (MacroBuiltin::sorry): Likewise. (MacroBuiltin::proc_macro_builtin): Likewise. * expand/rust-macro-builtins.h: Likewise. * expand/rust-macro-expand.cc (MacroExpander::expand_decl_macro): Likewise. (MacroExpander::expand_eager_invocations): Likewise. (MacroExpander::expand_invoc): Likewise. * expand/rust-macro-expand.h (struct MacroExpander): Likewise.
Diffstat (limited to 'gcc/rust/expand/rust-macro-builtins-utility.cc')
-rw-r--r--gcc/rust/expand/rust-macro-builtins-utility.cc13
1 files changed, 8 insertions, 5 deletions
diff --git a/gcc/rust/expand/rust-macro-builtins-utility.cc b/gcc/rust/expand/rust-macro-builtins-utility.cc
index 75b8fb2..aea2902 100644
--- a/gcc/rust/expand/rust-macro-builtins-utility.cc
+++ b/gcc/rust/expand/rust-macro-builtins-utility.cc
@@ -26,7 +26,8 @@ namespace Rust {
during the compile time. */
tl::optional<AST::Fragment>
MacroBuiltin::compile_error_handler (location_t invoc_locus,
- AST::MacroInvocData &invoc, bool semicolon)
+ AST::MacroInvocData &invoc,
+ AST::InvocKind semicolon)
{
auto lit_expr
= parse_single_string_literal (BuiltinMacro::CompileError,
@@ -87,7 +88,8 @@ MacroBuiltin::compile_error_handler (location_t invoc_locus,
// Can we do that easily?
tl::optional<AST::Fragment>
MacroBuiltin::concat_handler (location_t invoc_locus,
- AST::MacroInvocData &invoc, bool semicolon)
+ AST::MacroInvocData &invoc,
+ AST::InvocKind semicolon)
{
auto invoc_token_tree = invoc.get_delim_tok_tree ();
MacroInvocLexer lex (invoc_token_tree.to_token_stream ());
@@ -152,7 +154,7 @@ MacroBuiltin::concat_handler (location_t invoc_locus,
compile time. */
tl::optional<AST::Fragment>
MacroBuiltin::env_handler (location_t invoc_locus, AST::MacroInvocData &invoc,
- bool semicolon)
+ AST::InvocKind semicolon)
{
auto invoc_token_tree = invoc.get_delim_tok_tree ();
MacroInvocLexer lex (invoc_token_tree.to_token_stream ());
@@ -226,7 +228,7 @@ MacroBuiltin::env_handler (location_t invoc_locus, AST::MacroInvocData &invoc,
tl::optional<AST::Fragment>
MacroBuiltin::cfg_handler (location_t invoc_locus, AST::MacroInvocData &invoc,
- bool semicolon)
+ AST::InvocKind semicolon)
{
// only parse if not already parsed
if (!invoc.is_parsed ())
@@ -265,7 +267,8 @@ MacroBuiltin::cfg_handler (location_t invoc_locus, AST::MacroInvocData &invoc,
tl::optional<AST::Fragment>
MacroBuiltin::stringify_handler (location_t invoc_locus,
- AST::MacroInvocData &invoc, bool semicolon)
+ AST::MacroInvocData &invoc,
+ AST::InvocKind semicolon)
{
std::string content;
auto invoc_token_tree = invoc.get_delim_tok_tree ();