From: Douglas Gregor Date: Tue, 19 Jan 2010 23:25:01 +0000 (+0000) Subject: Kill CXCursor_ObjCSelectorRef, CXCursor_VarRef, CXCursor_FunctionRef, X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e0ca4baa1da58a22bdeb39871535507143ce9079;p=clang Kill CXCursor_ObjCSelectorRef, CXCursor_VarRef, CXCursor_FunctionRef, and CXCursor_EnumConstantRef; they've been subsumed by expression references, which do a much nicer job. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93947 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/clang-c/Index.h b/include/clang-c/Index.h index 8a2ff8822e..1abf6490e7 100644 --- a/include/clang-c/Index.h +++ b/include/clang-c/Index.h @@ -113,12 +113,7 @@ enum CXCursorKind { CXCursor_ObjCSuperClassRef = 40, CXCursor_ObjCProtocolRef = 41, CXCursor_ObjCClassRef = 42, - - CXCursor_ObjCSelectorRef = 43, /* Expression references */ - CXCursor_VarRef = 44, - CXCursor_FunctionRef = 45, - CXCursor_EnumConstantRef = 46, - CXCursor_LastRef = 46, + CXCursor_LastRef = 42, /* Error conditions */ CXCursor_FirstInvalid = 70, diff --git a/tools/CIndex/CIndex.cpp b/tools/CIndex/CIndex.cpp index 00169e2af1..032dd126f6 100644 --- a/tools/CIndex/CIndex.cpp +++ b/tools/CIndex/CIndex.cpp @@ -818,20 +818,6 @@ CXString clang_getCursorSpelling(CXCursor C) { assert(OID && "getCursorSpelling(): Missing protocol decl"); return CIndexer::createCXString(OID->getIdentifier()->getNameStart()); } - case CXCursor_ObjCSelectorRef: { - ObjCMessageExpr *OME = dyn_cast(getCursorStmt(C)); - assert(OME && "getCursorSpelling(): Missing message expr"); - return CIndexer::createCXString(OME->getSelector().getAsString().c_str(), - true); - } - case CXCursor_VarRef: - case CXCursor_FunctionRef: - case CXCursor_EnumConstantRef: { - DeclRefExpr *DRE = dyn_cast(getCursorStmt(C)); - assert(DRE && "getCursorSpelling(): Missing decl ref expr"); - return CIndexer::createCXString(DRE->getDecl()->getIdentifier() - ->getNameStart()); - } default: return CIndexer::createCXString(""); } @@ -872,10 +858,6 @@ const char *clang_getCursorKindSpelling(enum CXCursorKind Kind) { case CXCursor_ObjCSuperClassRef: return "ObjCSuperClassRef"; case CXCursor_ObjCProtocolRef: return "ObjCProtocolRef"; case CXCursor_ObjCClassRef: return "ObjCClassRef"; - case CXCursor_ObjCSelectorRef: return "ObjCSelectorRef"; - case CXCursor_VarRef: return "VarRef"; - case CXCursor_FunctionRef: return "FunctionRef"; - case CXCursor_EnumConstantRef: return "EnumConstantRef"; case CXCursor_UnexposedExpr: return "UnexposedExpr"; case CXCursor_DeclRefExpr: return "DeclRefExpr"; case CXCursor_MemberRefExpr: return "MemberRefExpr"; @@ -1019,13 +1001,6 @@ CXSourceLocation clang_getCursorLocation(CXCursor C) { return translateSourceLocation(P.first->getASTContext(), P.second); } - case CXCursor_ObjCSelectorRef: - case CXCursor_VarRef: - case CXCursor_FunctionRef: - case CXCursor_EnumConstantRef: - return translateSourceLocation(getCursorContext(C), - getLocationFromExpr(getCursorExpr(C))); - default: // FIXME: Need a way to enumerate all non-reference cases. llvm_unreachable("Missed a reference kind"); @@ -1070,13 +1045,6 @@ CXSourceRange clang_getCursorExtent(CXCursor C) { return translateSourceRange(P.first->getASTContext(), P.second); } - case CXCursor_ObjCSelectorRef: - case CXCursor_VarRef: - case CXCursor_FunctionRef: - case CXCursor_EnumConstantRef: - return translateSourceRange(getCursorContext(C), - getCursorExpr(C)->getSourceRange()); - default: // FIXME: Need a way to enumerate all non-reference cases. llvm_unreachable("Missed a reference kind"); @@ -1120,16 +1088,6 @@ CXCursor clang_getCursorReferenced(CXCursor C) { case CXCursor_ObjCClassRef: return MakeCXCursor(getCursorObjCClassRef(C).first); - case CXCursor_ObjCSelectorRef: - case CXCursor_VarRef: - case CXCursor_FunctionRef: - case CXCursor_EnumConstantRef: { - Decl *D = getDeclFromExpr(getCursorExpr(C)); - if (D) - return MakeCXCursor(D); - break; - } - default: // We would prefer to enumerate all non-reference cursor kinds here. llvm_unreachable("Unhandled reference cursor kind"); diff --git a/tools/CIndex/CXCursor.cpp b/tools/CIndex/CXCursor.cpp index 68fba7e3cd..f13e2eea89 100644 --- a/tools/CIndex/CXCursor.cpp +++ b/tools/CIndex/CXCursor.cpp @@ -306,12 +306,6 @@ ASTContext &cxcursor::getCursorContext(CXCursor Cursor) { case CXCursor_ObjCClassRef: return static_cast(Cursor.data[0])->getASTContext(); - case CXCursor_ObjCSelectorRef: - case CXCursor_VarRef: - case CXCursor_FunctionRef: - case CXCursor_EnumConstantRef: - return *static_cast(Cursor.data[2]); - case CXCursor_InvalidFile: case CXCursor_NoDeclFound: case CXCursor_NotImplemented: