]> granicus.if.org Git - clang/commitdiff
Fix uninitialized bool flag access in SanitizerArgs parser
authorAlexey Samsonov <samsonov@google.com>
Wed, 16 Jan 2013 11:34:36 +0000 (11:34 +0000)
committerAlexey Samsonov <samsonov@google.com>
Wed, 16 Jan 2013 11:34:36 +0000 (11:34 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172605 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Driver/Tools.cpp
test/Driver/fsanitize.c

index 547d45c2d8f67151324b90efbc16a7ae356dcd84..30562f1ba3961e084ad9991d8b3a9462641db0a0 100644 (file)
@@ -1442,8 +1442,8 @@ static bool UseRelaxAll(Compilation &C, const ArgList &Args) {
     RelaxDefault);
 }
 
-SanitizerArgs::SanitizerArgs(const Driver &D, const ArgList &Args) {
-  Kind = 0;
+SanitizerArgs::SanitizerArgs(const Driver &D, const ArgList &Args)
+    : Kind(0), BlacklistFile(""), MsanTrackOrigins(false) {
 
   for (ArgList::const_iterator I = Args.begin(), E = Args.end(); I != E; ++I) {
     unsigned Add, Remove;
index dc7c8902fa896616a0b0b202a171f7893d337c03..857ae321ee44fecaea05c85a6276cdc5138f4c3b 100644 (file)
@@ -36,6 +36,9 @@
 // RUN: %clang -target x86_64-linux-gnu -fsanitize-memory-track-origins -pie %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-ONLY-TRACK-ORIGINS
 // CHECK-ONLY-TRACK-ORIGINS: warning: argument unused during compilation: '-fsanitize-memory-track-origins'
 
+// RUN: %clang -target x86_64-linux-gnu -fsanitize=address %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-EXTRA-TRACK-ORIGINS
+// CHECK-NO-EXTRA-TRACK-ORIGINS-NOT: "-fsanitize-memory-track-origins"
+
 // RUN: %clang -target x86_64-linux-gnu -fsanitize=address -fsanitize=alignment -fsanitize=vptr -fno-sanitize=vptr %s -### 2>&1
 // OK