aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-09-20Driver/Objective-C: Retool Objective-C ABI flags to be more usable, and actuallyDaniel Dunbar
document behavior. Will wonders never cease. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114334 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-20Check that an overloaded function name, when used by the ! operator,Douglas Gregor
actually resolves to a particular function. Fixes PR8181, from Faisal Vali! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114331 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-20Give implicitly-defined default constructors and destructors emptyDouglas Gregor
bodies, from Martin Vejnar! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114329 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-19Revert r114316, -Wunused-value enabled by default was intended.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114318 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-19Make -Wunused-value off by default, matching GCC. Fixes rdar://7126194.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114316 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-19Implement -Wunused-label.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114315 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-19Warn when an expression result in a LabelStmt is unused.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114314 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-19Update users manual comments on X86 and ARM support.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114311 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-18Fixes IRgen bug in objc++ reference binding of aFariborz Jahanian
getter expression. Fixes // rdar://8437240 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114299 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-18Problem with gnu conditional extension with missingFariborz Jahanian
LHS and when conditional expression is an array. Since it will be decayed, saved expression must be saved with decayed expression. This is necessary to preserve semantics of this extension (and prevent an IRGen crash which expects an array to always be decayed). I am sure there will be other cases in c++ (aggregate conditionals for example) when saving of the expression must happen after some transformation on conditional expression has happened. Doug, please review. Fixes // rdar://8446940 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114296 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-18Give the Objective-C _cmd an "unlikely" code completion priority; it'sDouglas Gregor
very rarely used. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114286 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-18do not rely on the implicit-dereference semantics of dyn_cast_or_nullGabor Greif
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114281 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-18static local variables with destructors don't require a global destructorJohn McCall
unless we're on a platform without __cxa_atexit (or use thereof has been disabled). This patch actually just disables the check completely for static locals, but I've filed http://llvm.org/bugs/show_bug.cgi?id=8176 to track the platform-specific fix. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114269 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-18Adjust a fixup's starting branch if it's being resolved becauseJohn McCall
it reached the outermost scope and it hasn't yet been forwarded to a cleanup. Fixed PR8175. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114259 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-18Add another text for code completion after recoveryDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114257 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-18Continue parsing more postfix expressions, even after semanticDouglas Gregor
errors. Improves code completion in yet another case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114255 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-18Added '|' delimiter to separate inline asm multiple alternative constraints ↵John Thompson
for Clang side of support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114253 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-18Add more error checking to attribute vecreturnJohn Thompson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114251 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-18Fix a bug with binding l-values to elided temporaries, and leave a coupleJohn McCall
helpful asserts behind. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114250 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-18formatted everything to fit within 80 columnsAnton Yartsev
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114249 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-18Testcase for r114239.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114247 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-18Revert r114244 since it breaks a test in Analysis.Tom Care
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114246 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-18IdempotentOperationChecker no longer reports errors that are post-dominated ↵Tom Care
by a sink. This fixes some false positives that were flagged because a path was incomplete (usually in a loop). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114244 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17The MMX shift-with-immediate builtins require the equivalentBill Wendling
shift-with-immediate LLVM intrinsics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114239 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17Remove FIXME. The type is correct.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114238 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17Sema/transparent_union: Make sure to add implicit cast when constructingDaniel Dunbar
implicit union values for the transparent_union extension. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114236 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17Tweak in DeclPrinter printing of uses of copy constructors. Patch by Jim ↵Ted Kremenek
Goodnow II. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114235 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17Update testDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114234 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17Improve recovery when the middle expression of a ternary operator is ill-formedDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114231 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17When we run into an error parsing or type-checking the left-hand sideDouglas Gregor
of a binary expression, continue on and parse the right-hand side of the binary expression anyway, but don't call the semantic actions to type-check. Previously, we would see the error and then, effectively, skip tokens until the end of the statement. The result should be more useful recovery, both in the normal case (we'll actually see errors beyond the first one in a statement), but it also helps code completion do a much better job, because we do "real" code completion on the right-hand side of an invalid binary expression rather than completing with the recovery completion. For example, given x = p->y if there is no variable named "x", we can still complete after the p-> as a member expression. Along the recovery path, we would have completed after the "->" as if we were in an expression context, which is mostly useless. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114225 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17Diagnose use of incomplete type on method argument type ofFariborz Jahanian
method definitions instead of crashing in code gen. Fixes radar 8421082. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114223 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17Update C++0x statusDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114217 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17fix rdar://8445858 - __sync_* intrinsics erroneously reject ObjC pointersChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114209 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17Only assignment operator triggers property setter call.Fariborz Jahanian
Fixes radar 8437253. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114207 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17When traversing an InitListExpr, there may not be a syntactic form;Douglas Gregor
check for NULL and visit the InitListExpr we have if there is no syntactic form. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114203 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17Driver: implement driver automagic support for -lcc_kextShantonu Sen
Rewrite linker arguments to use libclang_rt.cc_kext.a instead of gcc-specific libcc_kext.a Resolves Radar 7808495 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114193 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17Add a -ftrapv-handler= option which allows a handler to invoke instead of ↵David Chisnall
simply aborting when a signed operation overflows. This mirrors the (GCC-incompatible) behaviour from clang 1.0 and 1.1 when -ftrapv was specified, but allows the handler to be defined for each compilation unit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114192 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17Use a temporary file for output which gets renamed after all the writing is ↵Argyrios Kyrtzidis
finished. This mainly prevents failures and/or crashes when multiple processes try to read/write the same PCH file. (rdar://8392711&8294781); suggestion & review by Daniel! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114187 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17Fix test for no-asserts builds.John McCall
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114185 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17Patch to add IRgen support for Gnu's conditional operatorFariborz Jahanian
extension when missing LHS. This patch covers scalar conditionals only. Others are wip. (pr7726, radar 8353567). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114182 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17rename variable, 'Type' seems to be present inGabor Greif
the enclosing scope, which confuses gcc v3.4 to no end git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114174 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17Driver/DarwinClang: Add GCC libexec paths so we can find the cc1 binaries if weDaniel Dunbar
ever use fallback. - Not necessary for clang as a compiler, but useful for testing purposes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114172 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17IRgen: Change CodeGenPasses to be a PassManager, so it can have CallGraphSCC orDaniel Dunbar
Module. Patch by Mike Gist! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114171 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17Reapply "Driver/Darwin: Time for another spin at switching to the DarwinClang",Daniel Dunbar
now that eprintf symbol issue is resolved. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114166 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17Revert "Driver/Darwin: Time for another spin at switching to the DarwinClangDaniel Dunbar
toolchain.", while I investigate the totally non-surprising ensuing breakage. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114164 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17Fix this test to use -cc1.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114156 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17Driver: Support -dumpmachine.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114155 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17Currently we're initializing the vtable pointers of a class only afterJohn McCall
the bases are completely initialized. This won't work --- base initializer expressions can rely on the vtables having been set up. Check for uses of 'this' in the initializers and force a vtable initialization if found. This might not be good enough; we might need to extend this to handle the possibility of arbitrary code finding an external reference to this (not yet completely-constructed!) object and accessing through it, in which case we'll probably find ourselves doing a lot more unnecessary stores. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114153 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17Driver/Darwin: Time for another spin at switching to the DarwinClang toolchain.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114149 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17Driver: Fix spelling of AddCXXStdlibLibArgs, which I copy-n-pasto'd.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114147 91177308-0d34-0410-b5e6-96231b3b80d8