]> granicus.if.org Git - clang/commit
[index] Generate class & metaclass manglings for objc
authorDave Lee <davelee.com@gmail.com>
Fri, 22 Sep 2017 16:58:57 +0000 (16:58 +0000)
committerDave Lee <davelee.com@gmail.com>
Fri, 22 Sep 2017 16:58:57 +0000 (16:58 +0000)
commitd454549fce04dfedda6cc2825b66efca94effe3f
tree9bd197c0401a588d6d7b02feea8f733869bcba34
parent78409ae6391061f68cdef2ff4096a66da35f00d7
[index] Generate class & metaclass manglings for objc

Summary:
ObjC classes have two associated symbols, one for the class and one for the
metaclass.

This change overloads `CodegenNameGenerator::getAllManglings` to produce both
class and metaclass symbols.

While this function is called by `clang_Cursor_getCXXManglings`, it's only
called for CXXRecordDecl and CXXMethodDecl, and so libclang's behavior is
unchanged.

Reviewers: arphaman, abdulras, alexshap, compnerd

Reviewed By: compnerd

Subscribers: compnerd

Differential Revision: https://reviews.llvm.org/D37671

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@313997 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang-c/Index.h
lib/Index/CodegenNameGenerator.cpp
test/Index/print-objc-manglings.m [new file with mode: 0644]
tools/c-index-test/c-index-test.c
tools/libclang/CIndex.cpp
tools/libclang/libclang.exports