aboutsummaryrefslogtreecommitdiff
path: root/test/SemaObjC
AgeCommit message (Collapse)Author
2009-04-12rename testChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68898 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-12merge protocol-test-1.m -> protocol-test-2.mChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68897 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-12Merge forward-circular into protocol-test-2Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68896 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-12this test is subsumed by protocol-test-2.mChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68895 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-12Fix rdar://6771034: don't warn on use of forward declared protocol in protocolChris Lattner
list of another protocol definition. This warning is very noisy and GCC doesn't produce it so existing code doesn't expect it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68894 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-12fix typo in test name.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68893 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-12call objc interfaces just "interfaces" in diagnostics, not "Objective-C types"Chris Lattner
or "Objective-C interface types" etc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68892 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-12implement rdar://6780761, making sema reject some code that otherwiseChris Lattner
crashes codegen. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68891 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-11improve the 'conflicting types' diagnostics to include correct location ↵Chris Lattner
info, now that it is plumbed through Sema. On a file from growl, we used to emit: t.mi:107059:1: warning: conflicting types for 'removePluginHandler:forPluginTypes:' - (void) removePluginHandler:(id <GrowlPluginHandler>)handler forPluginTypes:(NSSet *)extensions { ^ t.mi:105280:1: note: previous definition is here - (void) removePluginHandler:(id <NSObject>)handler forPluginTypes:(NSSet *)types; ^ now we produce: t.mi:107059:55: warning: conflicting parameter types in implementation of 'removePluginHandler:forPluginTypes:': 'id<NSObject>' vs 'id<GrowlPluginHandler>' - (void) removePluginHandler:(id <GrowlPluginHandler>)handler forPluginTypes:(NSSet *)extensions { ^ t.mi:105280:45: note: previous definition is here - (void) removePluginHandler:(id <NSObject>)handler forPluginTypes:(NSSet *)types; ^ We still don't have proper loc info for properties, hence the FIXME. rdar://6782494 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68879 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-11fix blocks to reject objc interfaces returned by value. Also,Chris Lattner
a block without a prototype should still coerce a return in it to use the declared return type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68875 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-11fix testChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68874 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-11diagnose attempts to return objc interfaces by-value from C functions.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68873 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-11Improve the 'cannot pass objc interface by value' diagnostic:Chris Lattner
1) improve localizability by not passing english strings in. 2) improve location for arguments. 3) print the objc type being passed. Before: method-bad-param.m:15:1: error: Objective-C type cannot be passed by value -(void) my_method:(foo) my_param ^ after: method-bad-param.m:15:25: error: Objective-C interface type 'foo' cannot be passed by value -(void) my_method:(foo) my_param ^ git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68872 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-10Fix another fallout from defining __weak unconditionally.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68834 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-10Force triple for a number of tests that rely on __weak.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68826 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08Fix <rdar://problem/6770998> make cast of super illegal (again:-)Steve Naroff
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68659 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08Fixed a problem using property syntax on a 'super'Fariborz Jahanian
used as receiver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68631 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-07Fix <rdar://problem/6764172> [sema] crash on invalid.Steve Naroff
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68568 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-07Now that we have __weak defined as attribute in all modes,Fariborz Jahanian
we must not issue gc-specific errors in non-gc mode. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68551 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-07Fixes method name lookup when method appears inFariborz Jahanian
the base implementations (and not in current implementation). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68527 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-07Tweak Sema::ActOnInstanceMessage() to look for a class method when dealing ↵Steve Naroff
with qualified id's. This change is motivated by our desire to not support the "Class<foo>" idiom. Note that the change makes perfect sense (since all ObjC classes are also id/instances). This allow us to document a simple migration path...change "Class <foo>" to "id <foo>". This effects: - <rdar://problem/6761939> TASK: File source change radars for "qualified Class" errors - <rdar://problem/6761864> Protocol qualified Class is unsupported git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68517 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-07Fix typo in newly added test case.Steve Naroff
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68515 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-07Change the type of ObjC @ string constants (from NSConstantString->NSString).Steve Naroff
This fixes <rdar://problem/6757102> clang type for @"xxx" is "NSConstantString *" (GCC type is "NSString *"). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68514 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-06Warn instead of error on duplicate protocol definitions.Fariborz Jahanian
Be kind to so many projects which are doing this (and be like gcc). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68474 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-06Make casting 'super' a deprecated warning (instead of a hard error).Steve Naroff
This will simplify clang adoption, and is probably better "etiquette" (since gcc has always accepted this idiom without warning). Once we are over the adoption hurdle, we can turn this into an error. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68468 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-06writable property in a category of class's superclassFariborz Jahanian
makes the property writable in the current class. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68446 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-03Real corener case of a method declared in a protocolFariborz Jahanian
used in a class which declares a property of the same name. This should not result in an unimplemented method warning. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68409 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-03improve the string literal comparison warning to not call @encode's "string ↵Chris Lattner
literals". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68407 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-03Tweak test (now that ↵Steve Naroff
http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20090330/015001.html is fixed). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68364 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-02Fix up lookup rules for properties declared inFariborz Jahanian
objc's continuation class. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68339 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-02Fix http://llvm.org/bugs/show_bug.cgi?id=3907.Steve Naroff
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68338 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-01Update test case and comment.Steve Naroff
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68247 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-01CodeGenModule::GetAddrOfConstantCFString():Steve Naroff
- Finish up support for converting UTF8->UTF16 to support ObjC @"string" constants. Remove warning from CheckObjCString. As the FIXME in the test case indicates, I still have a bug to work out (apparently with \u handling). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68245 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-01Forgot to remove trailing &&Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68220 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-01Ted & I crossed paths here, these tests are in cocoa-pth.m now.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68215 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-01Add cocoa-pth.c test case, this got lost in shuffling PTH test cases.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68205 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-01Re-enable PTH testing for cocoa.h and carbon.h. This tests that PTH works onTed Kremenek
real-world header files and these tests have caught serious bugs in the past. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68204 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-01Pull clang-cc code for generating PTH files based on the input type.Daniel Dunbar
- <rdar://problem/6741594> [pth] don't abuse -x to drive pth generation - Simpler, and fixes PR3915. Cleanup test cases for PTH: - Update to use -emit-pth - Removed PTH test of carbon.c and cocoa.mm; these didn't actually verify anything, and since PTH is token based the extra coverage (over cocoa.m) isn't particularly helpful. - Split PTH tests in cocoa.m to cocoa-pth.m, solely to increase available parallelism when running tests. Ted, could you update the PTH test cases (include-pth.c and cocoa-pth.m) to have some sort of positive check that the PTH is getting used? "# of PTH cache hits" or "tokens read from PTH cache" statistics would work great. :) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68189 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-01Fix block comparisons. Radar 6732116.Mike Stump
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68171 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-31fe support for objc2's nonfragile-abi synthesized ivars.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68077 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-26Fix <rdar://problem/6697053> instance variable is protected.Steve Naroff
Treat @package the same as @public. The documentation for @package says it is analogous to private_extern for variables/functions. Fully implementing this requires some kind of linker support (so access is denied to code outside the classes executable image). I don't believe GCC fully implements this semantic. Will discuss with Fariborz offline. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67755 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-24Rename clang to clang-cc.Daniel Dunbar
Tests and drivers updated, still need to shuffle dirs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67602 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-21Issue error if variables are defined inside an objc class,Fariborz Jahanian
category or protocol. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67450 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-19When looking for property name (or getter method) in aFariborz Jahanian
dot-syntax expression after earching the list of protocols in the qualified-id, must keep searching the protocol list of each of the protocols in the list. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67314 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-18Ignore weak import on properties.Mike Stump
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67205 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-13Force triple for a couple test cases.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66974 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-11Implement FIXME related to <rdar://problem/6496506> Implement class ↵Steve Naroff
setter/getter for properties. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66689 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-11Fix <rdar://problem/6655054> clang issues bogus error on property usage in a ↵Steve Naroff
dot-syntax. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66659 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-11Fix <rdar://problem/6578665> user declared setter method should be used when ↵Steve Naroff
using property syntx. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66658 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-11Improve the "bad receiver" warning for ObjC message sends to be less confusing.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66635 91177308-0d34-0410-b5e6-96231b3b80d8