diff options
author | Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> | 2023-04-07 13:52:04 +0200 |
---|---|---|
committer | Arthur Cohen <arthur.cohen@embecosm.com> | 2024-01-16 18:34:10 +0100 |
commit | a2605b5a49d109370a21ba57c545cecc8cd9694d (patch) | |
tree | c78bdfa912a4f58be3b3ac074ba2bc6f99763cf0 /libgrust | |
parent | 86c070baa8612e5ac2c8a7ccfb03d50e940a4858 (diff) | |
download | gcc-a2605b5a49d109370a21ba57c545cecc8cd9694d.zip gcc-a2605b5a49d109370a21ba57c545cecc8cd9694d.tar.gz gcc-a2605b5a49d109370a21ba57c545cecc8cd9694d.tar.bz2 |
gccrs: libproc_macro: Drop function shall take a mutable
The rust API requires a mut reference, hence having a mutable pointer
seems to match better. Furthermore the implementation is now modifying
the struct in order to set the size to 0 instead of simply freeing the
data, this will allow us to easily identify mistaken manual call to this
function.
libgrust/ChangeLog:
* libproc_macro/rust/bridge/literal.rs: Make the
pointer mutable.
Signed-off-by: Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
Diffstat (limited to 'libgrust')
-rw-r--r-- | libgrust/libproc_macro/rust/bridge/literal.rs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libgrust/libproc_macro/rust/bridge/literal.rs b/libgrust/libproc_macro/rust/bridge/literal.rs index 080cc1b..740ed1f 100644 --- a/libgrust/libproc_macro/rust/bridge/literal.rs +++ b/libgrust/libproc_macro/rust/bridge/literal.rs @@ -6,7 +6,7 @@ use std::str::FromStr; use LexError; extern "C" { - fn Literal__drop(literal: *const Literal); + fn Literal__drop(literal: *mut Literal); fn Literal__string(str: *const c_uchar, len: u64) -> Literal; fn Literal__byte_string(bytes: *const u8, len: u64) -> Literal; fn Literal__from_string(str: *const c_uchar, len: u64, lit: *mut Literal) -> bool; @@ -230,7 +230,7 @@ impl Drop for Literal { fn drop(&mut self) { match self { Literal::String { .. } | Literal::ByteString { .. } => unsafe { - Literal__drop(self as *const Literal) + Literal__drop(self as *mut Literal) }, _ => (), } |