From 5f4499606ea6ab49bec30e83209db71e52d0b267 Mon Sep 17 00:00:00 2001 From: Kito Cheng Date: Sat, 18 Nov 2023 18:37:11 +0800 Subject: RISC-V: Fix mismatched new delete for unique_ptr gcc/ChangeLog: * config/riscv/riscv-target-attr.cc (riscv_target_attr_parser::parse_arch): Use char[] for std::unique_ptr to prevent mismatched new delete issue. (riscv_process_one_target_attr): Ditto. (riscv_process_target_attr): Ditto. --- gcc/config/riscv/riscv-target-attr.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gcc') diff --git a/gcc/config/riscv/riscv-target-attr.cc b/gcc/config/riscv/riscv-target-attr.cc index 78f259d0..c4bd99d 100644 --- a/gcc/config/riscv/riscv-target-attr.cc +++ b/gcc/config/riscv/riscv-target-attr.cc @@ -105,7 +105,7 @@ riscv_target_attr_parser::parse_arch (const char *str) { /* Parsing the extension list like "+[,+]*". */ size_t len = strlen (str); - std::unique_ptr buf (new char[len]); + std::unique_ptr buf (new char[len]); char *str_to_check = buf.get (); strcpy (str_to_check, str); const char *token = strtok_r (str_to_check, ",", &str_to_check); @@ -241,7 +241,7 @@ riscv_process_one_target_attr (char *arg_str, return false; } - std::unique_ptr buf (new char[len]); + std::unique_ptr buf (new char[len]); char *str_to_check = buf.get(); strcpy (str_to_check, arg_str); @@ -327,7 +327,7 @@ riscv_process_target_attr (tree args, location_t loc, struct gcc_options *opts) return false; } - std::unique_ptr buf (new char[len]); + std::unique_ptr buf (new char[len]); char *str_to_check = buf.get (); strcpy (str_to_check, TREE_STRING_POINTER (args)); -- cgit v1.1