From 57c8736e7dce5e63b4e1665d2c4fcf6e6ef959d0 Mon Sep 17 00:00:00 2001 From: Anna Zaks Date: Thu, 6 Jun 2013 22:32:11 +0000 Subject: [PATCH] =?UTF-8?q?[analyzer]=20Address=20Jordan=E2=80=99s=20code?= =?UTF-8?q?=20review=20for=20r183451?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183455 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/StaticAnalyzer/Core/BugReporter.cpp | 6 +++--- test/Analysis/unix-fns.c | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/StaticAnalyzer/Core/BugReporter.cpp b/lib/StaticAnalyzer/Core/BugReporter.cpp index e3f43854d6..e93bb3fce5 100644 --- a/lib/StaticAnalyzer/Core/BugReporter.cpp +++ b/lib/StaticAnalyzer/Core/BugReporter.cpp @@ -248,7 +248,7 @@ static void adjustCallLocations(PathPieces &Pieces, /// We might have pieces with invalid locations as a result of inlining Body /// Farm generated functions. static void removePiecesWithInvalidLocations(PathPieces &Pieces) { - for (PathPieces::iterator I = Pieces.begin(), E = Pieces.end(); I != E; ++I) { + for (PathPieces::iterator I = Pieces.begin(), E = Pieces.end(); I != E;) { if (PathDiagnosticCallPiece *C = dyn_cast(*I)) removePiecesWithInvalidLocations(C->path); @@ -257,10 +257,10 @@ static void removePiecesWithInvalidLocations(PathPieces &Pieces) { if (!(*I)->getLocation().isValid() || !(*I)->getLocation().asLocation().isValid()) { - Pieces.erase(I); + I = Pieces.erase(I); continue; } - + I++; } } diff --git a/test/Analysis/unix-fns.c b/test/Analysis/unix-fns.c index ecd2421d5d..dad03fac70 100644 --- a/test/Analysis/unix-fns.c +++ b/test/Analysis/unix-fns.c @@ -1,6 +1,8 @@ // RUN: %clang_cc1 -triple x86_64-apple-darwin10 -analyze -analyzer-checker=core,unix.API,osx.API %s -analyzer-store=region -analyzer-output=plist -analyzer-eagerly-assume -analyzer-config faux-bodies=true -analyzer-config path-diagnostics-alternate=false -fblocks -verify -o %t.plist // RUN: FileCheck --input-file=%t.plist %s -// RUN: %clang_cc1 -analyze -analyzer-checker=core,unix.API,osx.API -analyzer-output=html -analyzer-config faux-bodies=true -fblocks -o %T/dir %s +// RUN: mkdir -p %t.dir +// RUN: %clang_cc1 -analyze -analyzer-checker=core,unix.API,osx.API -analyzer-output=html -analyzer-config faux-bodies=true -fblocks -o %t.dir %s +// RUN: rm -fR %t.dir struct _opaque_pthread_once_t { long __sig; char __opaque[8]; @@ -16,7 +18,6 @@ void *realloc(void *, size_t); void *reallocf(void *, size_t); void *alloca(size_t); void *valloc(size_t); - typedef union { struct _os_object_s *_os_obj; struct dispatch_object_s *_do; @@ -32,7 +33,6 @@ typedef union { struct dispatch_operation_s *_doperation; struct dispatch_disk_s *_ddisk; } dispatch_object_t __attribute__((__transparent_union__)); - typedef void (^dispatch_block_t)(void); typedef long dispatch_once_t; typedef struct dispatch_queue_s *dispatch_queue_t;