- Jul 21, 2008
-
-
Chris Lattner authored
llvm-svn: 53864
-
Chris Lattner authored
References to forward definitions should be warnings. llvm-svn: 53863
-
Chris Lattner authored
various objc lists over to it. First up, the protocol list on ObjCInterfaceDecl. llvm-svn: 53856
-
Chris Lattner authored
be consistent with ObjCInterfaceDecl. llvm-svn: 53852
-
Argyrios Kyrtzidis authored
llvm-svn: 53849
-
Chris Lattner authored
the standard "set these as the list of protocols" interface instead of a strange "set this as the size and then set each one to the value" interface. The problem with the later is that it a) is completely different from everything else, b) is awkward, and c) doesn't handle the case when a referenced protocol is invalid: it set it to null. This meant that all clients downstream would have to handle null protocols in the protocol list, and empirically they didn't. Fix this by not setting invalid protocols in the referenced protocol list, fixing the crash on test/Sema/objc-interface-1.m While I'm at it, clean up some locations so that we produce: t.m:1:25: error: cannot find interface declaration for 'NSObject', superclass of 'NSWhatever' @interface NSWhatever : NSObject <NSCopying> ~~~~~~~~~~~~~~~~~~~~~ ^ instead of: t.m:1:1: error: cannot find interface declaration for 'NSObject', superclass of 'NSWhatever' @interface NSWhatever : NSObject <NSCopying> ^ llvm-svn: 53846
-
Chris Lattner authored
@implementation to resolve nullary selector references. llvm-svn: 53845
-
Chris Lattner authored
it goes and makes std::strings out of them, which is not defined. llvm-svn: 53843
-
Chris Lattner authored
llvm-svn: 53842
-
Chris Lattner authored
interface. This fixes a bug where we used to accept: void test2(NSNumber x) { [x METH]; } which doesn't make sense and GCC rejects. llvm-svn: 53841
-
Chris Lattner authored
llvm-svn: 53837
-
Chris Lattner authored
llvm-svn: 53836
-
Chris Lattner authored
have better source ranges. Before: t.m:11:53: error: member reference is not to a structure or union CGFloat maxOffsetY = [_outlineLayer contentSize].height - [_outlineLayer frame].size.height; ^~~~~~~ after: t.m:11:54: error: member reference base type ('id') is not a structure or union CGFloat maxOffsetY = [_outlineLayer contentSize].height - [_outlineLayer frame].size.height; ~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ llvm-svn: 53834
-
Chris Lattner authored
llvm-svn: 53833
-
Chris Lattner authored
protocol. Simplify some code to use unconditional form of the protocol access list. llvm-svn: 53832
-
Chris Lattner authored
This code would previously crash on x.y where x is 'id'. llvm-svn: 53827
-
Chris Lattner authored
don't care which class actually defines it. llvm-svn: 53825
-
Chris Lattner authored
from: t.m:8:7: error: member reference is not to a structure or union pool->farm = 0; ^ ~~~~ to: t.m:8:7: error: 'NSAutoreleasePool' has member named 'farm' pool->farm = 0; ~~~~^ ~~~~ llvm-svn: 53824
-
Chris Lattner authored
llvm-svn: 53823
-
Chris Lattner authored
llvm-svn: 53822
-
Chris Lattner authored
llvm-svn: 53821
-
Chris Lattner authored
id<NSCopyable>* is not an "objc pointer type", id<NSCopyable> is. llvm-svn: 53820
-
Chris Lattner authored
interfaces. Just because they x->isPointerType() doesn't mean it is valid to just cast to a pointertype. We have to handle typedefs etc as well. llvm-svn: 53819
-
Chris Lattner authored
llvm-svn: 53817
-
- Jul 17, 2008
-
-
Argyrios Kyrtzidis authored
Unify ctx_iterator/ctx_begin()/ctx_end() and iterator/begin()/end() so that a single iterator type is used for both traversing decls of the same declaration context *and* of the parent declaration contexts, depending on the value of the bool parameter 'LookInParentCtx' that is passed to IdentifierResolver::begin(). llvm-svn: 53724
-
- Jul 16, 2008
-
-
Argyrios Kyrtzidis authored
When in C++, make EnumConstant names hide tag names in the same scope, instead of colliding with them. llvm-svn: 53702
-
Steve Naroff authored
- Make sure ObjCIvarDecl propagates the bitfield width. - RewriteObjC::SynthesizeIvarOffsetComputation(): Avoid using the __OFFSETOF__ mumbo jumbo for bitfields (since it isn't legal C). This fixes <rdar://problem/5986079> clang ObjC rewriter: bitfields and ivar access don't mix. llvm-svn: 53694
-
Argyrios Kyrtzidis authored
When checking for name collision between a tag and a previously defined namespace, the collision occured even when the tag was in a different nested scope. Fix it by taking into account the scope when checking for namespace-tag name collisions. llvm-svn: 53667
-
Ted Kremenek authored
Added parsing/sema support for __attribute__ ((IBOutlet)), a clang-specific attribute that the static analyzer will use to recognize what ivars are IBOutlets. llvm-svn: 53644
-
- Jul 14, 2008
-
-
Nate Begeman authored
Add some code to handle vector comparisons, which is the language side of the llvm vicmp/vfcmp instructions. Also make the vector-vector and vector-scalar asign checks a bit more sane under the presence of lax vector conversions. llvm-svn: 53565
-
- Jul 11, 2008
-
-
Chris Lattner authored
llvm-svn: 53467
-
- Jul 09, 2008
-
-
Ted Kremenek authored
llvm-svn: 53332
-
Chris Lattner authored
llvm-svn: 53328
-
- Jul 07, 2008
-
-
Nuno Lopes authored
also fix the correspondent test (it was expecting more errors than it should. please confirm my fix is correct (at least gcc agrees with me) llvm-svn: 53174
-
- Jul 05, 2008
-
-
Seo Sanghyeon authored
llvm-svn: 53141
-
- Jul 03, 2008
-
-
Anders Carlsson authored
llvm-svn: 53074
-
Chris Lattner authored
by filling in the body of a union with enum constants. llvm-svn: 53069
-
- Jul 02, 2008
-
-
Ted Kremenek authored
Added method "HandleTranslationUnit" to ASTConsumer. This is called by ParseAST when all of the ASTs in a translation unit have been built. llvm-svn: 53042
-
- Jul 01, 2008
-
-
Argyrios Kyrtzidis authored
llvm-svn: 52957
-
Argyrios Kyrtzidis authored
llvm-svn: 52956
-