From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1643) id B4A44385773B; Tue, 2 May 2023 07:09:42 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org B4A44385773B DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1683011382; bh=QPmrtq8e9o6OXCVXX2aIaY8hGDBbk8b2DtI82/ZwqDA=; h=From:To:Subject:Date:From; b=v65ewf9fT7JWoFKEC6gBnWA9TdTKRpAcfq2WF+QlW4JI2OaKM8I+iHwqlyFqBdlT0 p/D3Fsy6tP3cgBjRcx9J2DS35+J+OcliNmxjj19eHLZaxewLGs1b+USJmPR+Q4UNqQ EEVwUqFp/619wiwNqwO1xxHupZfDduaqZcgy2Hx4= Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Thomas Schwinge To: gcc-cvs@gcc.gnu.org Subject: [gcc/devel/rust/master] libproc_macro: Fix literal drop function X-Act-Checkin: gcc X-Git-Author: Pierre-Emmanuel Patry X-Git-Refname: refs/heads/devel/rust/master X-Git-Oldrev: bfc2f58e1ed3505cff9e4b18343afb985972afcf X-Git-Newrev: aa108c21644dfa793a39b59851531f5edf4d2196 Message-Id: <20230502070942.B4A44385773B@sourceware.org> Date: Tue, 2 May 2023 07:09:42 +0000 (GMT) List-Id: https://gcc.gnu.org/g:aa108c21644dfa793a39b59851531f5edf4d2196 commit aa108c21644dfa793a39b59851531f5edf4d2196 Author: Pierre-Emmanuel Patry Date: Fri Apr 21 12:00:08 2023 +0200 libproc_macro: Fix literal drop function Fix drop function by changing the delete operator to delete[] in order to avoid undefined behaviors. ChangeLog: * libgrust/libproc_macro/literal.cc (Literal::drop): Change delete operator to delete[]. Signed-off-by: Pierre-Emmanuel Patry 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: