[aarch64] Avoid initializers for VLAs
authorRoland McGrath <mcgrathr@google.com>
Thu, 9 Feb 2023 18:47:17 +0000 (10:47 -0800)
committerRoland McGrath <mcgrathr@google.com>
Thu, 9 Feb 2023 18:56:44 +0000 (10:56 -0800)
Clang doesn't accept initializer syntax for variable-length
arrays in C. Just use memset instead.

gdb/aarch64-linux-nat.c

index e4158236db20d4a4dc925c029fd5e171c24540b2..ecb2eeb954010333b619bc5da2527f64020a57c3 100644 (file)
@@ -56,6 +56,8 @@
 
 #include "nat/aarch64-mte-linux-ptrace.h"
 
+#include <string.h>
+
 #ifndef TRAP_HWBKPT
 #define TRAP_HWBKPT 0x0004
 #endif
@@ -445,7 +447,9 @@ fetch_tlsregs_from_thread (struct regcache *regcache)
   gdb_assert (regno != -1);
   gdb_assert (tdep->tls_register_count > 0);
 
-  uint64_t tpidrs[tdep->tls_register_count] = { 0 };
+  uint64_t tpidrs[tdep->tls_register_count];
+  memset(tpidrs, 0, sizeof(tpidrs));
+
   struct iovec iovec;
   iovec.iov_base = tpidrs;
   iovec.iov_len = sizeof (tpidrs);
@@ -471,7 +475,8 @@ store_tlsregs_to_thread (struct regcache *regcache)
   gdb_assert (regno != -1);
   gdb_assert (tdep->tls_register_count > 0);
 
-  uint64_t tpidrs[tdep->tls_register_count] = { 0 };
+  uint64_t tpidrs[tdep->tls_register_count];
+  memset(tpidrs, 0, sizeof(tpidrs));
 
   for (int i = 0; i < tdep->tls_register_count; i++)
     {