summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge 82194 from mainline.upstream/release_26Tanya Lattner2009-09-181-0/+1
| | | | | | | | don't stick an uninitialized 'stat' buf into the stat cache, fill it with zeros. This avoids a GCC warning (PR5000) git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_26@82195 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge 81668 from mainline.Tanya Lattner2009-09-131-24/+24
| | | | | | | Some formatting tweaks to clang(1) git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_26@81700 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge 81667 from mainline.Tanya Lattner2009-09-131-0/+49
| | | | | | | Add minimal INSTALL.txt git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_26@81698 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge 81238 from mainline.Tanya Lattner2009-09-081-36/+43
| | | | | | | | convert this to filecheck, hopefully it will fix PR4888. If nothing else it will make tests run faster and make 4888 easier to diagnose. git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_26@81286 91177308-0d34-0410-b5e6-96231b3b80d8
* Patch to fix PR4061.Tanya Lattner2009-09-081-3/+13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_26@81284 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge 81236 from mainline.Tanya Lattner2009-09-085-37/+53
| | | | | | | | | | | | Fix PR4922, where Sema would complete tentative definitions in nondeterminstic order because it was doing so while iterating over a densemap. There are still similar problems in other places, for example WeakUndeclaredIdentifiers is still written to the PCH file in a nondeterminstic order, and we emit warnings about #pragma weak in nondeterminstic order. git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_26@81280 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge 80808 from mainline.Tanya Lattner2009-09-042-2/+17
| | | | | | | Packed unions should be packed. Fixes an assert Daniel reported. git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_26@81036 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge 80964 from mainline.Tanya Lattner2009-09-042-1/+27
| | | | | | | If the alignment of the chosen field in a union is greater than the alignment of the union, we need to use a packed LLVM struct. Fixes <rdar://problem/7184250>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_26@81035 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge 80933 from mainline.Tanya Lattner2009-09-041-1/+3
| | | | | | | Don't use '%ll', this doesn't workin on Win32. git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_26@81034 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge from mainlien.Tanya Lattner2009-08-311-1/+1
| | | | | | | | Fix the start source location for type-specs like long, short, etc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_26@80559 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge from mainline.Tanya Lattner2009-08-311-1/+1
| | | | | | | Fix TypeLoc::operator bool(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_26@80558 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge from mainlineTanya Lattner2009-08-311-2/+3
| | | | | | | | convert to filecheck and force a triple so that this passes on big endian hosts. Fixes PR4792 git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_26@80556 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge from mainline.Tanya Lattner2009-08-3111-0/+32
| | | | | | | Don't install Clang libraries git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_26@80547 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge from mainline.Tanya Lattner2009-08-314-20/+22
| | | | | | | | | Fix a few tests to be -Asserts agnostic. - Ugh. fix a GCC type punning warning. git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_26@80546 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge from mainline.Tanya Lattner2009-08-311-1/+14
| | | | | | | | | Temporarily switch clang back to not using clang-cc by default for C++, and only using clang-cc on i386 and x86_64. git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_26@80545 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge 79781 from mainline. Tanya Lattner2009-08-222-2/+29
| | | | | | | | Type of a ?: expression whose either expression is a built-in 'id' type is 'id' type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_26@79788 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge 79776 from mainline.Tanya Lattner2009-08-224-4/+19
| | | | | | | | Don't issue warning on multiple selector found when selector name is for a @selector expression. git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_26@79786 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge from mainline.Tanya Lattner2009-08-222-21/+19
| | | | | | | | | | | | | tweak some pointer sema checking stuff (which was added to implement PR4175) to avoid emitting a warning on "someptr > 0". This is obviously questionable (they could use != instead) but is reasonable, and the warning "ordered comparison between pointer and integer" didn't make a ton of sense because 0 is a valid null pointer constant. Just silence the warning in this case, it is unlikely to indicate a bug. git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_26@79783 91177308-0d34-0410-b5e6-96231b3b80d8
* Create 2.6 release branch.Tanya Lattner2009-08-220-0/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_26@79724 91177308-0d34-0410-b5e6-96231b3b80d8
* Second half of, clang, AuroraUX toolchain support.Edward O'Callaghan2009-08-227-4/+275
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79713 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement delayed parsing for member function templates. Fixes PR4608.Douglas Gregor2009-08-226-20/+55
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79709 91177308-0d34-0410-b5e6-96231b3b80d8
* Updated statuc page to reflect recent implementationsFariborz Jahanian2009-08-221-12/+12
| | | | | | | of section 12 [special member functions] git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79704 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove 'AnalysisContext::setDecl()', as we the Decl associated with anTed Kremenek2009-08-2113-46/+52
| | | | | | | | AnalysisContext should never change. Along the way, propagate some constness around. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79701 91177308-0d34-0410-b5e6-96231b3b80d8
* Constify LocationContext* (parent) and Stmt* fields in LocationContext.Ted Kremenek2009-08-212-23/+30
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79700 91177308-0d34-0410-b5e6-96231b3b80d8
* Add test taking the address of a member function template and converting it ↵Douglas Gregor2009-08-211-0/+11
| | | | | | to a member pointer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79699 91177308-0d34-0410-b5e6-96231b3b80d8
* Update Clang C++ status to better reflect what is implemented.Douglas Gregor2009-08-211-24/+21
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79695 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove 'SelfRegion' field from both BasicStoreManager and RegionStoreManager.Ted Kremenek2009-08-218-88/+58
| | | | | | | | | | | | | | | | | | | SelfRegion represented the object bound to 'self' (when analyzing Objective-C methods) upon entry to a method. Having this region stored on the side ignores the current stack frame that we might be analyzing (among other things), and is a problem for interprocedural analysis. For RegionStoreManager, the value for SelfRegion is just lazily created. For BasicStoreManager, the value for SelfRegion is bound eagerly to 'self', but no explicit tracking of SelfRegion on the side is made. As part of this change, remove the restriction in BasicStoreManager that we only track ivars for 'self'. This shouldn't actually change anything in terms of precision, and simplifies the logic. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79694 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement conversion function templates, along with the ability to useDouglas Gregor2009-08-2111-72/+461
| | | | | | | | template argument deduction from a conversion function (C++ [temp.deduct.conv]) with implicit conversions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79693 91177308-0d34-0410-b5e6-96231b3b80d8
* Calculate the address point for a vtable better, and start fleshing out the ↵Mike Stump2009-08-211-16/+48
| | | | | | | | | vcall calculations better. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79687 91177308-0d34-0410-b5e6-96231b3b80d8
* Refactor instantiation of destructors to use the common CXXMethodDeclDouglas Gregor2009-08-212-34/+24
| | | | | | | | | | | | code, fixing a problem where instantiations of out-of-line destructor definitions would had the wrong lexical context. Introduce tests for out-of-line definitions of the constructors, destructors, and conversion functions of a class template partial specialization. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79682 91177308-0d34-0410-b5e6-96231b3b80d8
* Patch to ir-gen copy assigning array members when synthesizing Fariborz Jahanian2009-08-213-7/+116
| | | | | | | | a copy assignment operator function. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79681 91177308-0d34-0410-b5e6-96231b3b80d8
* Add LocationContext* field to VarRegion. This is needed for interprocedural ↵Ted Kremenek2009-08-219-77/+125
| | | | | | analysis. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79680 91177308-0d34-0410-b5e6-96231b3b80d8
* Add test for out-of-line definition of a conversion functionDouglas Gregor2009-08-211-0/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79679 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix parsing for out-of-line definitions of constructors andDouglas Gregor2009-08-212-2/+11
| | | | | | | destructors of class templates. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79678 91177308-0d34-0410-b5e6-96231b3b80d8
* Introduce support for constructor templates, which can now be declaredDouglas Gregor2009-08-218-92/+127
| | | | | | | | | | and will participate in overload resolution. Unify the instantiation of CXXMethodDecls and CXXConstructorDecls, which had already gotten out-of-sync. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79658 91177308-0d34-0410-b5e6-96231b3b80d8
* Patch to provide ir-gen support in copying array membersFariborz Jahanian2009-08-213-10/+136
| | | | | | | | when synthesizing a copy constructor. Arrays's base element may have a trivial or non-trivial copy constructor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79653 91177308-0d34-0410-b5e6-96231b3b80d8
* Testcase for a recent checkin.Mike Stump2009-08-211-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79646 91177308-0d34-0410-b5e6-96231b3b80d8
* remove a dead warning.Chris Lattner2009-08-211-2/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79641 91177308-0d34-0410-b5e6-96231b3b80d8
* Array member construction in prologue of user-declaredFariborz Jahanian2009-08-212-6/+20
| | | | | | | constructors. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79640 91177308-0d34-0410-b5e6-96231b3b80d8
* Introduce getConstantArrayElementCount API and use it inFariborz Jahanian2009-08-213-16/+20
| | | | | | | construction/destruction of array members. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79637 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix typo.Mike Stump2009-08-211-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79632 91177308-0d34-0410-b5e6-96231b3b80d8
* Eagerly bind 'self' to SelfRegion. Thus we do not need to get code decl fromZhongxing Xu2009-08-211-19/+25
| | | | | | | GRStateManager to create the SelfRegion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79628 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix commentosDaniel Dunbar2009-08-211-8/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79610 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix refacto.Daniel Dunbar2009-08-211-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79609 91177308-0d34-0410-b5e6-96231b3b80d8
* Reversing part of 79544.Sanjiv Gupta2009-08-211-16/+0
| | | | | | | Need to find a new way to do target specific semanitc checking. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79596 91177308-0d34-0410-b5e6-96231b3b80d8
* Get the code decl from the initial location context.Zhongxing Xu2009-08-211-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79591 91177308-0d34-0410-b5e6-96231b3b80d8
* Get the code decl from the initial location context.Zhongxing Xu2009-08-211-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79590 91177308-0d34-0410-b5e6-96231b3b80d8
* gcc told me to add these.Daniel Dunbar2009-08-211-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79589 91177308-0d34-0410-b5e6-96231b3b80d8
* Tie the local check NSErrorCheck to a Decl to pave the wayZhongxing Xu2009-08-215-25/+25
| | | | | | | to untie the ExplodedGraph from a specific Decl. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79588 91177308-0d34-0410-b5e6-96231b3b80d8
* We now support overriding base functions in vtables. WIP.Mike Stump2009-08-213-17/+102
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79587 91177308-0d34-0410-b5e6-96231b3b80d8