[gcc r14-7510] gccrs: libproc_macro: Fix literal drop function

Arthur Cohen cohenarthur@gcc.gnu.org
Tue Jan 16 17:40:10 GMT 2024


https://gcc.gnu.org/g:269870741990b742d3a9fa57af8e0ae709e68bbf

commit r14-7510-g269870741990b742d3a9fa57af8e0ae709e68bbf
Author: Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
Date:   Fri Apr 21 12:00:08 2023 +0200

    gccrs: libproc_macro: Fix literal drop function
    
    Fix drop function by changing the delete operator to delete[] in order
    to avoid undefined behaviors.
    
    libgrust/ChangeLog:
    
            * libproc_macro/literal.cc (Literal::drop): Change
            delete operator to delete[].
    
    Signed-off-by: Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>

Diff:
---
 libgrust/libproc_macro/literal.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libgrust/libproc_macro/literal.cc b/libgrust/libproc_macro/literal.cc
index 221c57a0da5..d4977533a90 100644
--- a/libgrust/libproc_macro/literal.cc
+++ b/libgrust/libproc_macro/literal.cc
@@ -32,11 +32,11 @@ Literal::drop (Literal *lit)
   switch (lit->tag)
     {
     case STRING:
-      delete lit->payload.string_payload.data;
+      delete[] lit->payload.string_payload.data;
       lit->payload.string_payload.len = 0;
       break;
     case BYTE_STRING:
-      delete lit->payload.byte_string_payload.data;
+      delete[] lit->payload.byte_string_payload.data;
       lit->payload.byte_string_payload.size = 0;
       break;
     case CHAR:


More information about the Gcc-cvs mailing list