[PATCH] D15469: Expose cxx constructor and method properties through libclang and python bindings.

Jonathan B Coe via cfe-commits cfe-commits at lists.llvm.org
Thu Mar 10 16:46:50 PST 2016


jbcoe added a comment.

I don't know if it's at all helpful but I get the following output from llvm-lit on the failing test file. There's no mention of a function `foo` at all:

  [startedTranslationUnit]
  [enteredMainFile]: /Users/jon/DEV/llvm-git-svn/tools/clang/test/Index/index-file.cpp
  [indexDeclaration]: kind: type-alias | name: MyTypeAlias | USR: c:@MyTypeAlias | lang: C++ | cursor: TypeAliasDecl=MyTypeAlias:1:7 (Definition) | loc: 1:7 | semantic-container: [TU]
  [indexDeclaration]: kind: function-template | name: Allocate | USR: c:@FT@>1#TAllocate | lang: C++ | cursor: FunctionDecl=Allocate:4:28 (Definition) | loc: 4:28 | semantic-container
  [indexDeclaration]: kind: namespace | name: rdar14063074 | USR: c:@N at rdar14063074 | lang: C++ | cursor: Namespace=rdar14063074:8:11 (Definition) | loc: 8:11 | semantic-container: [T
  [indexDeclaration]: kind: c++-class-template | name: TS | USR: c:@N at rdar14063074@ST>1#T at TS | lang: C++ | cursor: StructDecl=TS:10:8 (Definition) | loc: 10:8 | semantic-container: [r
  [indexDeclaration]: kind: struct-template-spec | name: TS | USR: c:@N at rdar14063074@S at TS>#I | lang: C++ | cursor: StructDecl=TS:11:8 (Definition) [Specialization of TS:10:8] | loc: 1
  [indexDeclaration]: kind: function-template | name: tfoo | USR: c:@N at rdar14063074@FT@>1#Ttfoo#v# | lang: C++ | cursor: FunctionDecl=tfoo:14:6 (Definition) | loc: 14:6 | semantic-con
  [indexDeclaration]: kind: function-template-spec | name: tfoo | USR: c:@N at rdar14063074@F at tfoo<#I># | lang: C++ | cursor: FunctionDecl=tfoo:15:6 (Definition) [Specialization of tfoo:
  [indexDeclaration]: kind: namespace | name: crash1 | USR: c:@N at crash1 | lang: C++ | cursor: Namespace=crash1:18:11 (Definition) | loc: 18:11 | semantic-container: [TU] | lexical-con
  [indexDeclaration]: kind: c++-class-template | name: A | USR: c:@N at crash1@ST>1#T at A | lang: C++ | cursor: ClassDecl=A:19:28 (Definition) | loc: 19:28 | semantic-container: [crash1:18
  [indexDeclaration]: kind: c++-instance-method | name: meth | USR: c:@N at crash1@ST>1#T at A@F at meth# | lang: C++ | cursor: CXXMethod=meth:21:8 | loc: 21:8 | semantic-container: [A:19:28] 
  [indexDeclaration]: kind: c++-instance-method | name: meth | USR: c:@N at crash1@S at A>#I at F@meth# | lang: C++ | cursor: CXXMethod=meth:23:26 [Specialization of meth:21:8] | loc: 23:26 | 
  [indexEntityReference]: kind: c++-class-template | name: A | USR: c:@N at crash1@ST>1#T at A | lang: C++ | cursor: TemplateRef=A:19:28 | loc: 23:18 | <parent>:: kind: c++-instance-method 
  [indexDeclaration]: kind: c++-class | name: B | USR: c:@S at B | lang: C++ | cursor: ClassDecl=B:27:7 (Definition) | loc: 27:7 | semantic-container: [TU] | lexical-container: [TU] | is
  [indexDeclaration]: kind: field | name: x_ | USR: c:@S at B@FI at x_ | lang: C++ | cursor: FieldDecl=x_:28:15 (Definition) (mutable) | loc: 28:15 | semantic-container: [B:27:7] | lexical-
  [indexDeclaration]: kind: field | name: y_ | USR: c:@S at B@FI at y_ | lang: C++ | cursor: FieldDecl=y_:29:7 (Definition) | loc: 29:7 | semantic-container: [B:27:7] | lexical-container: [
  [indexDeclaration]: kind: constructor | name: B | USR: c:@S at B@F at B# | lang: C++ | cursor: CXXConstructor=B:31:3 (default constructor) (defaulted) | loc: 31:3 | semantic-container: [B
  [indexDeclaration]: kind: constructor | name: B | USR: c:@S at B@F at B#I# | lang: C++ | cursor: CXXConstructor=B:32:3 (converting constructor) | loc: 32:3 | semantic-container: [B:27:7] 
  [indexDeclaration]: kind: constructor | name: B | USR: c:@S at B@F at B#d# | lang: C++ | cursor: CXXConstructor=B:33:12 | loc: 33:12 | semantic-container: [B:27:7] | lexical-container: [B
  [indexDeclaration]: kind: constructor | name: B | USR: c:@S at B@F at B#&1$@S at B# | lang: C++ | cursor: CXXConstructor=B:34:3 (copy constructor) (converting constructor) | loc: 34:3 | sema
  [indexEntityReference]: kind: c++-class | name: B | USR: c:@S at B | lang: C++ | cursor: TypeRef=class B:27:7 | loc: 34:11 | <parent>:: kind: constructor | name: B | USR: c:@S at B@F at B#&1
  [indexDeclaration]: kind: constructor | name: B | USR: c:@S at B@F at B#&&$@S at B# | lang: C++ | cursor: CXXConstructor=B:35:3 (move constructor) (converting constructor) | loc: 35:3 | sema
  [indexEntityReference]: kind: c++-class | name: B | USR: c:@S at B | lang: C++ | cursor: TypeRef=class B:27:7 | loc: 35:5 | <parent>:: kind: constructor | name: B | USR: c:@S at B@F at B#&&$
  [indexDeclaration]: kind: c++-class | name: C | USR: c:@S at C | lang: C++ | cursor: ClassDecl=C:39:7 (Definition) | loc: 39:7 | semantic-container: [TU] | lexical-container: [TU] | is
  [indexDeclaration]: kind: constructor | name: C | USR: c:@S at C@F at C#&1$@S at C# | lang: C++ | cursor: CXXConstructor=C:40:12 (copy constructor) | loc: 40:12 | semantic-container: [C:39:7
  [indexEntityReference]: kind: c++-class | name: C | USR: c:@S at C | lang: C++ | cursor: TypeRef=class C:39:7 | loc: 40:20 | <parent>:: kind: constructor | name: C | USR: c:@S at C@F at C#&1
  [diagnostic]: /Users/jon/DEV/llvm-git-svn/tools/clang/test/Index/index-file.cpp:1:21: warning: alias declarations are a C++11 extension [-Wc++11-extensions]
  [diagnostic]: /Users/jon/DEV/llvm-git-svn/tools/clang/test/Index/index-file.cpp:4:28: error: C++ requires a type specifier for all declarations
  [diagnostic]: /Users/jon/DEV/llvm-git-svn/tools/clang/test/Index/index-file.cpp:4:3: error: templates must have C++ linkage
  [diagnostic]: /Users/jon/DEV/llvm-git-svn/tools/clang/test/Index/index-file.cpp:11:8: error: template specialization requires 'template<>'
  [diagnostic]: /Users/jon/DEV/llvm-git-svn/tools/clang/test/Index/index-file.cpp:15:6: error: template specialization requires 'template<>'
  [diagnostic]: /Users/jon/DEV/llvm-git-svn/tools/clang/test/Index/index-file.cpp:20:12: warning: deleted function definitions are a C++11 extension [-Wc++11-extensions]
  [diagnostic]: /Users/jon/DEV/llvm-git-svn/tools/clang/test/Index/index-file.cpp:31:9: warning: defaulted function definitions are a C++11 extension [-Wc++11-extensions]
  [diagnostic]: /Users/jon/DEV/llvm-git-svn/tools/clang/test/Index/index-file.cpp:35:6: warning: rvalue references are a C++11 extension [-Wc++11-extensions]
  [diagnostic]: /Users/jon/DEV/llvm-git-svn/tools/clang/test/Index/index-file.cpp:36:16: warning: deleted function definitions are a C++11 extension [-Wc++11-extensions]


http://reviews.llvm.org/D15469





More information about the cfe-commits mailing list