aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2008-11-04Update Xcode project.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58711 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-04Make it an error if an Objective-C declaration is not in the global scope.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58705 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-04LinkageSpecDecl is c++ specific, move it to DeclCXXChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58704 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-04Some cleanup of the cast checkers. Don't canonicalize types when not needed. ↵Sebastian Redl
Use distinct diagnostics for distinct errors. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58700 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-04Fine-grained C++ status pageDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58699 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-04Add a new expression class, ObjCSuperExpr, to handle the Objective-C ↵Douglas Gregor
'super'. Remove ObjCThis from PredefinedExpr git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58698 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-04Create a new expression class, CXXThisExpr, to handle the C++ 'this' primary ↵Douglas Gregor
expression. Remove CXXThis from PredefinedExpr git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58695 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-04Now that we have copy initialization support, use it for checking the ↵Douglas Gregor
default arguments git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58692 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-04Diagnose use of 'this' in a C++ default argument. Thanks to Eli for ↵Douglas Gregor
correcting my bogus assertion about it already being handled git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58691 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-04Trivial style fix.Sebastian Redl
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58689 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-04#define NULL as 0 when compiling as C++. This fixes the carbon.cpp and ↵Anders Carlsson
cocoa.mm test failures. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58685 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-04Implement lowering of va_arg in clang directly. (This is 32-bit X86 only for ↵Anders Carlsson
now). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58681 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-04Fix bug in va_copyAnders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58680 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-04Updated checker build.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58672 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-04Handle prefix '_' that may appear in front of the name of 'Release' functionsTed Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58666 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-04Fix use of uninitialized variable.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58663 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-04Updated checker build.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58658 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-04Allow user toggling between plist and html output with scan-build/ccc-analyzer.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58657 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-04Update VC++ project file.Steve Naroff
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58656 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-03Fix <rdar://problem/6339636> clang ObjC rewriter: Assertion failed: FileID-1 ↵Steve Naroff
< FileIDs.size() && "Invalid FileID!", file c:\cygwin\home\Administrator\llvm\tools\clang\include\clang/Basic/SourceManager.h, line 513 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58654 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-03Hook up the Plist diagnostic client to the driver.Ted Kremenek
Fix Plist output. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58652 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-03Check that this cannot be used in a default argument. Happily, it was ↵Douglas Gregor
already implemented git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58649 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-03Add path diagnostics client for emitting path reports using Plists.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58647 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-03Rename 'HTMLDiagnostics.h' to 'PathDiagnosticClients.h'Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58646 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-03Implicit support for direct initialization of objects of class type, e.g.,Douglas Gregor
X x(5, 7); git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58641 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-03Clarify performance experiments description based on feedback fromDaniel Dunbar
Eric C, thanks! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58634 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-03Standard conversion sequences now have a CopyConstructor field, toDouglas Gregor
cope with the case where a user-defined conversion is actually a copy construction, and therefore can be compared against other standard conversion sequences. While I called this a hack before, now I'm convinced that it's the right way to go. Compare overloads based on derived-to-base conversions that invoke copy constructors. Suppress user-defined conversions when attempting to call a user-defined conversion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58629 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-03Add implicitly-declared default and copy constructors to C++ classes,Douglas Gregor
when appropriate. Conversions for class types now make use of copy constructors. I've replaced the egregious hack allowing class-to-class conversions with a slightly less egregious hack calling these conversions standard conversions (for overloading reasons). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58622 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-03Eliminate header dependency ASTContext -> TargetInfoDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58613 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-03Implement C++ DR 106 and C++ DR 540, both of which deal withDouglas Gregor
reference-collapsing. Implement diagnostic for formation of a reference to cv void. Drop cv-qualifiers added to a reference type when the reference type comes from a typedef. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58612 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-03Connect ASTContext to TargetInfo when determining the size_t, ptrdiff_t, and ↵Douglas Gregor
wchar_t types. Fixes recent breakage on Linux. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58609 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-03Fix <rdar://problem/6336774> clang block rewriter: Assertion failed: ↵Steve Naroff
Offset+NumBytes <= size() && "Invalid region to erase!", file c:\cygwin\home\Administrator\llvm\to ols\clang\include\clang/Rewrite/RewriteRope.h, line 219. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58607 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-03Fix PR3001: if we have an error parsing an initializer, make sure to removeChris Lattner
the designator corresponding to it, otherwise Sema and later parsing will get confused. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58603 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-03privatize some methods.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58602 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-03Simplify the functions HtmlEsape and ShellEscape. We now properly print out ↵Ted Kremenek
the following command line in the HTML output: scan-build gcc -x c /dev/null -c -Dfoo='"string abc"' Fixes <rdar://problem/6338651> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58600 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-03Add some notes for SCA.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58597 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-03Fix 80-col violations.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58596 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-03- Remove AnonTypedRegion, which is not to be used.Zhongxing Xu
- Prepare AnonPointeeRegioin for later use. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58595 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-02Source ranges for named cast diagnostics.Sebastian Redl
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58570 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-02Add header files to CMake build solution. It use globing so it doesn't need ↵Cedric Venet
to be manually maintained, but it won't automatically detect a new header. I think this is a good compromise for the header files, since there presence in the solution is just an help for the user. Moreover, a new header is often introduced with a new cpp source file which need a makefile change, which will regenerate the solution and detect the new header. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58566 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-02Add function side-effect test cast.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58565 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-021. When a pointer to struct is used as an argument, GRSimpleVals::EvalCall()Zhongxing Xu
sets the whole struct to Unknown. Then we cannot assume the V passed to BindStruct() is always a CompoundVal. When it is an UnknownVal, we call BindStructToVal(UnknownVal). 2. Change the signature of InitializeStructToUndefined() to BindStructToVal() to reuse the code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58564 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-02Add defined in if().Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58562 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-02More fallout from r58501: primary fix is some more corrections to make Eli Friedman
the types for size_t and ptrdiff_t more accurate. I think all of these are correct, but please compare the defines for __PTRDIFF_TYPE__ and __SIZE_TYPE__ to gcc to double-check; this particularly applies to those on BSD variants, since I'm not sure what they do here; I assume here that they're the same as on Linux. Fixes wchar_t to be "int", not "unsigned int" (which I think is correct on everything but Windows). Fixes ptrdiff_t to be "int" rather than "short" on PIC16; "short" is an somewhat strange choice because it normally gets promoted, and it's not consistent with the choice for size_t. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58556 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-02Add 'alloca' test case for return-of-stack-address checker.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58554 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-02Enhance return-of-stack-address checker to recognize regions created by ↵Ted Kremenek
alloca(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58553 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-02Add transfer function logic for alloca().Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58552 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-02Added AllocaRegion, which represents regions created by calls to alloca().Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58551 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-02Fixed a horrible bug in HTMLDiagnostics.cpp where bugs referencing source ↵Ted Kremenek
ranges that occur within macros would not be emitted at all. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58550 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-01Move IRBuilder type definition to common file.Daniel Dunbar
- No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58546 91177308-0d34-0410-b5e6-96231b3b80d8