diff options
author | Ted Kremenek <kremenek@apple.com> | 2010-05-05 00:55:20 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2010-05-05 00:55:20 +0000 |
commit | 15cbc3a8a52e2cea3663e6e36fa18be1eb60fc22 (patch) | |
tree | 0658b4b62d955ca990fbbd4642a9ee1a336a5880 | |
parent | 458c2f190aa320d1641d204779d9874fdeff468f (diff) | |
download | bcm5719-llvm-15cbc3a8a52e2cea3663e6e36fa18be1eb60fc22.tar.gz bcm5719-llvm-15cbc3a8a52e2cea3663e6e36fa18be1eb60fc22.zip |
Map Objective-C keywords to CXToken_Keyword.
llvm-svn: 103063
-rw-r--r-- | clang/tools/libclang/CIndex.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/clang/tools/libclang/CIndex.cpp b/clang/tools/libclang/CIndex.cpp index 23be3dfcb24..0c0dbbabc27 100644 --- a/clang/tools/libclang/CIndex.cpp +++ b/clang/tools/libclang/CIndex.cpp @@ -2286,9 +2286,15 @@ void clang_tokenize(CXTranslationUnit TU, CXSourceRange Range, const char *StartPos = Buf.data() + LocInfo.second; IdentifierInfo *II = CXXUnit->getPreprocessor().LookUpIdentifierInfo(Tok, StartPos); - CXTok.int_data[0] = II->getTokenID() == tok::identifier? - CXToken_Identifier - : CXToken_Keyword; + + if (II->getObjCKeywordID() != tok::objc_not_keyword) { + CXTok.int_data[0] = CXToken_Keyword; + } + else { + CXTok.int_data[0] = II->getTokenID() == tok::identifier? + CXToken_Identifier + : CXToken_Keyword; + } CXTok.ptr_data = II; } else if (Tok.is(tok::comment)) { CXTok.int_data[0] = CXToken_Comment; |