summaryrefslogtreecommitdiff
path: root/libgrust/libproc_macro/proc_macro.cc
diff options
context:
space:
mode:
authorPierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>2023-07-27 16:21:25 +0200
committerArthur Cohen <arthur.cohen@embecosm.com>2024-01-16 18:56:02 +0100
commit0680907b3b19273b908c91306932abbf82f85cce (patch)
treef49ce96a39b9455891185efed2629703523a9f1f /libgrust/libproc_macro/proc_macro.cc
parentff773b9030e443dbea0b4357bd10b480ff39c987 (diff)
gccrs: proc_macro: Add literal_from_string callback
The function to get a literal from a string missed an implementation. It did require a conversion function to achieve it, now that callback system has been merged this function can be easily implemented. gcc/rust/ChangeLog: * expand/rust-proc-macro.cc (literal_from_string): Add callback function. (load_macros_array): Likewise. libgrust/ChangeLog: * libproc_macro/literal.cc (Literal__from_string): Add implementation with call to constructor. (Literal::make_literal): Add new constructor which calls the callback. * libproc_macro/literal.h: Add new constructor's prototype. * libproc_macro/proc_macro.cc (bridge_is_available): Change symbol name to match convention. * libproc_macro/registration.h: Add lit_from_str symbol. * libproc_macro/tokenstream.cc (TokenStream::make_tokenstream): Change symbol name to disambiguate with literal from string. Signed-off-by: Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
Diffstat (limited to 'libgrust/libproc_macro/proc_macro.cc')
-rw-r--r--libgrust/libproc_macro/proc_macro.cc8
1 files changed, 4 insertions, 4 deletions
diff --git a/libgrust/libproc_macro/proc_macro.cc b/libgrust/libproc_macro/proc_macro.cc
index 293fc957038..0490673b656 100644
--- a/libgrust/libproc_macro/proc_macro.cc
+++ b/libgrust/libproc_macro/proc_macro.cc
@@ -53,12 +53,12 @@ Procmacro::make_bang (const char *name, BangMacro macro)
extern "C" bool
bridge_is_available ()
{
- return __gccrs_proc_macro_is_available_fn
- == ProcMacro::BridgeState::Available;
+ return __gccrs_proc_macro_is_available_ == ProcMacro::BridgeState::Available;
}
} // namespace ProcMacro
-ProcMacro::from_str_function_t __gccrs_proc_macro_from_str_fn = nullptr;
-ProcMacro::BridgeState __gccrs_proc_macro_is_available_fn
+ProcMacro::ts_from_str_fn_t __gccrs_proc_macro_ts_from_str_ = nullptr;
+ProcMacro::lit_from_str_fn_t __gccrs_proc_macro_lit_from_str_ = nullptr;
+ProcMacro::BridgeState __gccrs_proc_macro_is_available_
= ProcMacro::BridgeState::Unavailable;