aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-03-05Tweak diag for <rdar://problem/5982579> [clang on xcode] (using ↵Steve Naroff
arch=x86_64): synthesized property 'sdkPath' must either be named the same as a compatible ivar or must explicitly name an ivar. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66162 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05Fix <rdar://problem/6144382> [sema] gcc inconsistency w.r.t. forward ↵Steve Naroff
protocol declarations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66161 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05prep work for copy/destroy helpers for block literals.Mike Stump
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66159 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05if we die in IR generation of a compound statement, include Chris Lattner
it in the stack trace, giving us stuff like: Stack dump: 0. Program arguments: clang t.c -emit-llvm 1. <eof> parser at end of file 2. t.c:1:5: LLVM IR generation of declaration 'a' 3. t.c:1:9: LLVM IR generation of compound statement ('{}') 4. t.c:2:3: LLVM IR generation of compound statement ('{}') Abort git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66154 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05rename PrettyStackTraceDecl -> PrettyStackTraceActionsDecl.Chris Lattner
Introduce a new PrettyStackTraceDecl. Use it to add the top level LLVM IR generation stuff in Backend.cpp to stack traces. We now get crashes like: Stack dump: 0. Program arguments: clang t.c -emit-llvm 1. <eof> parser at end of file 2. t.c:1:5: LLVM IR generation of declaration 'a' Abort for IR generation crashes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66153 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05Update checker build.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66152 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05remove unneeded forward decl.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66151 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05if we crash while parsing a block literal, include it.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66150 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05fix eof checkChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66149 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05When the parser is live, print out the location and spelling of its current ↵Chris Lattner
token. For example: Stack dump: 0. Program arguments: clang t.cpp 1. t.cpp:4:8: current parser token: ';' 2. t.cpp:3:1: parsing struct/union/class body 'x' Abort It is weird that the parser is always "underneath" any parse context actions, but the parser is created first. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66148 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05finish comment.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66146 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05Driver: Basic argument parsing.Daniel Dunbar
- Add Driver::ParseArgStrings. - Store values directly in CommaJoinedArg to support simple access. - Add FlagArg class. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66142 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05Test case: When using RegionStore with the retain/release checker, stop ↵Ted Kremenek
tracking objects assigned to self's ivar. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66139 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05Add test case for RegionStore's tracking of the ivars of 'self'.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66136 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05Add initial support for tracking ivars, with special handling for ivars of ↵Ted Kremenek
'self'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66133 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05Make IRGen compatible with declaring a function with incomplete Eli Friedman
return/argument types. (The generated IR isn't ideal, but we can't really do better in general.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66132 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05Add 'cast<>' to remove an extra function call and dynamic cast.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66131 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05More fixes in cast logic.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66130 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05Initial implementation of CodeGen for incomplete function types; fixes Eli Friedman
PR3688. (The FIXME is a rather big performance issue, but it only affects code using this feature, which is relatively rare.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66128 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05GRExprEngine: Polish up handling of casting integer constants to pointers ↵Ted Kremenek
and back. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66127 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05Avoid dispose calls when only doing gc.Mike Stump
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66126 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05Fix regression in transparent translation of nonloc::ConcreteInto to ↵Ted Kremenek
loc::ConcreteInt. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66125 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05Include struct context info for parser/sema crashes. ThisChris Lattner
gives us: Stack dump: 0. using-directive.cpp:26:16: in compound statement ('{}') 1. using-directive.cpp:26:16: parsing function body 'A::K1::foo' 2. using-directive.cpp:25:3: parsing struct/union/class body 'A::K1' 3. using-directive.cpp:5:1: parsing namespace 'A' 4. clang using-directive.cpp Abort for code like: namespace A { ... class K1 { void foo() { <<crash>> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66124 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05Include namespace contexts in the virtual stack trace, so we get stuffChris Lattner
like this: Stack dump: 0. using-directive.cpp:9:14: in compound statement ('{}') 1. using-directive.cpp:9:14: parsing function body 'A::B::f' 2. using-directive.cpp:7:3: parsing namespace 'A::B' 3. using-directive.cpp:5:1: parsing namespace 'A' 4. clang using-directive.cpp Abort for testcase like like: namespace A { short i; namespace B { long i; void f() { <<crash>> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66123 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05include objc method decl contexts in stack trace of crash, e.g.:Chris Lattner
Stack dump: 0. message.m:53:13: in compound statement ('{}') 1. message.m:53:13: parsing Objective-C method 'xx' 2. clang message.m git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66121 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05Set isMain bit for MainFile.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66120 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05When parsing a function body, add it to the crash stack, giving us somethingChris Lattner
like: Stack dump: 0. t.c:5:10: in compound statement ('{}') 1. t.c:3:12: in compound statement ('{}') 2. t.c:3:12: parsing function body 'foo' 3. clang t.c Abort git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66118 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05Add codegen support for __block variables to call _Block_object_dispose as ↵Mike Stump
necessary. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66117 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05fix some 80 col violations.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66114 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05Simplify the interface to ParseFunctionStatementBody to not take Chris Lattner
locations that are the current tok loc. Note that inline C++ methods have a big fixme that could cause a crash. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66113 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05Use LLVM type header rather than using stdint.h directly.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66111 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05Fix message titleTed Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66110 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05update xcode projChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66109 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-05Include information about compound statements when crashing in sema or theChris Lattner
parser. For example, we now print out: 0. t.c:5:10: in compound statement {} 1. t.c:3:12: in compound statement {} 2. clang t.c -fsyntax-only git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66108 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-04For now, do not track NSWindow objects and it's subclasses.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66107 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-04Driver: Implement Option::accept methods.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66106 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-04Driver: Fix off by one in ParseOneArg; this code is ugly but will beDaniel Dunbar
replaced anyway. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66101 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-04Driver: Add Arg::dump and SeparateArg stubs.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66100 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-04Removed an unfortunate cut and paste left-over.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66099 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-04Add prototype support for invalidating fields for structures passed-by-referenceTed Kremenek
to unknown functions. Most of this logic should be eventually moved to RegionStore and be made lazy. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66094 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-04MemRegion:Ted Kremenek
- Have 'TypedRegion::getRValueType()' return a null QualType for 'id<...>' instead of aborting. - Change 'TypedRegion::isBoundable()' to return true for all objects with a non-null RValueType (this may not be the final behavior). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66093 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-04Add an optional "tag" to conjured symbols that allows us to distinguish betweenTed Kremenek
multiple symbols conjured at the same location. All that is required of the tag is that it is a fixed void* value that points to an memory address that remains valid throughout the remainder of the lifetime of the SymbolManager. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66092 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-04Fixup __block codegen in nested block literals.Mike Stump
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66091 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-04Driver: Add OptTable::ParseOneArg.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66090 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-04Driver: Add ArgList::{append, getArgString}Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66089 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-04Driver: Stub out Arg implementations.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66088 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-04Implemented access check for ivars accessed insideFariborz Jahanian
c-style functions declared inside objc @implementations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66087 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-04Driver: Option's need to know their ID.Daniel Dunbar
- Also, add Input and Unknown opts to OptTable. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66079 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-04Start making use of "pretty stack dumps" to get Chris Lattner
better crash info when clang crashes. Step #2 of many. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66078 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-04minor cleanupsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66077 91177308-0d34-0410-b5e6-96231b3b80d8