| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
| |
the external link.
llvm-svn: 153141
|
| |
|
|
|
|
|
| |
the class pointer in the category structure.
// rdar://11076938
llvm-svn: 153138
|
| |
|
|
| |
llvm-svn: 153130
|
| |
|
|
| |
llvm-svn: 153129
|
| |
|
|
| |
llvm-svn: 153127
|
| |
|
|
| |
llvm-svn: 153126
|
| |
|
|
| |
llvm-svn: 153124
|
| |
|
|
| |
llvm-svn: 153123
|
| |
|
|
|
|
| |
<rdar://problem/11040133>.
llvm-svn: 153122
|
| |
|
|
|
|
|
|
| |
invalidating the pointer.
Fixes PR12284. The test case only triggered under asan/valgrind, but it's better than nothing.
llvm-svn: 153120
|
| |
|
|
|
|
|
| |
via functions for certain pointer initialization
fields. // rdar://11076938
llvm-svn: 153117
|
| |
|
|
|
|
|
|
| |
replaceOperandWith.
TrackingVH notices when it gets RAUW'd. Fixes PR12305 and PR12315.
llvm-svn: 153115
|
| |
|
|
|
|
|
| |
changes to how meta-data is declared.
// rdar://11076938
llvm-svn: 153098
|
| |
|
|
| |
llvm-svn: 153096
|
| |
|
|
|
|
|
| |
one place and use it throughout. Also, change ivar name to avoid
name collisions. // rdar://11079366
llvm-svn: 153093
|
| |
|
|
|
|
|
|
|
| |
From the Intel Optimization Reference Manual, Section 11.6.2. When data cannot
be aligned or alignment is not known, 16-byte memory accesses may provide better
performance.
rdar://11076953
llvm-svn: 153091
|
| |
|
|
|
|
| |
(GNUstep runtime).
llvm-svn: 153090
|
| |
|
|
|
|
| |
checker working with inlined C++ template functions.
llvm-svn: 153069
|
| |
|
|
|
|
|
| |
on code using multi-dimensional arrays. Fix by DeLesley Hutchins, and reported in
PR 12271.
llvm-svn: 153067
|
| |
|
|
|
|
|
|
| |
the passed cursor is the translation unit cursor.
Patch by Clint Caywood!
llvm-svn: 153062
|
| |
|
|
| |
llvm-svn: 153052
|
| |
|
|
| |
llvm-svn: 153048
|
| |
|
|
| |
llvm-svn: 153046
|
| |
|
|
| |
llvm-svn: 153044
|
| |
|
|
|
|
| |
declaration and its siblings.
llvm-svn: 153043
|
| |
|
|
|
|
| |
On Win32 hosts, ';' is used for path separator.
llvm-svn: 153037
|
| |
|
|
|
|
|
|
| |
separate paths.
This regressed in r152583. Also add a test to make sure it doesn't regress again.
llvm-svn: 153034
|
| |
|
|
|
|
| |
arguments.
llvm-svn: 153026
|
| |
|
|
| |
llvm-svn: 153012
|
| |
|
|
|
|
|
|
|
|
| |
the realloc call and the null check, so we get nicer path notes. Fixes a regression introduced by the diagnostic pruning added in r152361.
This is accomplished by calling markInteresting /during/ path diagnostic generation, and as such relies on deterministic ordering of BugReporterVisitors -- namely, that BugReporterVisitors are run in /reverse/ order from how they are added. (Right now that's a consequence of storing visitors in an ImmutableList, where new items are added to the front.) It's a little hacky, but it works for now.
I think this is the best we can do without storing the relation between the old and new symbols, and that would be a hit whether or not there ends up being an error.
llvm-svn: 153010
|
| |
|
|
| |
llvm-svn: 153009
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of suggesting " = 0" for "char c();", suggest " = '\0'", and similarly
for other char types (wide, 16, and 32). Add tests for all these, and since
this means testing such hints under C++0x, add tests for some untested C++0x
hint cases in the existing code, including suggesting nullptr for pointer
initialization.
This sets up the initialization helper to provide better type fidelity that
will be especially helpful for non-assignment cases (such as fixit-correcting
NULL usage in function calls (eg: foo(char) + foo(NULL) => foo('\0') instead
of the less informative foo(0)))
llvm-svn: 153008
|
| |
|
|
|
|
|
|
|
|
| |
than explicitly keeping DoNothing and StopTracking summaries and nothing else.
I tried to test the effects of this change on memory usage and run time, but what I saw on retain-release.m was indistinguishable from noise (debug and release builds). Even so, some caveman profiling showed 101 cache hits that we would have generated new summaries for before (i.e. not default or stop summaries), and the more code we analyze, the more memory we should save.
Maybe we should have a standard project for benchmarking the retain count checker's memory and time?
llvm-svn: 153007
|
| |
|
|
|
|
| |
nested-name-specifier for a class template declaration. Fixes PR12291.
llvm-svn: 153006
|
| |
|
|
|
|
| |
declarator-ids that occur at class scope. Fixes PR8019.
llvm-svn: 153002
|
| |
|
|
|
|
| |
methods. No functionality change.
llvm-svn: 153001
|
| |
|
|
|
|
|
|
| |
are now just simple wrappers around method families, and method decls can cache method family lookups. Also, no one is using them right now.
The one difference between ObjCMethodDecl::getMethodFamily and Selector::getMethodFamily is that the former will do some additional sanity checking, and since CoreFoundation types don't look like Objective-C objects, an otherwise interesting method will get a method family of OMF_None. Future clients that use method families should consider how they want to handle CF types.
llvm-svn: 153000
|
| |
|
|
|
|
|
|
|
|
| |
functionality change.
The cocoa::deriveNamingConventions helper is just using method families anyway now, and the way RetainSummaryTemplate works means we're allocating an extra summary for every method with a relevant family.
Also, fix RetainSummaryTemplate to do the right thing w/r/t annotating an /existing/ summary. This was probably the real cause of <rdar://problem/10824732> and the fix in r152448.
llvm-svn: 152998
|
| |
|
|
|
|
|
|
| |
writing @synchronized statement; do not call locking
expression more than once and support early exits in
@synchronized's statement block (such as return).
llvm-svn: 152993
|
| |
|
|
| |
llvm-svn: 152982
|
| |
|
|
|
|
|
| |
the availability of the enumeration type itself. Fixes
<rdar://problem/10996386>.
llvm-svn: 152977
|
| |
|
|
|
|
|
|
| |
counting autoreleases. Fixes PR10376.
(Also, 80-column violations.)
llvm-svn: 152976
|
| |
|
|
| |
llvm-svn: 152975
|
| |
|
|
|
|
|
| |
(The plist output does not match the one we expect, specifically we do
not detect that the interesting symbol is returned by a call.)
llvm-svn: 152969
|
| |
|
|
|
|
| |
when I do the specific crash is hidden. Fixes <rdar://problem/11063594>.
llvm-svn: 152968
|
| |
|
|
|
|
|
| |
Do not display the standard "Returning from 'foo'", when a stack hint is
available.
llvm-svn: 152964
|
| |
|
|
| |
llvm-svn: 152963
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The symbol-aware stack hint combines the checker-provided message
with the information about how the symbol was passed to the callee: as
a parameter or a return value.
For malloc, the generated messages look like this :
"Returning from 'foo'; released memory via 1st parameter"
"Returning from 'foo'; allocated memory via 1st parameter"
"Returning from 'foo'; allocated memory returned"
"Returning from 'foo'; reallocation of 1st parameter failed"
(We are yet to handle cases when the symbol is a field in a struct or
an array element.)
llvm-svn: 152962
|
| |
|
|
| |
llvm-svn: 152961
|
| |
|
|
|
|
| |
number of steps in the work list.
llvm-svn: 152960
|