- Apr 04, 2011
-
-
Devang Patel authored
llvm-svn: 128842
-
Ted Kremenek authored
llvm-svn: 128840
-
Ted Kremenek authored
-Wuninitialized: don't issue fixit for initializer if a variable declaration already has an initializer. llvm-svn: 128838
-
Ted Kremenek authored
When emitting a "too many arguments to function call..." error, also include a note with a location for the function prototype. llvm-svn: 128833
-
Bob Wilson authored
Sandeep Patel noticed that the alignment was wrong for Neon vector types, and this change is partly derived from his patch. For the APCS ABI, however, additional changes were required: the maximum ABI alignment is 32 bits and the preferred alignment for i64 and f64 types should be 64 bits. llvm-svn: 128825
-
Eli Friedman authored
I'm pretty sure this is the right fix, but I would appreciate it if someone else would double-check. llvm-svn: 128806
-
- Apr 03, 2011
-
-
Lenny Maiorani authored
Refactoring the security checker a little bit so that each CallExpr check doesn't get called for each CallExpr. Instead it does a switch and only runs the check for the proper identifier. Slight speed improvement (probably significant on very large ASTs), and should make it easier and more clear to add more checks for other CallExpr's later. llvm-svn: 128785
-
Ted Kremenek authored
static analyzer: Add a new ProgramPoint PostCondition to represent the post position of a branch condition, and a new generateNode method to BranchNodeBuilder using PostCondition ProgramPoint. This method generates a new ExplodedNode but not a new block edge. Patch by Lei Zhang! llvm-svn: 128784
-
Ted Kremenek authored
Fix RegionStore bug when doing a field load whose parent is also a field assigned a LazyCompoundValue. Fixes <rdar://problem/9163742> and PR 9522. llvm-svn: 128783
-
- Apr 02, 2011
-
-
Nico Weber authored
llvm-svn: 128780
-
Ken Dyck authored
CharUnits. No change in functionality intended. llvm-svn: 128776
-
Ken Dyck authored
change in functionality intended. llvm-svn: 128773
-
Ken Dyck authored
dumpLayout(). No change in functionality intended. llvm-svn: 128771
-
Ken Dyck authored
change in functionality intended. llvm-svn: 128770
-
Chandler Carruth authored
a couple of operator overloads which form interesting expressions in the AST. I added test cases for both bugs with the c-index-test's token annotation feature. Also, thanks to John McCall for confirming that this is the correct solution. llvm-svn: 128768
-
Zhongxing Xu authored
llvm-svn: 128762
-
Ted Kremenek authored
Teach IdempotentOperationsChecker about paths aborted because ExprEngine didn't know how to handle a specific Expr type. llvm-svn: 128761
-
Ted Kremenek authored
static analyzer: Rename 'BlocksAborted' to 'BlocksExhausted' to reflect that a given CFGBlock was analyzed too many times. llvm-svn: 128760
-
Ken Dyck authored
functionality intended. llvm-svn: 128756
-
Ken Dyck authored
CharUnits. No change in functionality intended. llvm-svn: 128754
-
Ken Dyck authored
functionality intended. llvm-svn: 128753
-
Ken Dyck authored
No change in functionality intended. llvm-svn: 128752
-
Fariborz Jahanian authored
block pointer nested inside a block. // rdar:// 9204669 llvm-svn: 128747
-
- Apr 01, 2011
-
-
Daniel Dunbar authored
llvm-svn: 128738
-
Fariborz Jahanian authored
__byref block. // rdar://9204669 llvm-svn: 128726
-
Devang Patel authored
llvm-svn: 128725
-
Chandler Carruth authored
location into a TemplateSpecializationTypeLoc. These were found using a hand-written program to inspect every source location in TemplateSpecializationTypeLocs and Valgrind. I don't know of any way to test them in Clang's existing test suite sadly. Example code that triggers the ElaboratedType case: template <typename T> struct X1 { template <typename U> struct X1_1 { int x; }; }; template <typename T, typename U> struct X2 { typename X1<T>::template X1_1<U> B; }; X2<char, int> x2; The other fix was simply spotted by inspection. I audited all constructions of [Dependent]TemplateSpecializationTypeLocs in TreeTransform.h, and the rest set the TemplateNameLoc properly. llvm-svn: 128702
-
Daniel Dunbar authored
that of the array element type. llvm-svn: 128698
-
Daniel Dunbar authored
arrays by propagating", it's breaking test in ways I don't understand yet. llvm-svn: 128693
-
Daniel Dunbar authored
the array alignment to the array access. - This is more or less the best we can do without having alignment present in the type system, but is a long way from truly matching how GCC handles this. llvm-svn: 128691
-
Fariborz Jahanian authored
__block block declaration. //rdar://9204669 llvm-svn: 128682
-
Ted Kremenek authored
Note this can potentially be enhanced to detect if the __block variable is actually written by the block, or only when the block "escapes" or is actually used, but that requires more analysis than it is probably worth for this simple check. llvm-svn: 128681
-
Lenny Maiorani authored
Add security syntax checker for strcpy() which causes the Static Analyzer to generate a warning any time the strcpy() function is used with a note suggesting to use a function which provides bounded buffers. llvm-svn: 128679
-
- Mar 31, 2011
-
-
Lenny Maiorani authored
Models mempcpy() so that if length is NULL the destination pointer is returned. Otherwise, the source and destination are confirmed not to be NULL and not overlapping. Finally the copy is validated to not cause a buffer overrun and the return value is bound to the address of the byte after the last byte copied. llvm-svn: 128677
-
Lenny Maiorani authored
llvm-svn: 128670
-
Sebastian Redl authored
Make ChainedIncludesSource an ExternalSemaSource, otherwise initialization of the ASTReader is incomplete, leading to errors like not realizing std::type_info is already defined. llvm-svn: 128664
-
Sebastian Redl authored
Tell the diagnostic client about starting and ending source files when automatically creating chained PCHs. This way, we don't get a crash whenever a diagnostic is emitted while processing the include. llvm-svn: 128663
-
Daniel Dunbar authored
llvm-svn: 128641
-
John McCall authored
llvm-svn: 128621
-
John McCall authored
__block object copy/dispose helpers for C++ objects with those for different variables with completely different semantics simply because they happen to both be no more aligned than a pointer. Found by inspection. Also, internalize most of the helper generation logic within CGBlocks.cpp, and refactor it to fit my peculiar aesthetic sense. llvm-svn: 128618
-