4c362d5310 
								
							 
						 
						
							
							
								
								Expose more statement, expression, and declaration kinds in libclang,  
							
							... 
							
							
							
							from Manuel Holtgrewe!
llvm-svn: 141200 
							
						 
						
							2011-10-05 19:00:14 +00:00  
				
					
						
							
							
								 
						
							
								01e3c590ae 
								
							 
						 
						
							
							
								
								[libclang] For getDeclFromExpr in CIndex.cpp, associate the decl of  
							
							... 
							
							
							
							a DeclRefExpr, MemberExpr, etc. with a CastExpr if it is ImplicitCast,
since the implicit cast is the one that is invisible in source code.
llvm-svn: 139547 
							
						 
						
							2011-09-12 22:17:26 +00:00  
				
					
						
							
							
								 
						
							
								0274487d97 
								
							 
						 
						
							
							
								
								Enable -fdelayed-template-parsing by default on Win32.  
							
							... 
							
							
							
							I had to force -fno-delayed-template-parsing on some Index tests because delayed template parsing will change the output of some tests.
llvm-svn: 138942 
							
						 
						
							2011-09-01 16:38:08 +00:00  
				
					
						
							
							
								 
						
							
								dff1930bf7 
								
							 
						 
						
							
							
								
								Fixed source range for all DeclaratorDecl's.  
							
							... 
							
							
							
							llvm-svn: 127225 
							
						 
						
							2011-03-08 08:55:46 +00:00  
				
					
						
							
							
								 
						
							
								b3185b00c5 
								
							 
						 
						
							
							
								
								Fixed TypedefDecl and TemplateTypeParameter source range.  
							
							... 
							
							
							
							llvm-svn: 127119 
							
						 
						
							2011-03-06 15:48:19 +00:00  
				
					
						
							
							
								 
						
							
								4478f858b5 
								
							 
						 
						
							
							
								
								Add the location of the right parenthesis of a C++ named cast  
							
							... 
							
							
							
							(static_cast, dynamic_cast, reinterpret_cast, or const_cast) to
improve source-location information. Fixes PR8960.
llvm-svn: 123336 
							
						 
						
							2011-01-12 22:41:29 +00:00  
				
					
						
							
							
								 
						
							
								16443fdd31 
								
							 
						 
						
							
							
								
								Teach clang_getCursorReferenced() that a  
							
							... 
							
							
							
							CXXConstructorExpr/CXXTemporaryObjectExpr references the constructor
it calls. Then, tweak clang_getCursor() to prefer such a call over a
type reference to the type being called.
llvm-svn: 118297 
							
						 
						
							2010-11-05 21:11:19 +00:00  
				
					
						
							
							
								 
						
							
								0171815ae1 
								
							 
						 
						
							
							
								
								Improve the tracking of source locations for parentheses in constructor calls.  
							
							... 
							
							
							
							This adds them where missing, and traces them through PCH. We fix at least one
bug in the extents found by the Index library, and make a lot of refactoring
tools which care about the exact formulation of a constructor call easier to
write. Also some minor cleanups to more consistently follow the friend pattern
instead of the setter pattern when rebuilding a serialized AST.
Patch originally by Samuel Benzaquen.
llvm-svn: 117254 
							
						 
						
							2010-10-25 08:47:36 +00:00  
				
					
						
							
							
								 
						
							
								3478c75b71 
								
							 
						 
						
							
							
								
								Provide proper source location and range information for C++ base  
							
							... 
							
							
							
							specifier cursors in libclang. FIXME -=2, fixes the rest of
<rdar://problem/8274883>.
llvm-svn: 115419 
							
						 
						
							2010-10-02 19:51:13 +00:00  
				
					
						
							
							
								 
						
							
								a93ab66331 
								
							 
						 
						
							
							
								
								Add libclang support for label statements, gotos, and taking the  
							
							... 
							
							
							
							address of a label (GNU extension).
llvm-svn: 113564 
							
						 
						
							2010-09-10 00:22:18 +00:00  
				
					
						
							
							
								 
						
							
								f3af311382 
								
							 
						 
						
							
							
								
								Teach libclang to walk the base and member initializers of a  
							
							... 
							
							
							
							constructor, in source order. Also introduces a new reference kind for
class members, which is used here (for member initializers) and will
also be used for designated initializers and offsetof.
llvm-svn: 113545 
							
						 
						
							2010-09-09 21:42:20 +00:00  
				
					
						
							
							
								 
						
							
								54e5b13a27 
								
							 
						 
						
							
							
								
								Add proper type-source information to UnaryTypeTraitExpr, including  
							
							... 
							
							
							
							libclang visitation.
llvm-svn: 113492 
							
						 
						
							2010-09-09 16:14:44 +00:00  
				
					
						
							
							
								 
						
							
								2b88c115f9 
								
							 
						 
						
							
							
								
								Provide proper type-source location information for  
							
							... 
							
							
							
							CXXTemporaryObjectExpr, CXXScalarValueInitExpr, and
CXXUnresolvedConstructExpr, getting rid of a bunch of FIXMEs in the
process.
llvm-svn: 113319 
							
						 
						
							2010-09-08 00:15:04 +00:00  
				
					
						
							
							
								 
						
							
								0744ef6371 
								
							 
						 
						
							
							
								
								Improve source-location information for CXXNewExpr, by hanging on to  
							
							... 
							
							
							
							the TypeSourceInfo for the allocated type. Fixes PR7501.
llvm-svn: 113291 
							
						 
						
							2010-09-07 21:49:58 +00:00  
				
					
						
							
							
								 
						
							
								901a0fabfc 
								
							 
						 
						
							
							
								
								Implement libclang visitation for UnresolvedMemberExpr. This is the  
							
							... 
							
							
							
							last of the C++-specific expressions where we have decent source
information in the AST already. In particular, various
object-construction expressions (CXXNewExpr, CXXTemporaryObjectExpr)
still have poor source-location information that needs to be addressed.
llvm-svn: 112981 
							
						 
						
							2010-09-03 18:01:25 +00:00  
				
					
						
							
							
								 
						
							
								4583827e13 
								
							 
						 
						
							
							
								
								libclang visitation for CXXDependentScopeMemberExpr  
							
							... 
							
							
							
							llvm-svn: 112978 
							
						 
						
							2010-09-03 17:35:34 +00:00  
				
					
						
							
							
								 
						
							
								4ae34afaf9 
								
							 
						 
						
							
							
								
								libclang visitation for DependentScopeDeclRefExpr  
							
							... 
							
							
							
							llvm-svn: 112975 
							
						 
						
							2010-09-03 17:24:10 +00:00  
				
					
						
							
							
								 
						
							
								f24eaee2b3 
								
							 
						 
						
							
							
								
								Teach libclang to visit OverloadExprs, so that we can reuse this  
							
							... 
							
							
							
							code. Also, teach it about explicitly-specified template arguments.
llvm-svn: 112884 
							
						 
						
							2010-09-02 22:29:21 +00:00  
				
					
						
							
							
								 
						
							
								3ca46b4275 
								
							 
						 
						
							
							
								
								Add libclang visitation for UnresolvedLookupExprs  
							
							... 
							
							
							
							llvm-svn: 112879 
							
						 
						
							2010-09-02 22:19:24 +00:00  
				
					
						
							
							
								 
						
							
								4edb2ff89f 
								
							 
						 
						
							
							
								
								Add libclang visitation for C++ pseudo-destructor expressions.  
							
							... 
							
							
							
							llvm-svn: 112873 
							
						 
						
							2010-09-02 22:09:03 +00:00  
				
					
						
							
							
								 
						
							
								46af501065 
								
							 
						 
						
							
							
								
								Add libclang visitation for C++ typeid expressions.  
							
							... 
							
							
							
							llvm-svn: 112862 
							
						 
						
							2010-09-02 21:20:16 +00:00  
				
					
						
							
							
								 
						
							
								ae9e221513 
								
							 
						 
						
							
							
								
								Implement CXCursor support for walking C++ base specifiers.  This includes adding the API hooks clang_isVirtualBase() and clang_getCXXAccessSpecifier() to query properties of the base specifier.  
							
							... 
							
							
							
							Implements <rdar://problem/8274883>.
llvm-svn: 112296 
							
						 
						
							2010-08-27 21:34:58 +00:00  
				
					
						
							
							
								 
						
							
								12e0f2937e 
								
							 
						 
						
							
							
								
								Specially handle CaseStmts in CursorVisitor because they can be nested and walking them  
							
							... 
							
							
							
							can blow out the stack.
llvm-svn: 103687 
							
						 
						
							2010-05-13 00:25:00 +00:00  
				
					
						
							
							
								 
						
							
								c316e4ef50 
								
							 
						 
						
							
							
								
								Make test portable.  
							
							... 
							
							
							
							llvm-svn: 103588 
							
						 
						
							2010-05-12 07:24:45 +00:00  
				
					
						
							
							
								 
						
							
								8278a32802 
								
							 
						 
						
							
							
								
								Re-apply r103581 with updated tests.  It turns out we were computing bogus locations for  
							
							... 
							
							
							
							many things.
llvm-svn: 103583 
							
						 
						
							2010-05-12 06:16:13 +00:00  
				
					
						
							
							
								 
						
							
								6092d507f0 
								
							 
						 
						
							
							
								
								c-index-test: Unify and always print half-open extents.  
							
							... 
							
							
							
							llvm-svn: 96160 
							
						 
						
							2010-02-14 08:32:51 +00:00  
				
					
						
							
							
								 
						
							
								98c07e0e23 
								
							 
						 
						
							
							
								
								c-index-test: Unify syntax for printing extents. Yes, there were 4.  
							
							... 
							
							
							
							llvm-svn: 96158 
							
						 
						
							2010-02-14 08:32:24 +00:00  
				
					
						
							
							
								 
						
							
								e391b01a3a 
								
							 
						 
						
							
							
								
								Add test case for ? : crasher  
							
							... 
							
							
							
							llvm-svn: 94429 
							
						 
						
							2010-01-25 17:48:13 +00:00  
				
					
						
							
							
								 
						
							
								5bce76cd53 
								
							 
						 
						
							
							
								
								Loosen preconditions for clang_getCursorSpelling(), returning an empty  
							
							... 
							
							
							
							string when given a cursor that does not have a name. Also, don't give
silly names for statements and non-reference expressions.
llvm-svn: 94426 
							
						 
						
							2010-01-25 16:56:17 +00:00  
				
					
						
							
							
								 
						
							
								7201f9f6b8 
								
							 
						 
						
							
							
								
								Visit the condition variables of while and for loops; also, visit the  
							
							... 
							
							
							
							condition even when we've visited the condition variable, so that
we'll see implicit conversions there.
llvm-svn: 94423 
							
						 
						
							2010-01-25 16:12:32 +00:00