aboutsummaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2009-10-21Revert those last two commits. Beware the treacherous semicolon.John McCall
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84736 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21Preserve type source information when substituting into ParmVarDecls.John McCall
Apparently I'm grinding my commit count. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84735 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21Preserve type source information when substituting into FieldDecls.John McCall
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84734 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21Preserve source information when substituting into VarDecls.John McCall
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84733 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21Clone Sema::SubstType for DeclaratorInfos.John McCall
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84724 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21Initialize using the base location provided by the derived implementation,John McCall
not the default one (which is always empty). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84721 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21Fix 80-col violation.Mike Stump
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84719 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21Rewrite TreeTransform to transform types as DeclaratorInfos rather than as bareJohn McCall
QualTypes. Don't actually exploit this yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84716 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21Add TypeLocBuilder, an API for incrementally creating TypeLocs. ChangeJohn McCall
the API for creating DeclaratorInfos to allow callers to provide an exact size. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84715 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Remove stale comment and tighten code.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84697 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Add FIXME.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84696 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Use llvm::OwningPtr in CFGBuilder, fixing a leak on an error path.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84695 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Code-gen for CXXZeroInitValueExpr AST passedFariborz Jahanian
as argument to a function call. Removes a FIXME. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84694 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Change ResolveAddressOfOverloadedFunction to support TemplateIdRefExpr. No ↵Anders Carlsson
testcase yet because FixOverloadedFunctionReference needs to be updated too. Doug, plz review. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84693 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Fix the 32-bit ABI to return structures with non-trivial copy ctors or dtors ↵Anders Carlsson
indirectly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84686 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Add destructor and cleanup code to LocationContext (fixing some leaks). ↵Ted Kremenek
Along the way, have AnalysisManager periodically cleanup its AnalysisContextManager and LocationContextManager objects, as they don't need to forever retain all the CFGs ever created when analyzing a file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84684 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20For now, we need to have the llvm type of the block pointer remain asMike Stump
it was. Fixes codegen bug introduced yesterday. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84668 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Moved comment to its proper place in my last patch.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84662 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Patch implements ranking conversions between member pointers [over.ics.rank]Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84660 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Do not eagerly cache DITypes because it allows real struct type to be ↵Devang Patel
shadowed by forward declared struct type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84659 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Driver: If unable to find the gcc tool chain, try the next OS rev.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84656 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Encode global variable name in debug info.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84653 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Add missing semi-colon.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84650 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Bring Darwin into the switch-case statement instead of its own if for ↵Edward O'Callaghan
readability. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84646 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Issue warning if method body starts with a semicolon.Fariborz Jahanian
Fixes <rdar://problem/7308503> clang should disallow the trailing semicolon in method definitions git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84645 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Remove default argument for ImpCastExprToType. Add appropriate argument Eli Friedman
to all callers. Switch a few other users of CK_Unknown to proper cast kinds. Note that there are still some situations where we end up with CK_Unknown; they're pretty easy to find with grep. There are still a few missing conversion kinds, specifically pointer/int/float->bool and the various combinations of real/complex float/int->real/complex float/int. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84623 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Call 'clear()' in ~RopePieceBTreeLeaf(), decrementing the referenceTed Kremenek
counts of the bufffers referened by the RopePieces in RopePieceBTreeLeaf. This (I believe) corrently fixes the leak I meant to fix in r84601 (which ended up causing an overrelease). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84615 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Handle substitutions into the "first qualifier in scope" of aDouglas Gregor
qualified member access expression (e.g., t->U::member) when that first qualifier refers to a template parameters. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84612 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Revert 84601. Looks like it was causing failures on some systems.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84610 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Implement PR5242: don't desugar a type more than once in a diagnostic. ThisChris Lattner
implements a framework that allows us to use information about previously substituted values to simplify subsequent ones. Maybe this would be useful for C++'y stuff, who knows. We now get: t.c:4:21: error: invalid operands to binary expression ('size_t' (aka 'unsigned long *') and 'size_t') return (size_t) 0 + (size_t) 0; ~~~~~~~~~~ ^ ~~~~~~~~~~ on the testcase. Note that size_t is only aka'd once. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84604 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20teach FormatDiagnostic to aggregate previously formatted arguments andChris Lattner
pass them down into the ArgToStringFn implementation. This allows redundancy across operands to a diagnostic to be eliminated. This isn't used yet, so no functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84602 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Fix a reference count imbalance in RewriteRope::MakeRopeString().Ted Kremenek
This was causing a ton of memory to be leaked when using HTML diagnostics with the static analyzer (on large files with many errors). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84601 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20code cleanup, convert if tree to switch etc.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84599 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Refine the type of the first parameter to block invoke functions.Mike Stump
WIP. I have yet to find the magic incantation to get the structure type to be defined. If someone has a pointer, love to hear it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84590 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20RegionStore: Use the *default* binding (instead of the *direct* binding) of ↵Ted Kremenek
an Objective-C object region when doing lazy value retrieval of an ivar. This fixes: <rdar://problem/7312221> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84584 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20retain/release checker: allow 'new', 'copy', 'alloc', 'init' prefix to start ↵Ted Kremenek
before '_' when determining Cocoa fundamental rule. Fixes: <rdar://problem/7265711> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84569 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20Builtin candidate minimization forFariborz Jahanian
<<=, >>= and the rest. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84568 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-19Parse a simple-template-id following a '~' when calling a destructor, e.g.,Douglas Gregor
t->~T<A0, A1>() Fixes PR5213. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84545 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-19The constructor for ASTUnit now takes a DiagnosticClient*, allowing uses of ↵Ted Kremenek
ASTUnit to specify alternate DiagnosticClients. To match this API, ASTUnit::LoadFromPCHFile() now takes a corresponding DiagnosticClient* argument as well. The DiagnosticClient object is destroyed when the ASTUnit object is destroyed. The CIndex library now uses this API to create a 'IgnoreDiagnosticsClient' that simply silences diagnostics when using the clang_createTranslationUnitFromSourceFile() function. This fixes <rdar://problem/7312058>. This API can change in the future as we add more flexibility for clients. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84539 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-19Add the built-in candidate set reduction hueristicFariborz Jahanian
to '+=', '-=', '*=' and '/=' builtin operators and fixes a logic bug exposed by doing this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84538 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-19Copy conversion of an expression to its base classFariborz Jahanian
is a standard convesion and not a user-defined conversion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84525 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-19Handle emitting the assignment operator when the lhs is a reference. Fixes ↵Anders Carlsson
PR5227. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84518 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-19Set the cast kind to CK_NoOp for C-style casts that are really const casts. ↵Anders Carlsson
Fixes PR5248. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84514 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-19Move Diagnostic/DiagClient/FileManager from Indexer => ASTUnit.Steve Naroff
Removing this shared data should enable clang_createTranslationUnit/clang_createTranslationUnitFromSourceFile to be run from multiple threads (related to <rdar://problem/7303432>). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84499 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-19Workaround a bug exposed by the FileCheckify of message-length.c, the caret endDaniel Dunbar
column computation isn't correct and could exceed the line length, which resulted in a buffer overflow later. - Chris, is there a better way for this code to compute the final column used by the caret? git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84475 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-19AuroraUX toolchain should call GNU assembler not the Solaris assembler.Edward O'Callaghan
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84469 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-19Avoid std::string concatenation.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84458 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-19Twinify CodeGenFunction::CreateTempAllocaDaniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84456 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-19Suppress build warning.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84453 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-18When binding a reference to a temporary, it's important that other ↵Anders Carlsson
temporaries created as on the RHS are destroyed before emitting the dtor for the temporary. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84451 91177308-0d34-0410-b5e6-96231b3b80d8