aboutsummaryrefslogtreecommitdiff
path: root/tools/libclang
AgeCommit message (Collapse)Author
2013-01-16[libclang] In clang_getCursorType, don't crash if the translation unit is notArgyrios Kyrtzidis
set on the cursor; return a null type in such a case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172625 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-15Fix CastingDavid Greene
Use const_cast<> to avoid a cast-away-const error. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172565 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-15Fix CastingDavid Greene
Use const_cast<> to avoid a cast-away-const error. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172564 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-15Fix CastingDavid Greene
Use const_cast<> to avoid a cast-away-const error. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172563 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-15Fix CastingDavid Greene
Use const_cast<> to avoid a cast-away-const error. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172562 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-14libclang: remove a few const_castsDmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172373 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-14Constify argument of Preprocessor::getMacroInfoHistory and propagate toDmitri Gribenko
callers, removing unneeded const_cast git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172372 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-12Remove useless 'llvm::' qualifier from names like StringRef and others that areDmitri Gribenko
brought into 'clang' namespace by clang/Basic/LLVM.h git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172323 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11libclang: use C++ casts in CXString.cppDmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172272 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11libclang: constness for CXStringDmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172270 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11[libclang] Add some constness in CXSourceLocation and CXSourceRange.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172261 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11libclang: remove unneeded castsDmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172253 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11libclang: change CXCursor to store 'const void *' pointers forDmitri Gribenko
const-correctness, and update all users git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172252 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11libclang: use getCursorTU and getCursorASTUnit instead of explicit castsDmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172241 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Replace more usages of __func__ with LLVM_FUNCTION_NAMEDmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172161 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11libclang logging: fixup for MSVC, which does not have __func__Dmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172158 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-10[libclang] Address some coding style issues pointed out by Dmitri.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172096 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-10[libclang] Add missing header fileArgyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172090 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-10[libclang] Enhance logging capabilities of libclang.Argyrios Kyrtzidis
-provide a "raw_ostream'ish" class to make it convenient to output logging info. -use macros to automate a bit the logging functionality inside libclang functions -when logging, print a stack trace if "LIBCLANG_LOGGING=2" environment is set. -add logging to more functions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172089 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-08[libclang] In clang_equalCursors, clear out the "FirstInDeclGroup" part in a ↵Argyrios Kyrtzidis
declaration cursor before doing the comparison. This is because we can't set "FirstInDeclGroup" consistently; for example, when visiting a DeclStmt we will set it but we don't set it on the result of clang_getCursorDefinition for a reference of the same declaration. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171878 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-07[libclang] When annotating preprocessor tokens, if we are in a macro definition,Argyrios Kyrtzidis
check if the token was ever a macro name and annotate it if that's the case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171776 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-07[libclang] Simplify annotation of preprocessing tokens and remove the ↵Argyrios Kyrtzidis
AnnotateTokensData DenseMap and the lookups associated with it. Instead of lexing for preprocessor tokens, associating the annotation with the location in a map, and later lookup in the map in order to adjust the cursor annotation, just annotate the cursor while lexing for preprocessor tokens. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171775 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-07[libclang] Make token annotation of type/storage qualifiers accurate.Argyrios Kyrtzidis
Previously type/storage qualifiers would not be annotated as the declaration they belonged to. Just use the resulting source range of getRawCursorExtent() which is more correct than what AnnotateTokensWorker::Visit() was adjusting it to. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171774 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-07[libclang] When getting the cursor for an identifier inside a macro ↵Argyrios Kyrtzidis
definition, check if this was ever a macro name and return a specific CXCursor_MacroExpansion cursor in such a case, instead of the generic CXCursor_MacroDefinition. Checking for macro name makes sure the identifier is not part of the identifier list in a function macro. While, in general, resolving identifiers in macro definitions to other macros may not be completely accurate, it greatly improves functionality such as give-me-the-definition-of-this, which was not working at all inside macro definitions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171773 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-07Comment to XML conversion: no, we don't want to print instantiations for theDmitri Gribenko
<Declaration> tag git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171763 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-07libclang/Makefile: Reorder USEDLIBS along driver/clang.NAKAMURA Takumi
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171750 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-04[libclang] Introduce clang_getFileLocation.Argyrios Kyrtzidis
Uses of clang_getSpellingLocation should eventually move to calling clang_getFileLocation, and clang_getSpellingLocation should do what its name represents and actually point at the 'spelling' location, e.g. inside a macro definition if the spelling of a token came from that. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171486 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-02Re-sort #include lines using the llvm/utils/sort_includes.py script.Chandler Carruth
Removes a duplicate #include as well as cleaning up some sort order regressions since I last ran the script over Clang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171364 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-25Add intel_ocl_bicc calling convention as a function attribute to clang. The ↵Guy Benyei
calling convention is already implemented in LLVM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171056 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-22[libclang] Check for the 'LIBCLANG_NOTHREADS' environment variable before ↵Argyrios Kyrtzidis
creating a separate thread for code-completion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170978 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-20Add objective-C style formatting to clang format andFariborz Jahanian
use it to format xml declaration tags. // rdar://12378714 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170727 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-20Revert r170500. It over-zealously converted *ALL* things named Attributes, ↵Bill Wendling
which is wrong here. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170721 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-19Audit DeclPrinter with -ast-dump on Cocoa.h andFariborz Jahanian
fix any bad objectiveC syntax coming out of DeclPrinter. This is on going. Also, introduce a new PrintPolicy and use it as needed when declaration tag is to be produced via DeclPrinter. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170606 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-19Add a missing 'else'. Found by grep '} if'Dmitri Gribenko
No testcase because this did not affect correctness: a declaration can only be ClassTemplateDecl or a FunctionTemplateDecl, not both. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170565 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-19Improve on header comment suggested by James Dennet.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170555 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-19Rename the 'Attributes' class to 'Attribute'. It's going to represent a ↵Bill Wendling
single attribute in the future. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170500 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-19Simplify logic to use SourceManager::getFileLoc(), per Argyrios's feedback.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170487 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-19fixes a doxygen comment.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170485 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-19Increas number of iterations before a new libclang format objectFariborz Jahanian
is created to 1000. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170481 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-19Some code refactoring per Dimitri's comment.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170478 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-18Have clang_getSpellingLocation() use the same logic as DiagnosticRenderer ↵Ted Kremenek
for plowing through macros. This fixes a subtle bug reported in <rdar://problem/12584554> where a double-nested macro could lead to an incorrect fixit location with live issues. This fix also uncovers a bunch of subtle bugs in our indexer test cases which are now fixed (mostly around source ranges for attributes). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170468 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-18This is the libclang patch providing minimal API toFariborz Jahanian
use clang's formatter. Currently, formatter is used to format declaration tags for xml comments. Since formatter is in flux and its change will break several of the clang comment tests, only a single tests is formatted using this facility. Doug has reviewed and approved it for check-in. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170467 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-18Re-commit r170428 changes with Linux style file endings.Guy Benyei
Add OpenCL images as clang builtin types. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170432 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-18Revert changes from r170428, as I accidentally changed the line endings of ↵Guy Benyei
these files to Windows style. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170431 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-18Add OpenCL images as clang builtin types.Guy Benyei
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170428 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-12[libclang] Make sure tokens from preprocessor directives are annotated as such,Argyrios Kyrtzidis
even if the directive is inside a declaration. Fixes rdar://11548788 & http://llvm.org/PR12970 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169949 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-07[libclang] Declarations inside anonymous namespaces have internal linkage soArgyrios Kyrtzidis
their USR should contain a location. This uniques them from other declarations with the same name but in different translation units. rdar://10546541 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169647 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-06[libclang] Introduce a new indexing mode where we skip function bodiesArgyrios Kyrtzidis
that were already parsed in the same "indexing session". An indexing session is defined as using the same CXIndexAction object for multiple clang_indexSourceFile calls. Passing CXIndexOpt_SkipParsedBodiesInSession as an indexing option will enable the mode where we try to skip bodies that were already parsed in another translation unit. If a function's body was skipped, the "flags" field in the CXIdxDeclInfo structure will have "CXIdxDeclFlag_Skipped" bit was set. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169539 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-04libclang: Add a function to libclang for retrieving the bit width valueDmitri Gribenko
Patch by Jyun-Yan You. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169276 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-04Sort #include lines for tools/...Chandler Carruth
Completely automated with sort_includes.py git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169240 91177308-0d34-0410-b5e6-96231b3b80d8