summaryrefslogtreecommitdiffstats
path: root/clang/lib
Commit message (Collapse)AuthorAgeFilesLines
* Include changes to VisitCXXMemberCallExpr (call visitor functions).Ted Kremenek2010-09-301-6/+19
| | | | llvm-svn: 115120
* Make the FileID import map key on FileID.Sebastian Redl2010-09-301-3/+3
| | | | llvm-svn: 115118
* In MeasureTokenLength, the FileLoc supplied to the lexer must point to the ↵Sebastian Redl2010-09-301-1/+2
| | | | | | start of the buffer, or we risk overflow. llvm-svn: 115117
* Tweak nil receiver checker to not warning about 64-bit return values.Ted Kremenek2010-09-301-2/+5
| | | | | Fixes: <rdar://problem/7513117> llvm-svn: 115113
* AnalyzerStatsChecker improvements:Tom Care2010-09-291-2/+15
| | | | | | | - Use BlockEntrance rather than BlockEdge to bring in line with UnreachableCodeChecker. Fixes an issue where unreached blocks would still be counted as reachable. - Added warnings for all BlockAborted locations. This allows us to see where the analyzer stopped analyzing. llvm-svn: 115110
* Change -analyzer-max-nodes to allow 0 as a parameter. This allows the ↵Tom Care2010-09-291-2/+10
| | | | | | analyzer to completely analyze a worklist regardless of time taken. llvm-svn: 115108
* Attach aritifical attribute with implicit parameters.Devang Patel2010-09-291-3/+6
| | | | | | Radar 8493141. llvm-svn: 115104
* Emit method access specifier.Devang Patel2010-09-291-0/+6
| | | | | | Radar 8490416. llvm-svn: 115090
* When performing template argument deduction of a function templateDouglas Gregor2010-09-292-6/+16
| | | | | | | | against a function type, be sure to check the type of the resulting function template specialization against the desired function type after substituting the deduced/defaulted template arguments. Fixes PR8196. llvm-svn: 115086
* Update to reflect DIFactory::CreateSubprogram() interface change from r115084.Devang Patel2010-09-291-15/+20
| | | | llvm-svn: 115085
* Remove dead code.Devang Patel2010-09-291-7/+0
| | | | llvm-svn: 115079
* Basic: Simplify getClangRepositoryPath and getClangRevision.Daniel Dunbar2010-09-292-27/+22
| | | | | | | | | | - I don't like returning StringRef's ever, unless it is actually important for performance, which it isn't here. - Also, stop validating getClangRevision to be an integer, I don't see a good reason to do this. llvm-svn: 115071
* Add support for attribute((naked)), patch by Zoxc on cfe-commits!Daniel Dunbar2010-09-293-3/+25
| | | | | | - Minor style tweaks by me. llvm-svn: 115056
* Fix handling of dependent nested namespace specifiers in UsingDeclsDouglas Gregor2010-09-291-4/+20
| | | | | | during template instantiation, from Martin Vejnar! llvm-svn: 115051
* Basic: Add support for git svn to get the repo version in clang executable,Daniel Dunbar2010-09-292-20/+28
| | | | | | patch by Jonathan Mulder! llvm-svn: 115049
* Frontend/XML: Add support for printing nested structures, patch by Martin ↵Daniel Dunbar2010-09-291-0/+12
| | | | | | Vejnár! llvm-svn: 115041
* Define _Bool, bool, true, and false macros in <stdbool.h> when we'reDouglas Gregor2010-09-291-1/+7
| | | | | | in a GNU-compatible C++ dialect. Fixes <rdar://problem/8477819>. llvm-svn: 115028
* Move the management of the set of conversion functions in a C++ classDouglas Gregor2010-09-292-28/+45
| | | | | | | | | | into CXXRecordDecl. The only part that we do not handle this way are using declarations, since that would require extra name lookup that we don't currently want to pay for. This fixes <rdar://problem/8459981>, so that LLDB can build a CXXRecordDecl and magically get all of the right bits set. llvm-svn: 115026
* Move the maintenance of CXXRecordDecl::DefinitionData's Abstract bitDouglas Gregor2010-09-293-77/+117
| | | | | | | | | | | completely into CXXRecordDecl, by adding a new completeDefinition() function. This required a little reshuffling of the final-overrider checking code, since the "abstract" calculation in the presence of abstract base classes needs to occur in CXXRecordDecl::completeDefinition() but we don't want to compute final overriders more than one in the common case. llvm-svn: 115007
* enhance tentative parsing to handle ms extensions, patch by Martin Vejnar!Chris Lattner2010-09-281-1/+6
| | | | llvm-svn: 115004
* Teach FunctionDecl::setPure() to (indirectly) mark the Abstract bit inDouglas Gregor2010-09-283-5/+14
| | | | | | CXXRecordDecl::DefinitionData, rather than having Sema mark the bit. llvm-svn: 114993
* Reinstate r114925 and r114929, both steps towardDouglas Gregor2010-09-285-89/+80
| | | | | | <rdar://problem/8459981>. llvm-svn: 114984
* vla expressions used in __typeof__ must be evaluated.Fariborz Jahanian2010-09-284-15/+44
| | | | | | Fixes rdar://8476159. llvm-svn: 114982
* Centralize the management of CXXRecordDecl::DefinitionData's Empty bitDouglas Gregor2010-09-284-27/+39
| | | | | | | | | | | | in CXXRecordDecl itself. Yes, this is also part of <rdar://problem/8459981>. This reinstates r114924, with one crucial bug fix: we were ignoring the implicit fields created by anonymous structs/unions when updating the bits in CXXRecordDecl, which means that a class/struct containing only an anonymous class/struct would be considered "empty". Hilarity follows. llvm-svn: 114980
* Move ExternalSemaSource::ReadMethodPool's implementation to Sema.cpp so that ↵Sebastian Redl2010-09-281-0/+6
| | | | | | the header can get away with forward declarations only for ObjCMethodList and Selector. Fixes <rdar://8467631>. llvm-svn: 114978
* Reinstate r114921, which I've exonerated via a self-host build.Douglas Gregor2010-09-283-28/+48
| | | | | | | | Centralize the management of CXXRecordDecl::DefinitionData's Aggregate and PlainOldData bits in CXXRecordDecl itself. Another milepost on the road toward <rdar://problem/8459981>. llvm-svn: 114977
* When we have two identifiers in a row in Objective-C, make sure toDouglas Gregor2010-09-281-1/+1
| | | | | | | | verify that we aren't in a message-send expression before digging into the identifier or looking ahead more tokens. Fixes a regression (<rdar://problem/8483253>) I introduced with bracket insertion. llvm-svn: 114968
* Don't warn with -Wbool-conversions if the user wrote an explicit cast like ↵Argyrios Kyrtzidis2010-09-281-1/+2
| | | | | | | | "(void *)false". Fixes rdar://8459342. llvm-svn: 114955
* Don't warn for an unused label if it has 'unused' attribute. Fixes ↵Argyrios Kyrtzidis2010-09-285-7/+32
| | | | | | rdar://8483139. llvm-svn: 114954
* Fix a bug in loading macro records. Fixes yet another crash in libclang.Sebastian Redl2010-09-281-4/+5
| | | | llvm-svn: 114940
* Fix a use of an invalidated reference due to a hash map reallocating.Sebastian Redl2010-09-281-3/+8
| | | | llvm-svn: 114937
* Accidentally committed some temporary changes on my branch when reverting ↵Bill Wendling2010-09-283-75/+75
| | | | | | patches. llvm-svn: 114936
* Temporarily revert 114929 114925 114924 114921. It looked like they (or at leastBill Wendling2010-09-289-231/+214
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | one of them) was causing a series of failures: http://google1.osuosl.org:8011/builders/clang-x86_64-darwin10-selfhost/builds/4518 svn merge -c -114929 https://llvm.org/svn/llvm-project/cfe/trunk --- Reverse-merging r114929 into '.': U include/clang/Sema/Sema.h U include/clang/AST/DeclCXX.h U lib/Sema/SemaDeclCXX.cpp U lib/Sema/SemaTemplateInstantiateDecl.cpp U lib/Sema/SemaDecl.cpp U lib/Sema/SemaTemplateInstantiate.cpp U lib/AST/DeclCXX.cpp svn merge -c -114925 https://llvm.org/svn/llvm-project/cfe/trunk --- Reverse-merging r114925 into '.': G include/clang/AST/DeclCXX.h G lib/Sema/SemaDeclCXX.cpp G lib/AST/DeclCXX.cpp svn merge -c -114924 https://llvm.org/svn/llvm-project/cfe/trunk --- Reverse-merging r114924 into '.': G include/clang/AST/DeclCXX.h G lib/Sema/SemaDeclCXX.cpp G lib/Sema/SemaDecl.cpp G lib/AST/DeclCXX.cpp U lib/AST/ASTContext.cpp svn merge -c -114921 https://llvm.org/svn/llvm-project/cfe/trunk --- Reverse-merging r114921 into '.': G include/clang/AST/DeclCXX.h G lib/Sema/SemaDeclCXX.cpp G lib/Sema/SemaDecl.cpp G lib/AST/DeclCXX.cpp llvm-svn: 114933
* Centralize the management of CXXRecordDecl::DefinitionData'sDouglas Gregor2010-09-285-82/+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-272-7/+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-274-22/+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-273-28/+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-273-6/+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-272-0/+20
| | | | | | | passed to nonnull attributed functions. Implements radar 6857843. llvm-svn: 114917
* Kill FunctionDecl's IsCopyAssignment bit; it duplicated what couldDouglas Gregor2010-09-278-13/+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-272-4/+6
| | | | | | them the correct IDs. Fixes a crash in XCode. llvm-svn: 114913
* Centralize the handling ofDouglas Gregor2010-09-274-100/+116
| | | | | | | 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-273-14/+29
| | | | | | | | | | | | | 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-271-4/+11
| | | | | | | | templates whose explicit instantiation is first declared and then defined. Fixes http://llvm.org/pr8207 llvm-svn: 114874
* Issue warning for trivial cases of nonnull attributesFariborz Jahanian2010-09-271-1/+6
| | | | | | | | | (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-271-1/+6
| | | | | | | 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-271-0/+3
| | | | llvm-svn: 114820
OpenPOWER on IntegriCloud