]> granicus.if.org Git - clang/commitdiff
Map Objective-C keywords to CXToken_Keyword.
authorTed Kremenek <kremenek@apple.com>
Wed, 5 May 2010 00:55:20 +0000 (00:55 +0000)
committerTed Kremenek <kremenek@apple.com>
Wed, 5 May 2010 00:55:20 +0000 (00:55 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103063 91177308-0d34-0410-b5e6-96231b3b80d8

tools/libclang/CIndex.cpp

index 23be3dfcb24b2c63f3ed12cc1cc317a8bcd6dcd3..0c0dbbabc271ea2b4e9469f852fb045d64b376c8 100644 (file)
@@ -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;