aboutsummaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2009-06-25Write/Read new Language OptionsNate Begeman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74221 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-25PCH support for OpenCL language optionsNate Begeman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74220 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-25Improved semantic analysis and AST respresentation for functionDouglas Gregor
templates. For example, this now type-checks (but does not instantiate the body of deref<int>): template<typename T> T& deref(T* t) { return *t; } void test(int *ip) { int &ir = deref(ip); } Specific changes/additions: * Template argument deduction from a call to a function template. * Instantiation of a function template specializations (just the declarations) from the template arguments deduced from a call. * FunctionTemplateDecls are stored directly in declaration contexts and found via name lookup (all forms), rather than finding the FunctionDecl and then realizing it is a template. This is responsible for most of the churn, since some of the core declaration matching and lookup code assumes that all functions are FunctionDecls. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74213 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-25Patch to diagnose and Mark use of implicit default assignment operator.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74205 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-25OpenCL 1.0 Support, patch 1/N: upper case swizzle operator and hex element ↵Nate Begeman
index. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74202 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-25Introduce the ResolveLocationInAST function which takes an ASTContext and a ↵Argyrios Kyrtzidis
SourceLocation and it resolves it into a <Decl*, Stmt*> pair. Decl* is the declaration associated with this source location and Stmt* is the statement/expression that the location points to. If the location does not point to a statement node, Stmt* is null. ResolveLocationInAST (along with converting a file:line:column triplet to a SourceLocation) will be useful for an IDE client and for clang's test suite. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74197 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-25Handle PCHReader::IgnorePCH, it gets returned for when the file does not exist.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74196 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-25Set the end range location of a FunctionDecl to the right paren.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74195 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-25Fix column checking for SourceManager::getLocation().Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74194 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-25Remove declaration for unused and unimplemented static method.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74182 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-25Extra asserts never hurt anybody, right?Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74177 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-25Decltype needs to have a dependent type if the expr passed to it is type ↵Anders Carlsson
dependent. Fixes PR4444. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74175 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-25Explicit braces to avoid ambiguous ‘else’.Duncan Sands
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74171 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-25remove RegionKills GDM. Now UnknownVal is bound to regions explicitly.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74168 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-25Move element region retrieving logic into a separate function.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74166 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-25Make sure install Clang headers when building clang-ccDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74163 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-25Add missing dependencies to the CMake build systemDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74162 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-25Move all logic for retrieving ElementRegion binding into a separate method.Zhongxing Xu
Revert to setting default value approach for handling struct initialization. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74160 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-24Remove uses of std::ostream from libAnalysis.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74136 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-24Remove unneeded #includes.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74131 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-24Remove GRStateManager::GetSValAsScalarOrLoc()/GetSVal().Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74128 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-24Backed out my last patch which caused a clang-test breakage. WillFariborz Jahanian
look at it later. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74126 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-24C++ decltype support (N2343)Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74118 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-24Type::getDesugaredType needs to handle decltype types.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74115 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-24Added a missing else part to my previous patche(s).Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74108 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-24Add a DecltypeType type.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74099 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-24Parse the C++0x decltype specifier.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74086 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-24Update for LLVM API changes.Owen Anderson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74085 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-24fix the type of wchar_t for windows, PR4417Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74083 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-24Fix a clang crash caused by incorrect user code.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74080 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-24Implement matching of function templates, so that one can declare overloaded ↵Douglas Gregor
function templates. C++ [temp.over.link] paragraphs 4-8. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74079 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-24use a concrete type instead of a trait type to make code more readable.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74047 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-24RegionStore: revert to the default value approach for array initialization.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74043 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-24Make sure that the template parameter lists get from the parser down to ↵Douglas Gregor
ActOnFunctionDeclarator for function template definitions git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74040 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-24Support for [class.local]p4.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74030 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-24When declaring a function template, create a FunctionTemplateDecl nodeDouglas Gregor
and associate it with the FunctionDecl. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74028 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-24[class.local] p1 and p3. Also, add back the xcodeproj file.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74027 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-23Some changes to accomodate Doug's comment forFariborz Jahanian
implicit copy constructor definition determination. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74025 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-23Start propagating template parameter lists to the right places toDouglas Gregor
handle function templates. There's no actual code for function templates yet, but at least we complain about typedef templates. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74021 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-23Fix warning when building w/o asserts.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74020 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-23Introduce SourceManager::ísBeforeInTranslationUnit() which can compare 2 ↵Argyrios Kyrtzidis
source locations and determine which one comes before the other, relative to the translation unit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74014 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-23Update CMakeLists.txtArgyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74011 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-23Patch fixes an obscure bug when 'used' attribute is applied toFariborz Jahanian
variables in ObjC's Next runtime mode. Next runtime also implicitly applies 'used' attribute on some of its meta-data. This results in two 'llvm.used' arrays to be generated, and one of them is renamed to 'llvm.used1'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74008 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-23Eliminate DeclPtrTy() arguments to ActOnDeclarator that are just a very, ↵Douglas Gregor
very weird way to pass "false". No functionality change git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74007 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-23Remove GRStateManager::getRegion/getSelfRegion().Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74006 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-23Remove GRStateManager::BindLoc() and GRStateManager::Unbind().Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73996 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-23Remove GRStateManager::BindDecl() and GRStateManager::BindDeclWithInit().Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73995 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-23Make sure that argument-dependent lookup looks into the global scopeDouglas Gregor
when it should. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73992 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-23- Add MemRegion::getMemorySpace()Ted Kremenek
- Change implementation of MemRegion::hasStackStorage()/hasHeapStorage() to use 'getMemorySpace()'. This avoids a double traversal up the region hierarchy and is simpler. - Add MemRegion::hasHeapOrStackStorage() as a slightly more efficient alternative to 'hasStackStorage() || hasHeapStorage()'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73977 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-23Fix some TableGen-related dependencies for the Clang CMake buildDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73976 91177308-0d34-0410-b5e6-96231b3b80d8