summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
* Centralize the management of CXXRecordDecl::DefinitionData'sDouglas Gregor2010-09-287-113/+69
| | | | | | | | | | | HasTrivialConstructor, HasTrivialCopyConstructor, HasTrivialCopyAssignment, and HasTrivialDestructor bits in CXXRecordDecl's methods. This completes all but the Abstract bit and the set of conversion functions, both of which will require a bit of extra work. The majority of <rdar://problem/8459981> is now implemented (but not all of it). llvm-svn: 114929
* Centralize the management of CXXRecordDecl::DefinitionData'sDouglas Gregor2010-09-273-11/+11
| | | | | | | Polymorphic bit in CXXRecordDecl itself. Yes, this is also part of <rdar://problem/8459981>. llvm-svn: 114925
* Centralize the management of CXXRecordDecl::DefinitionData's Empty bitDouglas Gregor2010-09-275-25/+28
| | | | | | in CXXRecordDecl itself. Yes, this is also part of <rdar://problem/8459981>. llvm-svn: 114924
* My previous fix was incorrect for non-chained PCH reuse. Fix again.Sebastian Redl2010-09-271-1/+1
| | | | llvm-svn: 114922
* Centralize the management of CXXRecordDecl::DefinitionData's AggregateDouglas Gregor2010-09-274-35/+48
| | | | | | | and PlainOldData bits in CXXRecordDecl itself. Another milepost on the road toward <rdar://problem/8459981>. llvm-svn: 114921
* Centralize the handling of CXXRecordDecl::DefinitionData'sDouglas Gregor2010-09-274-20/+10
| | | | | | | DeclaredDestructor and UserDeclaredDestructor bits in CXXRecordDecl itself. Another step on the road to <rdar://problem/8459981>. llvm-svn: 114918
* Patch to support transparent_union argumentsFariborz Jahanian2010-09-273-0/+39
| | | | | | | passed to nonnull attributed functions. Implements radar 6857843. llvm-svn: 114917
* Kill FunctionDecl's IsCopyAssignment bit; it duplicated what couldDouglas Gregor2010-09-279-18/+8
| | | | | | | | already be determined by isCopyAssignmentOperator(), and was set too late in the process for all clients to see the appropriate value. Cleanup only; no functionality change. llvm-svn: 114916
* When chaining PCHs, only write PPRecords that don't come from PCH, and give ↵Sebastian Redl2010-09-273-4/+10
| | | | | | them the correct IDs. Fixes a crash in XCode. llvm-svn: 114913
* Centralize the handling ofDouglas Gregor2010-09-275-116/+120
| | | | | | | CXXRecordDecl::DefinitionData::DeclaredCopyAssignment, for copy-assignment operators. Another step toward <rdar://problem/8459981>. llvm-svn: 114899
* Revert my patch changing the MMX "shift" intrinsics that take immediates intoBill Wendling2010-09-271-8/+8
| | | | | | | "shift with non-immediate" intrinsics. It gets here because we they aren't immediates anymore. llvm-svn: 114890
* Clean up the handling of the DeclaredDefaultConstructor andDouglas Gregor2010-09-274-31/+39
| | | | | | | | | | | | | DeclaredCopyConstructor bits in CXXRecordDecl's DefinitionData structure. Rather than having Sema call addedConstructor or set the bits directly at semi-random places, move all of the logic for managing these bits into CXXRecordDecl itself and tie the addedConstructor call into DeclContext::addDecl(). This makes it easier for AST-building clients to get the right bits set in DefinitionData, and is one small part of <rdar://problem/8459981>. llvm-svn: 114889
* Correctly set "explicit template instantiation" kind on inner structs of ↵Nico Weber2010-09-272-4/+35
| | | | | | | | templates whose explicit instantiation is first declared and then defined. Fixes http://llvm.org/pr8207 llvm-svn: 114874
* Let lit give helpful advice if 'make test' was not run yet.Nico Weber2010-09-271-1/+2
| | | | llvm-svn: 114869
* utils/ABITest: Factor out type naming code slightly.Daniel Dunbar2010-09-272-10/+24
| | | | llvm-svn: 114867
* utils/ABITest: Tweak default bit-field types to cover some more interesting ↵Daniel Dunbar2010-09-271-2/+4
| | | | | | cases. llvm-svn: 114866
* utils/ABITest: Add a workaround for mismatches due to PR5579.Daniel Dunbar2010-09-271-1/+7
| | | | llvm-svn: 114865
* utils/ABITest: Add option to skip individual tests by index.Daniel Dunbar2010-09-271-0/+6
| | | | llvm-svn: 114864
* Frontend: Teach clang -cc1as to respond to -v.Daniel Dunbar2010-09-271-0/+1
| | | | llvm-svn: 114863
* Issue warning for trivial cases of nonnull attributesFariborz Jahanian2010-09-274-3/+15
| | | | | | | | | (on functions with no pointer arguments) but only when the attribute has not been coming from a macro instantiation in a header file. Fixes first part of radar 6857843. llvm-svn: 114860
* Copying result of object property reference expressionFariborz Jahanian2010-09-273-3/+9
| | | | | | | into a temporary is elidable as well. (Finishes up radar 8291337). llvm-svn: 114845
* Remove libclang logging codeDouglas Gregor2010-09-271-32/+2
| | | | llvm-svn: 114836
* Fixed isConstantInitializer for __builtin_choose_expr.Abramo Bagnara2010-09-272-2/+6
| | | | llvm-svn: 114820
* Fix coding standard mistake from my last commit.Michael J. Spencer2010-09-271-1/+1
| | | | | | That, and keep aKor happy :P. llvm-svn: 114816
* Lexer: Implement GCC's version of pragma message.Michael J. Spencer2010-09-272-15/+40
| | | | llvm-svn: 114814
* Enable caching of global code completion results in the suggestedDouglas Gregor2010-09-271-1/+2
| | | | | | libclang options for editing a translation unit. llvm-svn: 114810
* Driver/Linux: Translate rewritten lib options back to standard -l form whenDaniel Dunbar2010-09-251-2/+11
| | | | | | using generic GCC tools. llvm-svn: 114793
* In preparation for adding generation of destructors for objects with ↵Marcin Swiderski2010-09-251-43/+166
| | | | | | | | | | automatic storage added: - LocalScope class with iterator used to pointing into it, - fat doxygen comment for LocalScope indended usage, - BlockScopePosPair class used for storing jump targets/sources (for: goto, break, continue), that replaces raw CFGBlock pointer used earlier for this purpose. llvm-svn: 114790
* Fix a NYI in IRGen which was due to incorrect ASTFariborz Jahanian2010-09-252-2/+46
| | | | | | | for property reference expression (of c++ object type) in the conditional expression. Fixes // rdar://8291337 llvm-svn: 114783
* When setting the globally-visible declarations for a particularDouglas Gregor2010-09-245-7/+52
| | | | | | | | | | | | | identifier, we may have a Sema object but no translation unit scope (because parsing is finished). In this case, we still need to update the IdResolver, which might still be used when writing a PCH containing another PCH (without chaining). This bug manifested as a failure with precompiled preambles. Also, add a little environment-variable-sensitive logging for libclang. llvm-svn: 114774
* Allow the use of C++0x deleted functions as an extension in C++98.Anders Carlsson2010-09-249-12/+38
| | | | llvm-svn: 114762
* Teach libclang to enable multithreading in LLVM, since libclang clients are ↵Douglas Gregor2010-09-242-2/+17
| | | | | | likely to be multithreaded. Also move the printing of timers to somewhere better for multithreaded libclang clients llvm-svn: 114760
* Driver: Add -fallow-unsupported which disables some of the eager error'ing we doDaniel Dunbar2010-09-242-12/+15
| | | | | | to prevent users from trying unsupported stuff. Useful for testing. llvm-svn: 114749
* Fix rewriting of property declared in @protocol's.Fariborz Jahanian2010-09-242-0/+13
| | | | | | Fixed //rdar://8472487. llvm-svn: 114741
* Patch implements passing arrays to functions expectingFariborz Jahanian2010-09-2413-29/+128
| | | | | | vla. Implements pr7827. llvm-svn: 114737
* Update Clang man page to say a little bit more about C++Douglas Gregor2010-09-241-3/+4
| | | | llvm-svn: 114735
* Remove this test for now until I figure out how to get it to work with ↵Ted Kremenek2010-09-241-88/+0
| | | | | | c-index-test in a portable way. llvm-svn: 114721
* Pass -fobjc-nonfragile-abi2 in test.Ted Kremenek2010-09-241-1/+1
| | | | llvm-svn: 114720
* Since this test depends on default ivar synthesis, specify the target ↵Ted Kremenek2010-09-241-1/+1
| | | | | | | | triple. This hopefully unbreaks the buildbot on some archs. llvm-svn: 114716
* Update comment in test with reference to bug report.Ted Kremenek2010-09-241-1/+1
| | | | llvm-svn: 114715
* Default synthesized ivars don't really have a location in the source. Using ↵Ted Kremenek2010-09-242-3/+96
| | | | | | | | | the location of the @implementation is just confusing for clients that want to use SourceLocations for syntactic references. Fixes: <rdar://problem/8470540> llvm-svn: 114714
* Revert r114712 due to failure on darwin buildbot.Nick Lewycky2010-09-241-10/+4
| | | | llvm-svn: 114713
* Make -M/-MM behave like in gcc; use -MF first then -o else use stdout.Nick Lewycky2010-09-231-4/+10
| | | | llvm-svn: 114712
* Fix header comment so we don't break emacs.Nick Lewycky2010-09-232-2/+2
| | | | llvm-svn: 114711
* Synchronize globally-cached code completion results with the resultsDouglas Gregor2010-09-235-84/+125
| | | | | | | | | | | | | | provided when the optimization is disabled. In particular, split the completion context CCC_Other into two contexts: CCC_Other, which means that it's an undisclosed context for which any other results are unwelcome, and CCC_Recovery, which is used in recovery cases. Since we're now using the completion context within the completion results builder, make sure that it's always set to something. Fixes <rdar://problem/8470644>. llvm-svn: 114704
* Fix typo.Nick Lewycky2010-09-231-1/+1
| | | | llvm-svn: 114697
* When warning about comparing an unsigned int to being >= 0, don't issue a ↵Ted Kremenek2010-09-232-1/+28
| | | | | | | | | warning if the zero value was an enum or was expanded from a macro. Fixes: <rdar://problem/8414119> llvm-svn: 114695
* Add test case for c-index-test showing that @property declarations added in ↵Ted Kremenek2010-09-231-0/+15
| | | | | | | | class extensions don't get reported in the @interface. llvm-svn: 114694
* For properties declared in a @protocol and redeclared in a class extension, ↵Ted Kremenek2010-09-233-7/+41
| | | | | | | | | use the class extension as the lexical DeclContext for the @property declaration that gets auto-created for the @interface. Fixes: <rdar://problem/8467189> llvm-svn: 114693
* Add some missing concurrency checks into libclangDouglas Gregor2010-09-232-3/+9
| | | | llvm-svn: 114682
OpenPOWER on IntegriCloud