summaryrefslogtreecommitdiffstats
path: root/test/SemaObjC/default-synthesize.m
Commit message (Collapse)AuthorAgeFilesLines
* Add a fixit for -Wobjc-protocol-property-synthesisAlex Lorenz2017-07-031-1/+1
| | | | | | | | | rdar://32132756 Differential Revision: https://reviews.llvm.org/D34886 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@307014 91177308-0d34-0410-b5e6-96231b3b80d8
* Objective-C [qoi]. If property is going to be implementedFariborz Jahanian2014-08-291-2/+16
| | | | | | | | | in the super class, do not issue the warning about property in current class's protocol will not be auto synthesized. // rdar://18179833 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@216769 91177308-0d34-0410-b5e6-96231b3b80d8
* Objective-C. Tweak diagnosing properties that are not auto-synthesized.Fariborz Jahanian2014-08-291-2/+24
| | | | | | | | | | | | Do not warn when property declared in class's protocol will be auto-synthesized by its uper class implementation because super class has also declared this property while this class has not. Continue to warn if current class has declared the property also (because this declaration will not result in a 2nd synthesis). rdar://18152478 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@216753 91177308-0d34-0410-b5e6-96231b3b80d8
* Objective-C. Improve diagnostic when property isFariborz Jahanian2014-07-281-1/+1
| | | | | | | | not auto synthesized in current implementation. rdar://17774815 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@214090 91177308-0d34-0410-b5e6-96231b3b80d8
* Objective-C. Issue more warning diagnostic when certainFariborz Jahanian2014-07-261-3/+3
| | | | | | | | | properties are not synthesized in property auto-synthesis, as it can potentiall lead to runtime errors. rdar://17774815 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@214032 91177308-0d34-0410-b5e6-96231b3b80d8
* Enhance "auto synthesis will not synthesize property in protocol" to include ↵Ted Kremenek2013-12-121-1/+1
| | | | | | | | property and protocol name. Implements <rdar://problem/15617839>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@197187 91177308-0d34-0410-b5e6-96231b3b80d8
* Replace -fobjc-default-synthesize-properties with ↵Rafael Espindola2013-09-271-1/+1
| | | | | | | | | disable-objc-default-synthesize-properties. We want the modern behavior most of the time, so inverting the option simplifies the driver and the tests. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191551 91177308-0d34-0410-b5e6-96231b3b80d8
* Added a new attribute, objc_root_class, which informs the compiler when a ↵Patrick Beard2012-04-061-1/+1
| | | | | | | | | | root class is intentionally declared. The warning this inhibits, -Wobjc-root-class, is opt-in for now. However, all clang unit tests that would trigger the warning have been updated to use -Wno-objc-root-class. <rdar://problem/7446698> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154187 91177308-0d34-0410-b5e6-96231b3b80d8
* objc2: add __has_feature(objc_default_synthesize_properties).Fariborz Jahanian2012-02-021-4/+14
| | | | | | | // rdar://10770497 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149565 91177308-0d34-0410-b5e6-96231b3b80d8
* objc: do not auto synthesize properties declared inFariborz Jahanian2011-12-151-0/+13
| | | | | | | protocols; with a warning. // rdar://10567333 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146626 91177308-0d34-0410-b5e6-96231b3b80d8
* Make -fobjc-nonfragile-abi the -cc1 default, since it's theJohn McCall2011-10-021-1/+1
| | | | | | | | | | | | | | | | | | | | | increasingly prevailing case to the point that new features like ARC don't even support the fragile ABI anymore. This required a little bit of reshuffling with exceptions because a check was assuming that ObjCNonFragileABI was only being set in ObjC mode, and that's actually a bit obnoxious to do. Most, though, it involved a perl script to translate a ton of test cases. Mostly no functionality change for driver users, although there are corner cases with disabling language-specific exceptions that we should handle more correctly now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140957 91177308-0d34-0410-b5e6-96231b3b80d8
* objective-c - Make warning on unimplemented protocols pointFariborz Jahanian2011-08-271-3/+3
| | | | | | | | | to class implementation where it is supposed to be implemented. // rdar://10009982. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138714 91177308-0d34-0410-b5e6-96231b3b80d8
* objective-c: reverse patch for // rdar://9818354Fariborz Jahanian2011-08-011-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136658 91177308-0d34-0410-b5e6-96231b3b80d8
* objective-c: Any use of @synthesize or @dynamic lexically after a method (or ↵Fariborz Jahanian2011-07-221-1/+1
| | | | | | | | | | | C function) implementation will be rejected with a compilation error in ARC mode, and a compiler warning otherwise. This may cause breakage in non-arc (and arc) tests which don't expect warning/error. Feel free to fix the tests, or reverse the patch, if I am unavailable. // rdar://9818354 - WIP git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135740 91177308-0d34-0410-b5e6-96231b3b80d8
* Fold -fobjc-nonfragile-abi2 into -fobjc-nonfragile-abi.Fariborz Jahanian2011-01-041-1/+1
| | | | | | | | // rdar://8818375 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122831 91177308-0d34-0410-b5e6-96231b3b80d8
* Add -fobjc-default-synthesized-properties flagTed Kremenek2010-12-231-1/+1
| | | | | | | | | | | | to allow us to explicitly control whether or not Objective-C properties are default synthesized. Currently this feature only works when using the -fobjc-non-fragile-abi2 flag (so there is no functionality change), but we can now turn off this feature without turning off all the features coupled with -fobjc-non-fragile-abi2. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122519 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove space from rdar URIs.Fariborz Jahanian2010-11-091-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118474 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't error when doing default property synthesis Fariborz Jahanian2010-07-141-0/+12
| | | | | | | | and some are already synthesized by user declaration. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108341 91177308-0d34-0410-b5e6-96231b3b80d8
* Do not issue warning on unimplemented property in the class, if itFariborz Jahanian2010-05-031-2/+2
| | | | | | | | | conforms to a protocol as one of its super classes does. This is because conforming super class will implement the property. This implements new warning rules for unimplemented properties (radar 7884086). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102919 91177308-0d34-0410-b5e6-96231b3b80d8
* Properties cannot be synthesized by-dafult inFariborz Jahanian2010-04-291-0/+10
| | | | | | | | | categories. Issue usual warnings instead of confusing error message. Radar 7920807 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102645 91177308-0d34-0410-b5e6-96231b3b80d8
* Improve on source location of diagnostic when defaultFariborz Jahanian2010-04-211-0/+14
| | | | | | | | property synthesis is using a super class ivar. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102011 91177308-0d34-0410-b5e6-96231b3b80d8
* Diagnose invalid code with -fobjc-nonfragile-abi2 whenFariborz Jahanian2010-04-021-8/+8
| | | | | | | | property is being accessed without the dot-syntax notation. (radar 7822344). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100212 91177308-0d34-0410-b5e6-96231b3b80d8
* Finish implementing property synthesis by default.Fariborz Jahanian2010-02-091-0/+81
(radar 7381956). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95695 91177308-0d34-0410-b5e6-96231b3b80d8