aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-02-29Test for my last patch. // rdar://10267155.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151767 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29objective-c: provide fixit hint when atomic property does notFariborz Jahanian
have matching user defined setter/getter and a warning is issued. In this case, a fixit note is displayed. // rdar://10267155 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151766 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29Fix a couple -Wuninitialized warnings from gcc. Reported by David Greene.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151754 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29Serialization: Switch over to using the native SmallVector based BitstreamWriterDaniel Dunbar
ctor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151752 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29I referenced the incorrect rdar in my previous commit (r151745). Add the Chad Rosier
correct radar number to the test case for tracking purposes. rdar://10551066 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151746 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29Allocate TargetLibraryInfo for the CodeGen passes. Otherwise, it's instantiatedChad Rosier
by the BAA pass, which uses the default TargetLibraryInfo constructor. Unfortunately, the default TargetLibraryInfo constructor assumes all library calls are available and thus ignores -fno-builtin. rdar://10947759 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151745 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29Reverting test commitJason W Kim
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151739 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29Test commit. Please ignoreJason W Kim
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151738 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29[analyzer] Malloc: A pointer might escape through CFContainers APIs,Anna Zaks
funopen, setvbuf. Teach the checker and the engine about these APIs to resolve malloc false positives. As I am adding more of these APIs, it is clear that all this should be factored out into a separate callback (for example, region escapes). Malloc, KeyChainAPI and RetainRelease checkers could all use it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151737 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29Revert r151702, "Add support for handling captured variables in lambda debugDaniel Dunbar
info.", which broke some -O0 -g tests. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151730 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29Add -C when linking on Solaris so that the error messages are understandable ↵David Chisnall
by actual humans. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151726 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29Tentatively fix PR12117. The test case from the bug now passes, and all ↵Sebastian Redl
existing tests still pass, but there may still be corner cases. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151716 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29Reapply r151638 and r151641.James Molloy
The bug that was caught by Apple's internal buildbots was valid and also showed another bug in my implementation. These are now fixed, with regression tests added to catch them both (not Darwin-specific). Original log: ==================== Revert r151638 because it causes assertion hit on PCH creation for Cocoa.h Original log: --------------------- Correctly track tags and enum members defined in the prototype of a function, and ensure they are properly scoped. This fixes code such as: enum e {x, y}; int f(enum {y, x} n) { return 0; } This finally fixes PR5464 and PR5477. --------------------- I also reverted r151641 which was enhancement on top of r151638. ==================== git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151712 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29Remove a recursive visitiation in ExprEngine that is no longer neededErik Verbruggen
because the CFG is fully linearized. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151711 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29[analyzer] Tweak the UnreachableCode checker to not warning about ↵Ted Kremenek
unreachable default blocks. Patch by Cyril Roelandt! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151709 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29A couple minor bug-fixes for template instantiation for expressions which ↵Eli Friedman
are sometimes potentially evaluated. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151707 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29[driver] Emit an error when trying to use ARC on macosx earlier than 10.6Argyrios Kyrtzidis
rdar://10459258 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151706 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29Add support for handling captured variables in lambda debug info.Eric Christopher
This currently doesn't handle capturing the 'this' pointer for any enclosing class. Steal the lambda-expressions.cpp testcase and debugify it and try to use more variables to proof it against random changes. Part of rdar://10900684 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151702 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29Add some iterators for grabbing lambda expression contexts.Eric Christopher
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151701 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29Formatting.Eric Christopher
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151700 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29Make the odr-use logic work correctly for constant-expressions. PR12006.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151699 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29Sema/ObjC: Override search can generate a large search list, bump the base sizeDaniel Dunbar
of the SmallPtrSet way up to avoid commonly reallocating the buffer size. - I didn't see a good argument against it, so I bumped the limit to cover the max size we see during parsing Cocoa.h. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151698 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29ASTWriter: Cache some DenseMaps we use repeatedly.Daniel Dunbar
- This reduces our total # of allocations building a PCH for Cocoa.h by almost a whopping 50%. - A SmallPtrMap would be cleaner, but since we don't have one yet... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151697 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29clang/test/Analysis/stats.c: Fix up r151656.NAKAMURA Takumi
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151695 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29clang/test/Analysis/stats.c: Mark this as XFAIL: mingw32.NAKAMURA Takumi
FIXME: Could we guarantee not to get stack overflow also on mingw? git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151692 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29Parse: Change PragmaPackHandler to use the preprocessor allocator.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151689 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29objective-c modern translator. Fixes misc. bug in writing Fariborz Jahanian
the ivar offset symbol. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151683 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29Remove stray semi-colon.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151682 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-29Make sure list-initialization of arrays works correctly in explicit type ↵Eli Friedman
conversions. PR12121. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151674 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-28[libclang] Add a test I forgot to commit.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151669 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-28[PCH] Include a darwin-only PCH test on Cocoa.h.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151668 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-28Revert r151638 because it causes assertion hit on PCH creation for Cocoa.hArgyrios Kyrtzidis
Original log: --------------------- Correctly track tags and enum members defined in the prototype of a function, and ensure they are properly scoped. This fixes code such as: enum e {x, y}; int f(enum {y, x} n) { return 0; } This finally fixes PR5464 and PR5477. --------------------- I also reverted r151641 which was enhancement on top of r151638. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151667 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-28Single- and zero-element initializer lists to scalars are ↵Sebastian Redl
list-initializations. Fixes PR12118. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151666 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-28[analyzer diagnostics] Refactor filtration for PathDiagnosticConsumers that ↵Ted Kremenek
don't support cross-file diagnostics into a common place. Currently enable this filtration for Plist diagnostics as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151664 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-28[analyzer diagnostics] start prototyping stripping PathDiagnostics of ↵Ted Kremenek
unnecessary cruft caused by path inlining. This introduces a concept of a "prunable" PathDiagnosticEvent. Currently this is a flag, but we may evolve the concept to make this more dynamically inferred. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151663 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-28Modern objective-c translator. rewriting ivars of aggregate type.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151662 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-28[analyzer] Leaks should be uniqued by the allocation point in theAnna Zaks
closest function context (RetainCountChecker). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151661 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-28Prefer bitcast+GEP over ptrtoint+sub+inttoptr: it's semantically equivalent ↵Eli Friedman
here, and generally nicer to the optimizer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151659 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-28[analyzer] Retain release: drop the line number info from the leakAnna Zaks
message. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151657 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-28[analyzer] Stats: Add the stats about remove dead bindings, correct theAnna Zaks
test. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151656 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-28[driver] Add support for -g2 and -ggdb debug flags.Chad Rosier
rdar://10947759 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151654 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-28Add -lm by default on Solaris.David Chisnall
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151653 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-28It turns out -fno-cxa-atexit just produces broken code, so disable it on ↵David Chisnall
Solaris and we'll ship a __cxa_atexit implementation... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151648 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-28Un-break clang based on r151638 - What was meant to be a trivial variable ↵James Molloy
name change went horribly wrong and I forgot to retest afterwards. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151641 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-28Correctly track tags and enum members defined in the prototype of a ↵James Molloy
function, and ensure they are properly scoped. This fixes code such as: enum e {x, y}; int f(enum {y, x} n) { return 0; } This finally fixes PR5464 and PR5477. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151638 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-28[AST] When we @synthesize a property with a user-defined ivar name,Argyrios Kyrtzidis
make sure to record the source location of the ivar name. [libclang] When indexing @synthesized objc methods, report the @implementation as the lexical container. Fixes rdar://10905472 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151635 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-28[libclang] When indexing an objc property, also provide information aboutArgyrios Kyrtzidis
the getter/setter objc method entities that the property is associated with. rdar://10244558 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151634 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-28[AST] Associate the getter/setter methods to a property of a objc class ↵Argyrios Kyrtzidis
extension. [libclang] Index the getter/setter methods of a property of a objc class extension. Fixes rdar://10907597 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151633 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-28Some more Solaris fixes. Now successfully building libc++ on Solaris with ↵David Chisnall
clang (and linking clang against it). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151632 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-28Remove stray semi-colons.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151631 91177308-0d34-0410-b5e6-96231b3b80d8