Eliminate cursor kinds used to express definitions. Instead, provide
CIndex functions that (1) map from a reference or declaration to the
corresponding definition, if available, and (2) determine whether a
given declaration cursor is also a definition. This eliminates a lot
of duplication in the cursor kinds, and maps more closely to the Clang
ASTs.

This is another API + ABI breaker with no deprecation. Yay, progress.

llvm-svn: 93893
diff --git a/clang/tools/CIndex/CIndex.exports b/clang/tools/CIndex/CIndex.exports
index 71522fd..0460ba0 100644
--- a/clang/tools/CIndex/CIndex.exports
+++ b/clang/tools/CIndex/CIndex.exports
@@ -13,6 +13,7 @@
 _clang_getCompletionChunkText
 _clang_getCursor
 _clang_getCursorDecl
+_clang_getCursorDefinition
 _clang_getCursorExtent
 _clang_getCursorFromDecl
 _clang_getCursorKind
@@ -36,8 +37,8 @@
 _clang_getNullCursor
 _clang_getNumCompletionChunks
 _clang_getTranslationUnitSpelling
+_clang_isCursorDefinition
 _clang_isDeclaration
-_clang_isDefinition
 _clang_isInvalid
 _clang_isReference
 _clang_loadDeclaration