aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-11-13Add two new test cases for the Malloc/Free checker. Both have to do withTed Kremenek
storing malloc'ed memory to global storage. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88684 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Add test case that shows a leak we don't catch.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88683 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Add a testcase for the recent VTT work.Mike Stump
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88681 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Code gen for arrady delete operator. Fixes pr5472.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88680 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Fix bug Doug noticed.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88679 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Add test for expr.delete p5, with a FIXME.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88678 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Do not store DIDescriptor directly into a container. Store MDNode directly, ↵Devang Patel
through TrackingVH. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88677 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13This falls into the category of stupid pet tricks. I hate to do this,Mike Stump
but this is necessary to continue work on virtual vtables. We don't want to penalize virtual table building testcases, just because complex virtual conversions don't yet work. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88676 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13add missing slashes to separator line; also testing commit accessKen Dyck
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88675 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Use 'eq' operator, and enable regular experimental checks when ↵Ted Kremenek
--experimental-checks is passed to scan-build. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88673 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Add clang-cc option "--analyzer-experimental-internal-checks". ThisTed Kremenek
option enables new "internal" checks that will eventually be turned on by default but still require broader testing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88671 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13When performing copy initialization (= "implicit conversion", here) toDouglas Gregor
a class type from itself or a derived class thereof, enumerate constructors and permit user-defined conversions to the arguments of those constructors. This fixes the wacky implicit conversion sequence used in std::auto_ptr's lame emulation of move semantics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88670 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13When transforming an expression statement (e.g., for templateDouglas Gregor
instantiation), be sure to finish the expression statement by providing a FullExprArg, making sure that temporaries get destroyed. Fixes an obscure failure when parsing llvm/LinkAllPasses.h. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88668 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Add CompilerInstance utility functions for creating output files.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88667 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Instead of storing CXXMethodDecls in the vtable builder, store GlobalDecls ↵Anders Carlsson
so we can represent both the complete and deleting destructors. Also, when encountering a destructor decl, emit entries for both the complete and deleting destructors. Mike, please review. With this change, FileCheck builds and runs the clang test suite without failures! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88663 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Don't bind arguments to temporaries if the argument has a reference type.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88662 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Remove local splitLines reimplementation.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88661 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Add output file list to CompilerInstance, so that it can track them instead ofDaniel Dunbar
forcing all clients to do it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87103 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13clang-cc: Move output file initialization closer to use.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87102 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Simplify, in anticipation of introducing explicit action instances.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87101 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Add CodeCompletion consumer to CompilerInvocation.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87100 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Rework Sema code completion interface.Daniel Dunbar
- Provide Sema in callbacks, instead of requiring it in constructor. This eliminates the need for a factory function. Clients now just pass the object to consume the results in directly. - CodeCompleteConsumer is cheap to construct, so building it whenever we are doing code completion is reasonable. Doug, please review. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87099 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Add CompilerInstance::createPCHExternalASTSource.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87097 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Add CompilerInstance::has* methods for testing if the instance has a particularDaniel Dunbar
subobject. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87096 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Add ASTContext to CompilerInstance.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87095 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Malloc checker basically works now.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87094 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Hook up Malloc checker.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87093 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Check in a new interface of Checker, which will soon be used.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87092 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13GRStateManager::CurrentStmt is not used. Remove it.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87091 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Add CompilerInstance::createDiagnostics, and move clang-cc to it.Daniel Dunbar
clang-cc.cpp is now under 1k lines, if anyone is counting. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87090 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Add a FIXME.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87089 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Add Preprocessor to CompilerInstance, and move clang-cc CreatePreprocessor toDaniel Dunbar
CompilerInstance::createPreprocessor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87088 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Wherein the TargetInfo argument to Preprocessor is made 'const' and propogated.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87087 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Include header for printf.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87086 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Use StringRef::split instead of SplitString.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87085 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Add a special BuildVirtualCall that's going to be used for building calls to ↵Anders Carlsson
destructors. This is needed because when compiling: struct A { virtual ~A(); }; void f(A* a) { delete a; } A's deleting destructor should be called. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87083 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Fix two bugs with temporaries:Anders Carlsson
1. For A f() { return A(); } we were incorrectly calling the A destructor on the returned object. 2. For void f(A); void g() { A a; f(a); } we were incorrectly not calling the copy constructor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87082 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Move GlobalDecl to its own file. Also add DenseMapInfo traits.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87081 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Add {File,Source}Manager to CompilerInstance.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87079 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Add CompilerInstance, and starting moving clang-cc to it.Daniel Dunbar
- The design philosophy is in the CompilerInstance doxyment, if you don't agree with it now would be a good time to speak up. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87078 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Only flush plist diagnostics once.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87073 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Fix recently introduced use-after-free error reported in ↵Ted Kremenek
<rdar://problem/7387478>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87072 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Refine construction vtables; they don't include bits that don't haveMike Stump
virtual bases unless they are morally virtual. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87071 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Refine the construction vtables with respect to offsets. WIP.Mike Stump
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87067 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Move input kind identification (-x) into FrontendOptions.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87066 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Pull static variable within function (for slightly faster startup time).Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87065 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Allow the tracking of address points for construction vtables as well.Mike Stump
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87063 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13retain/release checker: refactor some of the summary lookup logic for ↵Ted Kremenek
instance method summaries. No real functionality change, but it paves the way for new enhancements. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87062 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Add clang-cc option "-analyzer-experimental-checks" to enable experimental ↵Ted Kremenek
path-sensitive checks. The idea is to separate "barely working" or "skunkworks" checks from ones that should always run. Later we need more fine-grain checker control. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87053 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-13Move -target-{triple,abi} options into FrontendOptions.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@87051 91177308-0d34-0410-b5e6-96231b3b80d8