summaryrefslogtreecommitdiffstats
path: root/clang/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* move some code around, no functionality change.Chris Lattner2009-06-261-32/+32
| | | | llvm-svn: 74260
* simplify some code.Chris Lattner2009-06-261-34/+35
| | | | llvm-svn: 74259
* When creating LookupResults, see through UsingDecls. Fixes PR4450.Anders Carlsson2009-06-261-2/+6
| | | | llvm-svn: 74258
* Fix PR4448.Anders Carlsson2009-06-263-2/+13
| | | | llvm-svn: 74257
* OpenCL 1.0 support: explicit casts to ext-vector typesNate Begeman2009-06-262-2/+41
| | | | llvm-svn: 74247
* Remove '#include <sstream>' from libAnalysis.Ted Kremenek2009-06-262-2/+1
| | | | llvm-svn: 74245
* Update method signature.Ted Kremenek2009-06-261-2/+3
| | | | llvm-svn: 74244
* Unbreak build.Ted Kremenek2009-06-261-0/+346
| | | | llvm-svn: 74238
* Implicit instantiation for function template specializations.Douglas Gregor2009-06-265-10/+47
| | | | | | | | | For a FunctionDecl that has been instantiated due to template argument deduction, we now store the primary template from which it was instantiated and the deduced template arguments. From this information, we can instantiate the body of the function template. llvm-svn: 74232
* Remove orphaned header file.Ted Kremenek2009-06-261-80/+0
| | | | llvm-svn: 74231
* Introduce a new concept to the static analyzer: SValuator.Ted Kremenek2009-06-269-522/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | GRTransferFuncs had the conflated role of both constructing SVals (symbolic expressions) as well as handling checker-specific logic. Now SValuator has the role of constructing SVals from expressions and GRTransferFuncs just handles checker-specific logic. The motivation is by separating these two concepts we will be able to much more easily create richer constraint-generating logic without coupling it to the main checker transfer function logic. We now have one implementation of SValuator: SimpleSValuator. SimpleSValuator is essentially the SVal-related logic that was in GRSimpleVals (which is removed in this patch). This includes the logic for EvalBinOp, EvalCast, etc. Because SValuator has a narrower role than the old GRTransferFuncs, the interfaces are much simpler, and so is the implementation of SimpleSValuator compared to GRSimpleVals. I also did a line-by-line review of SVal-related logic in GRSimpleVals and cleaned it up while moving it over to SimpleSValuator. As a consequence of removing GRSimpleVals, there is no longer a '-checker-simple' option. The '-checker-cfref' did everything that option did but also ran the retain/release checker. Of course a user may not always wish to run the retain/release checker, nor do we wish core analysis logic buried in the checker-specific logic. The next step is to refactor the logic in CFRefCount.cpp to separate out these pieces into the core analysis engine. llvm-svn: 74229
* OpenCL 1.0 Support: support "bool, true, false" tokens when compiling for OpenCLNate Begeman2009-06-251-1/+3
| | | | llvm-svn: 74224
* Write/Read new Language OptionsNate Begeman2009-06-252-0/+4
| | | | llvm-svn: 74221
* PCH support for OpenCL language optionsNate Begeman2009-06-251-0/+2
| | | | llvm-svn: 74220
* Improved semantic analysis and AST respresentation for functionDouglas Gregor2009-06-2513-48/+398
| | | | | | | | | | | | | | | | | | | | | | | | | | 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. llvm-svn: 74213
* Patch to diagnose and Mark use of implicit default assignment operator.Fariborz Jahanian2009-06-253-1/+105
| | | | llvm-svn: 74205
* OpenCL 1.0 Support, patch 1/N: upper case swizzle operator and hex element ↵Nate Begeman2009-06-252-3/+3
| | | | | | index. llvm-svn: 74202
* Introduce the ResolveLocationInAST function which takes an ASTContext and a ↵Argyrios Kyrtzidis2009-06-252-0/+323
| | | | | | | | | | | 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. llvm-svn: 74197
* Handle PCHReader::IgnorePCH, it gets returned for when the file does not exist.Argyrios Kyrtzidis2009-06-251-5/+1
| | | | llvm-svn: 74196
* Set the end range location of a FunctionDecl to the right paren.Argyrios Kyrtzidis2009-06-251-0/+3
| | | | llvm-svn: 74195
* Fix column checking for SourceManager::getLocation().Argyrios Kyrtzidis2009-06-251-1/+1
| | | | llvm-svn: 74194
* Remove declaration for unused and unimplemented static method.Ted Kremenek2009-06-251-6/+0
| | | | llvm-svn: 74182
* Extra asserts never hurt anybody, right?Anders Carlsson2009-06-251-0/+2
| | | | llvm-svn: 74177
* Decltype needs to have a dependent type if the expr passed to it is type ↵Anders Carlsson2009-06-251-0/+3
| | | | | | dependent. Fixes PR4444. llvm-svn: 74175
* Explicit braces to avoid ambiguous ‘else’.Duncan Sands2009-06-251-1/+2
| | | | llvm-svn: 74171
* remove RegionKills GDM. Now UnknownVal is bound to regions explicitly.Zhongxing Xu2009-06-251-44/+5
| | | | llvm-svn: 74168
* Move element region retrieving logic into a separate function.Zhongxing Xu2009-06-251-31/+58
| | | | llvm-svn: 74166
* Make sure install Clang headers when building clang-ccDouglas Gregor2009-06-251-1/+1
| | | | llvm-svn: 74163
* Add missing dependencies to the CMake build systemDouglas Gregor2009-06-251-1/+4
| | | | llvm-svn: 74162
* Move all logic for retrieving ElementRegion binding into a separate method.Zhongxing Xu2009-06-251-10/+54
| | | | | | Revert to setting default value approach for handling struct initialization. llvm-svn: 74160
* Remove uses of std::ostream from libAnalysis.Ted Kremenek2009-06-2410-72/+45
| | | | llvm-svn: 74136
* Remove unneeded #includes.Ted Kremenek2009-06-241-3/+0
| | | | llvm-svn: 74131
* Remove GRStateManager::GetSValAsScalarOrLoc()/GetSVal().Ted Kremenek2009-06-242-2/+17
| | | | llvm-svn: 74128
* Backed out my last patch which caused a clang-test breakage. WillFariborz Jahanian2009-06-241-1/+1
| | | | | | look at it later. llvm-svn: 74126
* C++ decltype support (N2343)Anders Carlsson2009-06-242-7/+32
| | | | llvm-svn: 74118
* Type::getDesugaredType needs to handle decltype types.Anders Carlsson2009-06-241-0/+2
| | | | llvm-svn: 74115
* Added a missing else part to my previous patche(s).Fariborz Jahanian2009-06-241-2/+1
| | | | llvm-svn: 74108
* Add a DecltypeType type.Anders Carlsson2009-06-246-1/+56
| | | | llvm-svn: 74099
* Parse the C++0x decltype specifier.Anders Carlsson2009-06-244-1/+74
| | | | llvm-svn: 74086
* Update for LLVM API changes.Owen Anderson2009-06-243-3/+6
| | | | llvm-svn: 74085
* fix the type of wchar_t for windows, PR4417Chris Lattner2009-06-241-1/+1
| | | | llvm-svn: 74083
* Fix a clang crash caused by incorrect user code.Fariborz Jahanian2009-06-241-1/+3
| | | | llvm-svn: 74080
* Implement matching of function templates, so that one can declare overloaded ↵Douglas Gregor2009-06-242-9/+36
| | | | | | function templates. C++ [temp.over.link] paragraphs 4-8. llvm-svn: 74079
* use a concrete type instead of a trait type to make code more readable.Zhongxing Xu2009-06-241-2/+1
| | | | llvm-svn: 74047
* RegionStore: revert to the default value approach for array initialization.Zhongxing Xu2009-06-241-8/+5
| | | | llvm-svn: 74043
* Make sure that the template parameter lists get from the parser down to ↵Douglas Gregor2009-06-245-3/+37
| | | | | | ActOnFunctionDeclarator for function template definitions llvm-svn: 74040
* Support for [class.local]p4.Anders Carlsson2009-06-242-1/+9
| | | | llvm-svn: 74030
* When declaring a function template, create a FunctionTemplateDecl nodeDouglas Gregor2009-06-242-3/+24
| | | | | | and associate it with the FunctionDecl. llvm-svn: 74028
* [class.local] p1 and p3. Also, add back the xcodeproj file.Anders Carlsson2009-06-243-15/+36
| | | | llvm-svn: 74027
* Some changes to accomodate Doug's comment forFariborz Jahanian2009-06-231-12/+7
| | | | | | implicit copy constructor definition determination. llvm-svn: 74025
OpenPOWER on IntegriCloud