[NFC][Lsan] Fix zero-sized array compilation error
authorVitaly Buka <vitalybuka@google.com>
Fri, 18 Sep 2020 00:42:33 +0000 (17:42 -0700)
committerVitaly Buka <vitalybuka@google.com>
Fri, 18 Sep 2020 00:59:52 +0000 (17:59 -0700)
clang/lib/Tooling/Syntax/Synthesis.cpp
compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp

index 2fe95a4..ea27395 100644 (file)
@@ -58,6 +58,7 @@ syntax::Tree *allocateTree(syntax::Arena &A, syntax::NodeKind Kind) {
   switch (Kind) {
   case syntax::NodeKind::Leaf:
     assert(false);
+    break; 
   case syntax::NodeKind::TranslationUnit:
     return new (A.getAllocator()) syntax::TranslationUnit;
   case syntax::NodeKind::UnknownExpression:
index cf21ab8..1e71d65 100644 (file)
@@ -504,13 +504,13 @@ typedef struct user regs_struct;
 #elif defined(__aarch64__)
 typedef struct user_pt_regs regs_struct;
 #define REG_SP sp
-static constexpr uptr kExtraRegs[] = {};
+static constexpr uptr kExtraRegs[] = {0};
 #define ARCH_IOVEC_FOR_GETREGSET
 
 #elif defined(__s390__)
 typedef _user_regs_struct regs_struct;
 #define REG_SP gprs[15]
-static constexpr uptr kExtraRegs[] = {};
+static constexpr uptr kExtraRegs[] = {0};
 #define ARCH_IOVEC_FOR_GETREGSET
 
 #else
@@ -578,7 +578,7 @@ PtraceRegistersStatus SuspendedThreadsListLinux::GetRegistersAndSP(
   if (!fail) {
     // Accept the first available and do not report errors.
     for (uptr regs : kExtraRegs)
-      if (append(regs))
+      if (regs && append(regs))
         break;
   }
 #else