- Oct 22, 2008
-
-
Ted Kremenek authored
Enhance reference-count checker to correctly identify CG "release" functions. This fixes <rdar://problem/6303488>. llvm-svn: 57997
-
rdar://problem/6257675Steve Naroff authored
Fix <rdar://problem/6257675> error: member reference base type ('NSUserDefaults *') is not a structure or union. Teach Sema::ActOnMemberReferenceExpr() to look through local category implementations associated with the class. llvm-svn: 57995
-
Daniel Dunbar authored
llvm-svn: 57993
-
Douglas Gregor authored
don't have duplicated direct base classes. Seriliazation of base class specifiers is not yet implemented. llvm-svn: 57991
-
Daniel Dunbar authored
llvm-svn: 57990
-
Chris Lattner authored
Roman Divacky! llvm-svn: 57988
-
Ted Kremenek authored
llvm-svn: 57981
-
Douglas Gregor authored
aren't trying to compare with address-space qualifiers (for now). Clean up handing of DeclRefExprs in Expr::isLvalue and refactor part of the check into a static DeclCanBeLvalue. llvm-svn: 57980
-
Zhongxing Xu authored
llvm-svn: 57979
-
Douglas Gregor authored
conversions (e.g., comparing int* -> const int* against int* -> const volatile int*); see C++ 13.3.3.2p3 bullet 3. Add Sema::UnwrapSimilarPointerTypes to simplify the control flow of IsQualificationConversion and CompareQualificationConversion (and fix the handling of the int* -> volatile int* conversion in the former). llvm-svn: 57978
-
Zhongxing Xu authored
llvm-svn: 57977
-
Zhongxing Xu authored
llvm-svn: 57964
-
Zhongxing Xu authored
llvm-svn: 57963
-
Douglas Gregor authored
llvm-svn: 57951
-
Chris Lattner authored
1. Remove a bogus assertion, clients other than sema can return a null pointer from actions that result in ParseTypeName returning null. 2. Remove dead RParenLoc variable. 3. Simplify control flow handling error conditions. 4. On a major failure, we should skip until ')' not until '}'. llvm-svn: 57949
-
Daniel Dunbar authored
- Stop playing fast and loose with the std stream. llvm-svn: 57948
-
Douglas Gregor authored
Fix a thinko in the qualification-conversion check when the qualificaitons are disjoint, and add some overloading-based tests of qualification conversions llvm-svn: 57942
-
Douglas Gregor authored
llvm-svn: 57941
-
Daniel Dunbar authored
llvm-svn: 57938
-
Daniel Dunbar authored
- Split backend related consumer out into Backend.cpp, replaces LLVMCodeGenWriter. - Structure follows llvm-gcc to some extent. - Still need to implement all the options which impact code generation and the optimization passes which llvm-gcc uses at various levels. llvm-svn: 57936
-
Douglas Gregor authored
Changes: - Sema::IsQualificationConversion determines whether we have a qualification conversion. - Sema::CheckSingleAssignment constraints now follows the C++ rules in C++, performing an implicit conversion from the right-hand side to the type of the left-hand side rather than checking based on the C notion of "compatibility". We now rely on the implicit-conversion code to determine whether the conversion can happen or not. Sema::TryCopyInitialization has an ugly reference-related hack to cope with the initialization of references, for now. - When building DeclRefExprs, strip away the reference type, since there are no expressions whose type is a reference. We'll need to do this throughout Sema. - Expr::isLvalue now permits functions to be lvalues in C++ (but not in C). llvm-svn: 57935
-
- Oct 21, 2008
-
-
Ted Kremenek authored
llvm-svn: 57931
-
Daniel Dunbar authored
previous commit. llvm-svn: 57930
-
Daniel Dunbar authored
llvm-svn: 57927
-
Daniel Dunbar authored
llvm-svn: 57924
-
Ted Kremenek authored
When conjuring symbols for compound assignments, use the promoted type to determine if the symbolic value as a "loc::" or "nonloc::" value. llvm-svn: 57917
-
rdar://problem/6257645Steve Naroff authored
ASTContext::isObjCObjectPointerType() needs to consider blocks as objects. Note: My previous commit was done in the test directory...as a result, this commit was necessary. llvm-svn: 57914
-
rdar://problem/6257645Steve Naroff authored
ASTContext::isObjCObjectPointerType() needs to consider blocks as objects. llvm-svn: 57913
-
Douglas Gregor authored
llvm-svn: 57910
-
Douglas Gregor authored
llvm-svn: 57909
-
Ted Kremenek authored
Handle [NSAutoreleasePool addObject:] (an alternative way to add objects to the current autorelease pool). Added initial code for tracking stack of autorelease pools. llvm-svn: 57908
-
Ted Kremenek authored
llvm-svn: 57907
-
Steve Naroff authored
Found this while fixing another unrelated radar. llvm-svn: 57904
-
-
Steve Naroff authored
llvm-svn: 57902
-
Gabor Greif authored
Tweak an expected-error to match the output. IMHO it is better to diagnose 'int (void)' because it has the same meaning in C and C++. llvm-svn: 57901
-
Steve Naroff authored
llvm-svn: 57899
-
rdar://problem/6261178Steve Naroff authored
Fix <rdar://problem/6265257> warnings for ambiguous message send swamp other warnings. Reworked Sema::MatchTwoMethodDeclarations() to optionally match based on method size and alignment (the default in GCC). Changed Sema::LookupInstanceMethodInGlobalPool() to use this feature. Added -Wno-struct-selector-match to driver, however didn't hook it up yet. Added a FIXME that says this. llvm-svn: 57898
-
Zhongxing Xu authored
GRExprEngine::VisitCast() so that other parts of the analyzer can be ignorant. When we cast "array of type T" to "pointer to T", we get the loc::MemRegionVal corresponding to the array variable. This is sufficient for BasicStore, but not for RegionStore. RegionStore should get the element region for the first array element in the cast. So next comes to the revamping of transfer functions for different store model. llvm-svn: 57897
-
Zhongxing Xu authored
llvm-svn: 57896
-