зеркало из https://github.com/microsoft/clang-1.git
[analyzer] Address Jordan’s code review for r183451
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183455 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Родитель
6838710779
Коммит
57c8736e7d
|
@ -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<PathDiagnosticCallPiece>(*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++;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -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;
|
||||
|
|
Загрузка…
Ссылка в новой задаче