- Aug 24, 2012
-
-
NAKAMURA Takumi authored
llvm-svn: 162550
-
Ted Kremenek authored
Fixes <rdar://problem/11005770>. llvm-svn: 162545
-
Daniel Jasper authored
databases. Move JSONCompilationDatabase.h to its own files and register it as plugin. llvm-svn: 162541
-
Anna Zaks authored
When reallocation of a non-allocated (not owned) symbol fails do not expect it to be freed. llvm-svn: 162533
-
Anna Zaks authored
This code has been added a while ago and removing it does not trigger any test failures. The false positives it was trying to suppress are probably handled by other logic (ex: special handling of delegates). llvm-svn: 162529
-
Richard Smith authored
* when checking that a pointer or reference refers to appropriate storage for a type, also check the alignment and perform a null check * check that references are bound to appropriate storage * check that 'this' has appropriate storage in member accesses and member function calls llvm-svn: 162523
-
Alexander Kornienko authored
llvm-svn: 162521
-
Chad Rosier authored
generate the Input/Output expressions using Sema::ActOnIdExpression(). llvm-svn: 162509
-
Anna Zaks authored
With inlining, retain count checker starts tracking 'self' through the init methods. The analyser results were too noisy if the developer did not follow 'self = [super init]' pattern (which is common especially in older code bases) - we reported self init anti-pattern AND possible use-after-free. This patch teaches the retain count checker to assume that [super init] does not fail when it's not consumed by another expression. This silences the retain count warning that warns about possibility of use-after-free when init fails, while preserving all the other checking on 'self'. llvm-svn: 162508
-
Dmitri Gribenko authored
use \param and \returns in documentation. Fixes PR13533. llvm-svn: 162507
-
Dmitri Gribenko authored
llvm-svn: 162506
-
Benjamin Kramer authored
This required changing all get() calls to data() and using the simpler constructors. llvm-svn: 162501
-
Jordan Rose authored
Until we have full support for pointers-to-members, we can at least approximate some of their use by tracking null and non-null values. We thus treat &A::m_ptr as a non-null void * symbol, and MemberPointer(0) as a pointer-sized null constant. This enables support for what is sometimes called the "safe bool" idiom, demonstrated in the test case. llvm-svn: 162495
-
Jordan Rose authored
This is trivial; the UserDefinedConversion always wraps a CXXMemberCallExpr for the appropriate conversion function, so it's just a matter of propagating that value to the CastExpr itself. llvm-svn: 162494
-
Benjamin Kramer authored
llvm-svn: 162492
-
Dmitri Gribenko authored
not be set for implicit instantiations, remove the FIXME. This should be the last bit for PR13634. The actual fix happened in r162238. Motivation: it might be misleading to mark implicit instantiations as Decl::isImplicit = true. Because then, in order to be consistent, we should mark all instantiated members as implicit. But the user did actually type the declaration for the member, but the compiler played with it a little bit. llvm-svn: 162488
-
- Aug 23, 2012
-
-
Benjamin Kramer authored
These were nops for quite a while and only lead to confusion. ASTMultiPtr now behaves like a proper dumb array reference. llvm-svn: 162475
-
Ted Kremenek authored
"castAs<...>->doSomething()". The analyzer was flagging these as potential null dereferences, which is technically true. The invariants appear to be that these casts should never fail, so let's use castAs<> instead and avoid a runtime check. llvm-svn: 162468
-
Richard Smith authored
statement starts with an identifier for which name lookup will fail either way, look at later tokens to disambiguate in order to improve error recovery. llvm-svn: 162464
-
Chad Rosier authored
ms-style inline asms. llvm-svn: 162463
-
Jordan Rose authored
A CXXDefaultArgExpr wraps an Expr owned by a ParmVarDecl belonging to the called function. In general, ExprEngine and Environment ought to treat this like a ParenExpr or other transparent wrapper expression, with the inside expression evaluated first. However, if we call the same function twice, we'd produce a CFG that contains the same wrapped expression twice, and we're not set up to handle that. I've added a FIXME to the CFG builder to come back to that, but meanwhile we can at least handle expressions that don't need to be explicitly evaluated: literals. This probably handles many common uses of default parameters: true/false, null, etc. Part of PR13385 / <rdar://problem/12156507> llvm-svn: 162453
-
Dmitri Gribenko authored
llvm-svn: 162452
-
Chad Rosier authored
a gcc warning. llvm-svn: 162444
-
David Chisnall authored
Patch by Niels Grewe! llvm-svn: 162441
-
Eli Friedman authored
llvm-svn: 162440
-
Richard Smith authored
llvm-svn: 162430
-
Douglas Gregor authored
inconsistent ordering of results; instead, use use SmallPtrSet to eliminate duplicates. llvm-svn: 162429
-
Richard Smith authored
on a null pointer. (This function happens to work for a null 'this' pointer, so no test.) llvm-svn: 162427
-
Eli Friedman authored
of a pointer for builtin emission, instead of just depending on the type of the pointee. <rdar://problem/11314941>. llvm-svn: 162425
-
Matt Beaumont-Gay authored
llvm-svn: 162424
-
Chad Rosier authored
llvm-svn: 162416
-
Ted Kremenek authored
llvm-svn: 162412
-
Chad Rosier authored
requires codegen support. llvm-svn: 162410
-
Dmitri Gribenko authored
name. This should reduce the amount of warning false positives about bad HTML in comments when the comment author intended to put a reference to a template. This change will also enable us parse the comment as intended in these cases. Fixes part 1 of PR13374. llvm-svn: 162407
-
Anna Zaks authored
llvm-svn: 162405
-
Chad Rosier authored
No functional change intended. llvm-svn: 162403
-
- Aug 22, 2012
-
-
Anna Zaks authored
The checker adds assumptions that the return values from the known APIs are non-nil. Teach the checker about NSArray/NSMutableArray/NSOrderedSet objectAtIndex, objectAtIndexedSubscript. llvm-svn: 162398
-
Chad Rosier authored
llvm-svn: 162396
-
Chad Rosier authored
llvm-svn: 162394
-
Chad Rosier authored
llvm-svn: 162393
-