summaryrefslogtreecommitdiffstats
path: root/clang/tools/libclang
Commit message (Collapse)AuthorAgeFilesLines
* Replace TypeLoc llvm::cast support to be well-defined.David Blaikie2013-02-184-23/+22
| | | | | | | | | | | | | | The TypeLoc hierarchy used the llvm::cast machinery to perform undefined behavior by casting pointers/references to TypeLoc objects to derived types and then using the derived copy constructors (or even returning pointers to derived types that actually point to the original TypeLoc object). Some context is in this thread: http://lists.cs.uiuc.edu/pipermail/llvmdev/2012-December/056804.html Though it's spread over a few months which can be hard to read in the mail archive. llvm-svn: 175462
* libclang: don't store nul-terminated strings as StringRefs,Dmitri Gribenko2013-02-182-16/+15
| | | | | | | | | | if the nul-terminatedness property is important for clients. Also, don't return the same CXString multiple times. This did not create a correctness issue in practice because the CXString was of an CXS_Unmanaged kind, and destruction was a no-op. llvm-svn: 175455
* libclang: remove reinterpret_casts by using SourceLocation::getPtrEncodingDmitri Gribenko2013-02-161-14/+14
| | | | llvm-svn: 175333
* libclang: add clang_getTypeSpelling(CXType CT)Dmitri Gribenko2013-02-152-0/+16
| | | | | | | | | Adds a function clang_getTypeSpelling(CXType CT) that returns a CXString containing the underlying type. Patch by Ben Gertzfield. llvm-svn: 175299
* libclang: remove reinterpret_casts by using SourceLocation::getFromPtrEncodingDmitri Gribenko2013-02-141-24/+12
| | | | | | directly instead of casting a pointer to an integer llvm-svn: 175206
* Use 'RC_XBS' instead of 'RC_BUILDIT' to catch all times when it's built in ↵Bill Wendling2013-02-131-1/+1
| | | | | | the Apple way. llvm-svn: 175070
* [libclang] Fix annotation of a range where the begin or end locationArgyrios Kyrtzidis2013-02-131-9/+23
| | | | | | | | | is inside a macro argument. Previously we would give up and not annotate anything in the range. rdar://11891550 llvm-svn: 175062
* libclang: use CXCursor getters to simplify codeDmitri Gribenko2013-02-091-3/+2
| | | | llvm-svn: 174809
* [libclang] Attribute visitation happens out-of-source-order, make sureArgyrios Kyrtzidis2013-02-081-8/+23
| | | | | | | | | we annotate properly when there is an attribute and not skip type specs if the attribute is after the declaration. rdar://13129077 llvm-svn: 174689
* libclang: reduce CXString abuseDmitri Gribenko2013-02-071-25/+20
| | | | | | | | | ContainerUSR is not really a CXString, but it should own the underlying memory buffer. Thus, it is better to change the type to std::string. This will not introduce extra copying overhead, since the workaround that is being removed was already making a copy. llvm-svn: 174647
* libclang: CursorVisitor::VisitBuiltinTypeLoc(): Add OCLSampler. [-Wswitch]NAKAMURA Takumi2013-02-071-0/+1
| | | | llvm-svn: 174606
* Add OpenCL samplers as Clang builtin types and check sampler related ↵Guy Benyei2013-02-071-0/+1
| | | | | | restrictions. llvm-svn: 174601
* Comment to XML conversion: replace string comparison with command ID comparisonDmitri Gribenko2013-02-031-3/+8
| | | | llvm-svn: 174290
* libclang: wrap CXString implementation into 'namespace cxstring'Dmitri Gribenko2013-02-031-19/+24
| | | | | | This removes quite a few 'cxstring::' qualifications where they are obvious. llvm-svn: 174286
* libclang: remove 'using namespace cxstring'Dmitri Gribenko2013-02-0310-13/+3
| | | | llvm-svn: 174285
* libclang: migrate IndexingDeclVisitor to ConstDeclVisitorDmitri Gribenko2013-02-031-36/+38
| | | | llvm-svn: 174284
* libclang: remove unneeded const_castDmitri Gribenko2013-02-031-1/+1
| | | | llvm-svn: 174283
* libclang: migrate USRGenerator to ConstDeclVisitorDmitri Gribenko2013-02-031-59/+62
| | | | llvm-svn: 174281
* libclang: remove unneeded const_castsDmitri Gribenko2013-02-032-4/+3
| | | | llvm-svn: 174280
* libclang: introduce cxstring::{createRef,createDup} for StringRefsDmitri Gribenko2013-02-0211-90/+111
| | | | | | Also migrate all clients from the old API. llvm-svn: 174263
* libclang: introduce cxstring::{createRef,createDup} for C stringsDmitri Gribenko2013-02-028-181/+200
| | | | | | Also migrate all clients from the old API. llvm-svn: 174238
* Comment parsing: improve the fidelity of XML output for many block commandsDmitri Gribenko2013-02-011-3/+42
| | | | | | | | | | | | | | This change introduces a 'kind' attribute for the <Para> tag, that captures the kind of the parent block command. For example: \todo Meow. used to be just <Para>Meow.</Para>, but now it is <Para kind="todo">Meow.</Para> llvm-svn: 174216
* libclang: document the purpose of createNull()Dmitri Gribenko2013-02-011-0/+2
| | | | llvm-svn: 174195
* libclang: add comments for CXStringFlagDmitri Gribenko2013-02-011-1/+12
| | | | llvm-svn: 174194
* libclang: itroduce cxstring::createEmpty()Dmitri Gribenko2013-02-0110-43/+53
| | | | llvm-svn: 174174
* libclang: introduce cxstring::createNull()Dmitri Gribenko2013-02-016-26/+36
| | | | llvm-svn: 174173
* [Comment parsing] Add support for recognizingFariborz Jahanian2013-01-311-2/+15
| | | | | | | | \headerfile command and representing it in an xml document. Patch reviewed by Dmitri Gribenko. // rdar://12397511 llvm-svn: 174109
* Attempt to fix Windows build breakage.Evgeniy Stepanov2013-01-311-1/+2
| | | | llvm-svn: 174060
* Allow the computation of the base priority for a declaration code completion ↵Douglas Gregor2013-01-311-1/+1
| | | | | | result to consider the completion context llvm-svn: 174037
* libclang: refactor CXStringPool: make it a classDmitri Gribenko2013-01-265-43/+48
| | | | | | | We are not exposing the pool or string buffers to libclang users, so no need to maintain a procedural interface. llvm-svn: 173595
* libclang: type safety for CXTranslationUnitImpl::CIdxDmitri Gribenko2013-01-264-6/+6
| | | | llvm-svn: 173590
* libclang: type safety for CXTranslationUnitImpl::FormatContextDmitri Gribenko2013-01-263-15/+10
| | | | llvm-svn: 173589
* libclang: some type safety for CXTranslationUnitImpl's internalsDmitri Gribenko2013-01-263-10/+13
| | | | | | | There is no reason to store pointers as 'void*' in CXTranslationUnitImpl, since it does not affect libclang ABI. llvm-svn: 173588
* libclang: factor out the frequent pattern static_cast<ASTUnit *>(TU->TUData)Dmitri Gribenko2013-01-2614-67/+72
| | | | | | into a getter cxtu::getASTUnit(TU) llvm-svn: 173585
* libclang: make getCursorParentDecl() return 'const Decl *'Dmitri Gribenko2013-01-263-4/+4
| | | | llvm-svn: 173584
* libclang: change getCursorAttr() to return 'const Attr *'Dmitri Gribenko2013-01-263-7/+7
| | | | llvm-svn: 173583
* libclang: make getCursorStmt() and getCursorExpr() return const pointersDmitri Gribenko2013-01-264-169/+180
| | | | | | Also change EnqueueVisitor to use ConstStmtVisitor as a consequence. llvm-svn: 173577
* [libclang] Introduce clang_getFileUniqueID which returns a structArgyrios Kyrtzidis2013-01-262-0/+16
| | | | | | | | | | | for a CXFile containing device/inode/modification time. Intended to be useful as a key associated with a unique file across an indexing session. rdar://13091837 llvm-svn: 173559
* libclang: change return type of getCursorDecl() to 'const Decl *'Dmitri Gribenko2013-01-238-159/+167
| | | | llvm-svn: 173278
* Remove uneeded castsDmitri Gribenko2013-01-232-6/+4
| | | | llvm-svn: 173269
* Explicitly cast away the const-ness instead of doing it implicitly.Bill Wendling2013-01-232-5/+5
| | | | llvm-svn: 173241
* Explicitly cast away the const-ness instead of doing it implicitly.Bill Wendling2013-01-231-5/+9
| | | | llvm-svn: 173232
* Implement OpenCL event_t as Clang builtin type, including event_t related ↵Guy Benyei2013-01-202-0/+2
| | | | | | OpenCL restrictions (OpenCL 1.2 spec 6.9) llvm-svn: 172973
* update to use the new BitcodeCursor readRecord that takes a StringRef blob ↵Chris Lattner2013-01-201-38/+26
| | | | | | | | parameter, and adopt "advance" in more places. llvm-svn: 172951
* Nuke SetUpBuildDumpLog.Sean Silva2013-01-202-5/+1
| | | | | | | Also, it was the only reason that `argc` and `argv` were being passed into createDiagnostics, so remove those parameters and clean up callers. llvm-svn: 172945
* random tidyingChris Lattner2013-01-191-6/+3
| | | | llvm-svn: 172920
* update header comment.Chris Lattner2013-01-191-12/+12
| | | | llvm-svn: 172909
* this depends on the bitcode reader, since it is using it.Chris Lattner2013-01-192-1/+2
| | | | llvm-svn: 172905
* Re-sort all the headers. Lots of regressions have crept in here.Chandler Carruth2013-01-196-7/+8
| | | | | | | | | | Manually fix the order of UnwrappedLineParser.cpp as that one didn't have its associated header as the first header. This also uncovered a subtle inclusion order dependency as CLog.h didn't include LLVM.h to pick up using declarations it relied upon. llvm-svn: 172892
* [libclang] In clang_reparseTranslationUnit_Impl, move the check whether TU isArgyrios Kyrtzidis2013-01-161-3/+2
| | | | | | null before using it. llvm-svn: 172632
OpenPOWER on IntegriCloud