summaryrefslogtreecommitdiffstats
path: root/clang/tools
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-153-17/+37
| | | | | | | | | 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
* Teach ccc-analyze to pass on -iquote with no spaces between it an the argument.Ted Kremenek2013-02-141-0/+5
| | | | llvm-svn: 175115
* 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
* Excise <cctype> from Clang (except clang-tblgen) in favor of CharInfo.h.Jordan Rose2013-02-081-3/+3
| | | | | | | Nearly all of these changes are one-to-one replacements; the few that aren't have to do with custom identifier validation. llvm-svn: 174768
* [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
* Add some horrible Perl code to teach scan-build to recursively walk a ↵Ted Kremenek2013-02-021-9/+22
| | | | | | directory for HTML files. llvm-svn: 174260
* 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
* scan-build: When using Xcode 4.6, use build settings for doing proper build ↵Ted Kremenek2013-01-301-0/+30
| | | | | | interposition. llvm-svn: 173954
* [driver] Refactor the driver so that a failing commands doesn't preventChad Rosier2013-01-291-8/+24
| | | | | | | | | | | subsequent commands from being executed. The diagnostics generation isn't designed for this use case, so add a note to fix this in the very near future. For now, just generated the diagnostics for the first failing command. Part of rdar://12984531 llvm-svn: 173825
* 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
* scan-build: Add a --keep-empty option for better testing.Jordan Rose2013-01-241-4/+17
| | | | | | | | SATestBuild expects to compare output directories for each invocation of scan-build that it runs, but scan-build clears out empty directories by default. We were coincidentally not getting that behavior until r173294. llvm-svn: 173383
* Always process an index.html file if we have HTML output. Patch by Justin ↵Ted Kremenek2013-01-231-1/+1
| | | | | | Bogner. llvm-svn: 173294
* 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
* libclang: Update comment about USEDLIBS in c-*-test/Makefile.NAKAMURA Takumi2013-01-222-1/+4
| | | | | | "Note that 'USEDLIBS' must include all of the core clang libraries when -static is given to linker on cygming." llvm-svn: 173124
OpenPOWER on IntegriCloud