aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-01-26libclang: type safety for CXTranslationUnitImpl::CIdxDmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173590 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26libclang: type safety for CXTranslationUnitImpl::FormatContextDmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173589 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26libclang: some type safety for CXTranslationUnitImpl's internalsDmitri Gribenko
There is no reason to store pointers as 'void*' in CXTranslationUnitImpl, since it does not affect libclang ABI. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173588 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26Fix comment.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173587 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26Attach any tag type's documentation to its typedef ifFariborz Jahanian
latter does not have one of its own. // rdar://13067629 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173586 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26libclang: factor out the frequent pattern static_cast<ASTUnit *>(TU->TUData)Dmitri Gribenko
into a getter cxtu::getASTUnit(TU) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173585 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26libclang: make getCursorParentDecl() return 'const Decl *'Dmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173584 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26libclang: change getCursorAttr() to return 'const Attr *'Dmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173583 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26Migrate tests to -verifyDmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173582 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26Added ASTContext methods getIntPtrType and getUIntPtrType.Enea Zaffanella
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173581 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26<limits.h> includes <linux/limits.h> on Linux, no need to special-case itDmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173578 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26libclang: make getCursorStmt() and getCursorExpr() return const pointersDmitri Gribenko
Also change EnqueueVisitor to use ConstStmtVisitor as a consequence. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173577 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26Specify non-GNU-ARM triples for key-function test.Tim Northover
Since ARM has diverging ABIs on this detail, it's probably worth testing both it and a "normal" Itanium system. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173576 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26Constify getOptionalExplicitTemplateArgs()Dmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173575 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26Constify some getters of DesignatedInitExprDmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173574 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26clang/test/Misc/diag-template-diffing-color.cpp: Symbolize color sequences ↵NAKAMURA Takumi
in FileCheck. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173561 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26[libclang] Introduce clang_getFileUniqueID which returns a structArgyrios Kyrtzidis
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 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173559 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26clang/test/Misc/ast-dump-color.cpp: Symbolize color sequences in FileCheck.NAKAMURA Takumi
FIXME: If FileCheck had expressions something predefined well-known... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173558 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26[analyzer] C++ initializers may require cleanups; look through these.Jordan Rose
When the analyzer sees an initializer, it checks if the initializer contains a CXXConstructExpr. If so, it trusts that the CXXConstructExpr does the necessary work to initialize the object, and performs no further initialization. This patch looks through any implicit wrapping expressions like ExprWithCleanups to find the CXXConstructExpr inside. Fixes PR15070. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173557 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26Give a more informative error message when the dot or arrow operator is usedRichard Trieu
on a type. Currently, it gives a generic "expected unqualified-id" error. The new error message is "cannot use (dot|arrow) operator on a type". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173556 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26Fix mismatch between pointer and pointee type when diagnosing an incorrectRichard Smith
object argument type for a member call. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173554 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26Fix test case by being more lenient on what to accept as a path name.Richard Trieu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173553 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26Remove function that is newly dead as of r173538.Nick Lewycky
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173550 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26Hopefuly unbreak buldbot.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173549 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26Highlight various parts of the AST dump with color. Colors are controlled byRichard Trieu
-f(no-)color-diagnostics. In addition, dumpColor() function calls are added to force color printing. No structural changes to -ast-dump. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173548 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26[analyzer] Track null object lvalues back through C++ method calls.Jordan Rose
The expression 'a->b.c()' contains a call to the 'c' method of 'a->b'. We emit an error if 'a' is NULL, but previously didn't actually track the null value back through the 'a->b' expression, which caused us to miss important false-positive-suppression cases, including <rdar://problem/12676053>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173547 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26[analyzer] bugreporter::getDerefExpr now takes a Stmt, not an ExplodedNode.Jordan Rose
This allows it to be used in places where the interesting statement doesn't match up with the current node. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173546 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26[analyzer] Add 'prune-paths' config option to disable path pruning.Jordan Rose
This should be used for testing only. Path pruning is still on by default. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173545 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26[analyzer] Rename PruneNullReturnPaths to SuppressNullReturnPaths.Jordan Rose
"Prune" is the term for eliminating pieces of a path that are not relevant to the user. "Suppress" means don't show that path at all. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173544 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26Fix up the test.Fariborz Jahanian
for // rdar://11861085 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173543 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26Since we're stuck with realpath for the header <-> module mapping,Douglas Gregor
factor the realpath calls into FileManager::getCanonicalName() so we can cache the results of this epically slow operation. 5% speedup on my modules test, and realpath drops out of the profile. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173542 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26Revert r172285 (suppressing a 'redundant' -Wc++98-compat warning) and add aRichard Smith
testcase for a situation it caused us to miss. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173540 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26Comment parsing: actually check for a block command after "\param x"Dmitri Gribenko
This fixes PR15068. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173539 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-26Preserve Sema::UndefinedInternals across PCH boundaries. FixesNick Lewycky
-Wundefined-internal warnings with PCH. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173538 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-25patch for PR9027 and // rdar://11861085Fariborz Jahanian
Title: [PR9027] volatile struct bug: member is not loaded at -O; This is caused by last flag passed to @llvm.memcpy being false, not honoring that aggregate has at least one 'volatile' data member (even though aggregate itself has not been qualified as 'volatile'. As a result, optimization optimizes away the memcpy altogether. Patch review by John MaCall (I still need to fix up a test though). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173535 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-25clang/test/Index/annotate-comments-typedef.m: Remove CommentXMLValid in ↵NAKAMURA Takumi
CHECKs. Don't assume libxml2 here. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173534 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-25ARM says that the array cookie should always be eight bytes.John McCall
ARM is not thinking about over-aligned structures. Overrule ARM in both our generic-ARM and iOS ABI implementations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173531 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-25Move the decision about the kind of CGCXXABI to make insideJohn McCall
the family-specific files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173530 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-25Improve coordination between the module manager and the global moduleDouglas Gregor
index, optimizing the operation that skips lookup in modules where we know the identifier will not be found. This makes the global module index optimization actually useful, providing an 8.5% speedup over modules without the global module index for -fsyntax-only. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173529 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-25clang/test/Preprocessor/iwithprefix.c: Tweak default includes not to use ↵NAKAMURA Takumi
/usr/include. You may see such a message on non-posix system; ignoring nonexistent directory "/usr/local/include" ignoring nonexistent directory "/usr/include" git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173525 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-25[utils] Kill another no-longer-useful utility script.Daniel Dunbar
- We are long past the days of getting clang to fail in mass on swaths of code, fortunately. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173523 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-25simplify code by removing excessive bracing.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173521 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-25Attach enum's documentation to its typedef ifFariborz Jahanian
latter does not have one of its own. // rdar://13067629 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173516 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-25The standard ARM C++ ABI dictates that inline functions areJohn McCall
never key functions. We did not implement that rule for the iOS ABI, which was driven by what was implemented in gcc-4.2. However, implement it now for other ARM-based platforms. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173515 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-25First pass at abstracting out a class for the target C++ ABI.John McCall
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173514 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-25Optimize ModuleManager::visit() by precomputing the visitation orderDouglas Gregor
and limiting ourselves to two memory allocations. 10% speedup in -fsyntax-only time for modules. With this change, we can actually see some performance different from the global module index, but it's still about 1%. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173512 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-25Remove useless 'XPASS: *' from testsDmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173511 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-25Temporarily disabling ms-asm testRenato Golin
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173510 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-25This test actually passes, just add the missing expected-errorDmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173504 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-25Migrate test from grep to -fdiagnostics-parseable-fixitsDmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173496 91177308-0d34-0410-b5e6-96231b3b80d8