diff options
author | Ehsan Akhgari <ehsan.akhgari@gmail.com> | 2015-11-23 19:56:46 +0000 |
---|---|---|
committer | Ehsan Akhgari <ehsan.akhgari@gmail.com> | 2015-11-23 19:56:46 +0000 |
commit | 93697fa7557a7305e51c0c5b0982a404d399e6fd (patch) | |
tree | 2670bdbf367766166c28c6ff9665a7abe34d7417 /clang/include/clang-c | |
parent | 0615a0e65dd1da8941eda4db8d2d65ea02f40976 (diff) | |
download | bcm5719-llvm-93697fa7557a7305e51c0c5b0982a404d399e6fd.tar.gz bcm5719-llvm-93697fa7557a7305e51c0c5b0982a404d399e6fd.zip |
Make clang_Cursor_getMangling not mangle if the declaration isn't mangled
Right now clang_Cursor_getMangling will attempt to mangle any
declaration, even if the declaration isn't mangled (extern C). This
results in a partially mangled name which isn't useful for much. This
patch makes clang_Cursor_getMangling return an empty string if the
declaration isn't mangled.
Patch by Michael Wu <mwu@mozilla.com>.
llvm-svn: 253909
Diffstat (limited to 'clang/include/clang-c')
-rw-r--r-- | clang/include/clang-c/Index.h | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/clang/include/clang-c/Index.h b/clang/include/clang-c/Index.h index 97d1ddecd93..b8314814d6d 100644 --- a/clang/include/clang-c/Index.h +++ b/clang/include/clang-c/Index.h @@ -2461,6 +2461,32 @@ enum CXLinkageKind { CINDEX_LINKAGE enum CXLinkageKind clang_getCursorLinkage(CXCursor cursor); /** + * \brief Describe the visibility of the entity referred to by a cursor. + * + * This returns the default visibility if not explicitly specified by + * a visibility attribute. The default visibility may be changed by + * commandline arguments. + * + * \param cursor The cursor to query. + * + * \returns The visibility of the cursor. + */ +enum CXVisibilityKind { + /** \brief This value indicates that no visibility information is available + * for a provided CXCursor. */ + CXVisibility_Invalid, + + /** \brief Symbol not seen by the linker. */ + CXVisibility_Hidden, + /** \brief Symbol seen by the linker but resolves to a symbol inside this object. */ + CXVisibility_Protected, + /** \brief Symbol seen by the linker and acts like a normal symbol. */ + CXVisibility_Default, +}; + +CINDEX_LINKAGE enum CXVisibilityKind clang_getCursorVisibility(CXCursor cursor); + +/** * \brief Determine the availability of the entity that this cursor refers to, * taking the current target platform into account. * |