Fariborz Jahanian
c121386170
ObjectiveC migrator. Starting distiguising different
...
migrations under their own option.
wip and // rdar://15003157
llvm-svn: 191855
2013-10-02 21:32:39 +00:00
Fariborz Jahanian
5d783df5f7
ObjectiveC migrator. Infer property from getters only
...
if property name is a valid identifier in the underlying
language. // rdar://15044184
llvm-svn: 191584
2013-09-27 22:55:54 +00:00
Rafael Espindola
ea1ba0adfc
Replace -fobjc-default-synthesize-properties with disable-objc-default-synthesize-properties.
...
We want the modern behavior most of the time, so inverting the option simplifies
the driver and the tests.
llvm-svn: 191551
2013-09-27 20:21:48 +00:00
Fariborz Jahanian
7c1a445c9e
ObjectiveC migrator: Donlt annotate NS_RETURNS_INNER_POINTER
...
on class methods, as it makes no sense. // rdar://15069200
llvm-svn: 191468
2013-09-26 22:43:41 +00:00
Fariborz Jahanian
73466cafc1
ObjectiveC migrator: function pointer is not an
...
inner pointer for annotation to
objc_returns_inner_pointer purposes.
// rdar://15044991
llvm-svn: 191465
2013-09-26 21:43:47 +00:00
Fariborz Jahanian
7391a7b5aa
ObjectiveC migrator. Don't suggest @property for
...
methods which look like getters but belong to
known family of methods. // rdar://15044058
llvm-svn: 191347
2013-09-25 00:17:07 +00:00
Fariborz Jahanian
7797c0d0f7
ObjectiveC migrator: provide space between the property
...
keyword and the rest on suggested property. // rdar://15069044
llvm-svn: 191335
2013-09-24 21:27:58 +00:00
Fariborz Jahanian
aaabfcdffe
ObjectiveC migrator: Another test for my last patch.
...
// rdar://15044991
llvm-svn: 191334
2013-09-24 20:31:24 +00:00
Fariborz Jahanian
10b7435ceb
ObjectiveC migrator: iDOn't mangle names when
...
NS_RETURNS_INNER_POINTER annotation is suggested on
a property. // rdar://15044991
llvm-svn: 191332
2013-09-24 20:20:52 +00:00
Fariborz Jahanian
c71eb6adc3
ObjectiveC migrator. When migrating to property declaration
...
use Cocoa's naming convention for properties of ObjC
object type. // rdar://15045005
llvm-svn: 191240
2013-09-23 23:18:46 +00:00
Fariborz Jahanian
02bdb16524
ObjectiveC migrator: Infer NS_OPTIONS when if there is at
...
least one hex enumerator, all others are also
hex enumerator (0 enumerator is excepted).
// rdar://15044304
llvm-svn: 191222
2013-09-23 20:27:06 +00:00
Fariborz Jahanian
1c900bcf26
ObjectiveC migrator: For consistency, also infer
...
'instancetype' for known family of methods
with related result type; such as 'init'
methods. // rdar://14987948
llvm-svn: 190956
2013-09-18 20:35:47 +00:00
Fariborz Jahanian
2ba62a7206
ObjectiveC migrator: Infer property in the presense
...
of methods annotated with attributes.
// rdar://14987909
llvm-svn: 190947
2013-09-18 17:22:25 +00:00
Fariborz Jahanian
6e1798e36a
ObjectiveC migrator. infer NS_OPTIONS correctly in the
...
presense of parenthesized enumerator initializers.
llvm-svn: 190901
2013-09-17 23:32:51 +00:00
Fariborz Jahanian
75226d5c0d
ObjectiveC migrator. Ignore migrating 'deprecated'
...
entities. // rdar://14989365
llvm-svn: 190890
2013-09-17 21:56:04 +00:00
Fariborz Jahanian
4c3d9c5e24
ObjectiveC migrator: Don't infer a property from isXXX method
...
of retainable object (readonly or otherwise).
llvm-svn: 190881
2013-09-17 19:38:55 +00:00
Argyrios Kyrtzidis
85230d50f2
[arcmt] Don't try to handle files that are already ARC'ified, this is not possible currently.
...
rdar://14461559
llvm-svn: 190880
2013-09-17 19:14:29 +00:00
Fariborz Jahanian
92f7242a56
ObjectiveC migrator. Infer property in categories
...
declared as getter with or without setter method.
// rdar://15010020
llvm-svn: 190878
2013-09-17 19:00:30 +00:00
Fariborz Jahanian
47502c11f5
ObjectiveC migration. NS_RETURNS_NOT_RETAINED is the default for
...
unknown methods which return Cocoa objects. No need to annotate
such methods.
llvm-svn: 190555
2013-09-11 22:46:09 +00:00
Fariborz Jahanian
34fea36340
ObjectiveC migrator. Modify inferred property name
...
such that it does not lower case the staring property
name if getter name (after "get" prefix) starts with
two upper case letters.
llvm-svn: 190539
2013-09-11 18:27:16 +00:00
Fariborz Jahanian
ca39960f31
ObjectiveC migrator. methods which look like a getter and
...
start with "get" are inferreed as a readonly properties.
llvm-svn: 190532
2013-09-11 17:05:15 +00:00
Fariborz Jahanian
c02bfb9a85
ObjectiveC migrator: rename inferred isXXX property,
...
with a suitable 'getter' attribute.
llvm-svn: 190420
2013-09-10 18:39:32 +00:00
Fariborz Jahanian
9d5fffb425
ObjectiveC migrator. Do not infer NS_RETURNS_INNER_POINTER
...
annotation on methods which return typedef of pointer to
an incomplete struct type.
llvm-svn: 190372
2013-09-09 23:56:14 +00:00
Fariborz Jahanian
215f96c084
ObjectiveC migrator: When inferring a property,
...
preserve getter's attribute. Also, do not attach
an inferred NS_RETURNS_INNER_POINTER to the inferred
property (it is illegal).
llvm-svn: 190223
2013-09-06 23:45:20 +00:00
Fariborz Jahanian
c24879e2de
ObjectiveC migrator: tighten the rules for when
...
inferring NS_RETURNS_RETAINED, etc., return annotations.
Do not infer if these annotations are implicit
from the naming convention. Also add inference for
NS_CONSUMES_SELF annotation.
llvm-svn: 190106
2013-09-05 23:04:33 +00:00
Fariborz Jahanian
1a26927e3f
ObjectiveC migrator: start introducing NS_XXX annotations
...
to Method/functions returning ObjC objects. wip.
llvm-svn: 190005
2013-09-04 22:49:19 +00:00
Fariborz Jahanian
89f6d100a4
ObjectiveC migrator: Cannot use bridging annotations for
...
ObjectiveC methods. Apply specific annotations for them
instead as determined by the static analyzer.
llvm-svn: 189892
2013-09-04 00:10:06 +00:00
Fariborz Jahanian
d0fbf6cebd
ObjectiveC migrator: If we find a method that returns a C pointer
...
of some sort (but not an object, block pointer or CF pointers),
and is not annotated with the objc_returns_inner_pointer attribute,
we should suggest NS_RETURNS_INNER_POINTER annotation for these methods.
llvm-svn: 189707
2013-08-30 23:52:08 +00:00
Fariborz Jahanian
ff3476e499
ObjectiveC migrator: infer NS_ENUM even when user
...
specified NSUInteger as the followup typedef.
With this change, NS_OPTIONS is only inferred
based on looking up how enumerators are speficied
(if they her hexadecimal, power of 2, or have
bitwise constant expressions).
llvm-svn: 189682
2013-08-30 17:46:01 +00:00
Fariborz Jahanian
a23f4fb5c9
ObjectiveC migrator: User of hexadecimal enumerator
...
should infer migration to NS_OPTIONS.
llvm-svn: 189628
2013-08-30 00:10:37 +00:00
Fariborz Jahanian
55d6e6c930
ObjectiveC migrator. This patch infers readonly properties for no-parameter
...
instance methods returning non-void. This will be quite noisy. So, it is
placed under a new migrator flag -objcmt-migrate-readonly-property.
llvm-svn: 189537
2013-08-28 23:22:46 +00:00
Fariborz Jahanian
7dd7143a2b
ObjectiveC migrator: In suggesting 'instancetype' use clang's
...
hasRelatedResultType() as it knows of methods which have
related result type by default. Such methods do not need
a redundant 'instancetype'.
llvm-svn: 189520
2013-08-28 21:23:00 +00:00
Fariborz Jahanian
1a26c209f6
For methods where clang automatically infers instancetype from the selector
...
(e.g., all -init* methods), no need to suggest "instancetype" because it
is redundant.
llvm-svn: 189514
2013-08-28 20:49:58 +00:00
Fariborz Jahanian
63ffce2001
ObjectiveC migrator: Do not add explicit cf annotation for
...
cf functions which are CF_IMPLICIT_BRIDGING_ENABLED.
Add cf annotation to those not CF_IMPLICIT_BRIDGING_ENABLED
to reduce bridge casts.
llvm-svn: 189409
2013-08-27 22:42:30 +00:00
Roman Divacky
718fb1cdf9
Make the information about disabled ARCMT/Rewriter/StaticAnalyzer available
...
to lit and use this info to disable Analysis/FixIt/Rewriter/Analysis tests
when those are not compiled into clang.
llvm-svn: 189395
2013-08-27 19:27:35 +00:00
Fariborz Jahanian
2e9c19cc35
ObjectiveC migrator: builtin ObjectiveC types are not
...
audited types.
llvm-svn: 189072
2013-08-22 22:27:36 +00:00
Fariborz Jahanian
926fafb888
ObjectiveC migrator: Provide ARC annotations for
...
CF methods too.
llvm-svn: 189041
2013-08-22 18:35:27 +00:00
Fariborz Jahanian
b918d7a67b
ObjectibeC migrator. Annotate cf_consumed arguments,
...
as reported by static analyer API with CF_CONSUMED.
llvm-svn: 188922
2013-08-21 19:37:47 +00:00
Fariborz Jahanian
447b15ef22
ObjectiveC migrator: until we have beter understanding of
...
setter/getter implementations, migrate them to
nonatomic properties.
llvm-svn: 188914
2013-08-21 18:49:03 +00:00
Fariborz Jahanian
301b52145f
ObjectiveC migrator: make sure audited pragams are
...
dumped for last declarations in the current TU. wip.
llvm-svn: 188838
2013-08-20 22:42:13 +00:00
Fariborz Jahanian
5874e6d384
ObjectiveC migrator: More tweaking of heuristics
...
for an audited cf function to not include those
which are annotated by user.
llvm-svn: 188823
2013-08-20 20:45:28 +00:00
Fariborz Jahanian
9427939f65
ObjectiveC migrator: More tweaking of heuristics
...
for an audited cf function and addition of
a test case.
llvm-svn: 188816
2013-08-20 18:54:39 +00:00
Fariborz Jahanian
f63f0bf395
ObjetiveC migrator: fix the test in my last patch
...
to define real CF_RETURNS_RETAINED/CF_NO_RETURNS_RETAINED
pairs.
llvm-svn: 188497
2013-08-15 22:26:10 +00:00
Fariborz Jahanian
84ac1ded83
ObjectiveC migrator. Start annotating CF functions
...
with CF_RETURNS_RETAINED/CF_RETURNS_NOT_RETAINED as
appropriate.
llvm-svn: 188493
2013-08-15 21:44:38 +00:00
Fariborz Jahanian
313ae7009e
Add another test to my last patch (NS_OPTION vs. NS_ENUM)
...
ObjectiveC migration.
llvm-svn: 188480
2013-08-15 19:27:42 +00:00
Fariborz Jahanian
be7bc11f94
ObjectiveC migrator: In deciding NS_OPTION over
...
NS_ENUM, at least one power of 2 enumerator
must be greater than two.
llvm-svn: 188470
2013-08-15 18:46:37 +00:00
Fariborz Jahanian
c13c1b0f0d
ObjectiveC migrator: Fixes a crash and makes couple
...
of harmless changes.
llvm-svn: 188303
2013-08-13 18:01:42 +00:00
Argyrios Kyrtzidis
551c83d379
[arcmt] When handling unbridged casts, handle the body of BlockDecl separately because ParentMap does not record
...
Stmt parent nodes inside a BlockDecl.
Fixes rdar://14686900
llvm-svn: 188101
2013-08-09 20:20:25 +00:00
Fariborz Jahanian
261fdb7a9a
ObjectiveC migrator: tighten rule about when to
...
migrate to @property with getter name starting with
'is'.
llvm-svn: 188013
2013-08-08 21:20:01 +00:00
Fariborz Jahanian
cf2ff9ba32
ObjectiveC migration: Handle another special case of
...
setter/getter methods which can be migrated to
a @property.
llvm-svn: 188005
2013-08-08 20:51:58 +00:00
Fariborz Jahanian
cf387c6afb
ObjectiveC migration: tweak setting of lifetime attribute
...
on @property migration. Don't set unsafe_unretained
on non-object properties. Set 'retain' on strong
properties. Makecertain properties with specific
names unsafe_unretained as well.
llvm-svn: 187810
2013-08-06 18:06:23 +00:00
Fariborz Jahanian
9275c688ea
ObjectiveC migrator: Add another family of factory
...
methods which can be migrated to instancetype.
llvm-svn: 187672
2013-08-02 20:54:18 +00:00
Fariborz Jahanian
c4291852a4
ObjectiveC migrator: Fixes public buildbot failures,
...
in my previous patch which was reverted in r187657
llvm-svn: 187661
2013-08-02 18:00:53 +00:00
Fariborz Jahanian
87dc0bc078
revert patch I added in r187655. It still breaks public
...
buildbot.
llvm-svn: 187657
2013-08-02 16:25:41 +00:00
Fariborz Jahanian
11fe914549
ObjectiveC migration. Check-in patch reverted in r187634.
...
Also removed check for "NS" prefix for class name.
llvm-svn: 187655
2013-08-02 16:00:08 +00:00
Rafael Espindola
6cbcc10e84
Revert "ObjectiveC migrator. Migrate to instancetype return type for mehods with certain prefix selector matching their class names' suffix."
...
This reverts commit r187626.
It is breaking the bots.
llvm-svn: 187634
2013-08-02 00:01:14 +00:00
Fariborz Jahanian
8234d40843
ObjectiveC migrator. Migrate to instancetype return type
...
for mehods with certain prefix selector matching their class names'
suffix.
llvm-svn: 187626
2013-08-01 22:29:32 +00:00
Fariborz Jahanian
267bae3ad6
Objective-C migrator: some cleanup.
...
Expose static type of init/alloc/retain with
instance type as well. Ad-hoc cases are coming
next.
llvm-svn: 187068
2013-07-24 19:18:37 +00:00
Fariborz Jahanian
280954a296
ObjectiveC migration: Method candidates for
...
migrating to instancetype can have implicit 'id'
type too.
llvm-svn: 187062
2013-07-24 18:31:42 +00:00
Fariborz Jahanian
631925fe62
ObjectiveC migration: more migration to
...
instancetype of NSDictionary methods.
llvm-svn: 187008
2013-07-23 23:55:55 +00:00
Fariborz Jahanian
670ef26293
ObjectiveC migrator: start migrating to
...
instancetype methods.
llvm-svn: 187004
2013-07-23 23:34:42 +00:00
Fariborz Jahanian
9e543afe19
ObjectiveC migration. Better handle migration to conforming
...
protocols by ignoring cases where all protocol properties
and methods are optional.
llvm-svn: 186895
2013-07-22 23:50:04 +00:00
Fariborz Jahanian
d0f6f79f4e
Objective-C migration: Use NS_OPTIONS when enumerators
...
have shift/bitwise operators or are power of 2.
llvm-svn: 186856
2013-07-22 18:53:45 +00:00
Argyrios Kyrtzidis
ec852d908f
[arcmt] Only disable ARC in the second compilation if there were actually ARC errors in the checking phase.
...
rdar://14490204
llvm-svn: 186850
2013-07-22 18:13:54 +00:00
Fariborz Jahanian
c1c44f62bc
ObjectiveC migrator: Another use case of enum
...
declaration which can be migrated to NS_ENUM.
llvm-svn: 186716
2013-07-19 20:18:36 +00:00
Argyrios Kyrtzidis
47b1517c52
[arcmt] After checking is successful disable auto-synthesize to avoid "@synthesize of 'weak' property is only
...
allowed in ARC" errors.
rdar://14461559
llvm-svn: 186709
2013-07-19 18:57:15 +00:00
Fariborz Jahanian
008ef72bee
Fixes an ObjC migrator crash when last decl
...
in file is an enum.
llvm-svn: 186700
2013-07-19 17:44:32 +00:00
Fariborz Jahanian
b0057bb4fc
ObjectiveC migrator: add support to migrate to
...
NS_OPTIONS.
llvm-svn: 186641
2013-07-19 01:05:49 +00:00
Fariborz Jahanian
85e988bbea
ObjectiveC migrator: Remove semicolon after the typedef
...
declaration when converting to NS_ENUM. This required
some code refactoring.
llvm-svn: 186619
2013-07-18 22:17:33 +00:00
Fariborz Jahanian
92463274e6
ObjectiveC migration. migration to NS_ENUM/SN_OPTION
...
- wip.
llvm-svn: 186604
2013-07-18 20:11:45 +00:00
Fariborz Jahanian
cb7b8deecb
ObjectiveC migrator: When adding conforming protocol,
...
only add outer-most conforming protocols as adding
others are redundant.
llvm-svn: 186473
2013-07-17 00:02:22 +00:00
Fariborz Jahanian
2bc3dda186
ObjectiveC migrator. If a class implements a protocol's
...
properties, then class conforms to that protocol.
llvm-svn: 186460
2013-07-16 21:59:42 +00:00
Fariborz Jahanian
3eb3159816
ObjectiveC migration: complete migrating class
...
declaration to include list of protocols class
conforms to.
llvm-svn: 186443
2013-07-16 18:58:41 +00:00
Fariborz Jahanian
56f48d09f8
ObjC migrator: Improve on hueristics.
...
migrate to 'copy attribute if Object
class implements NSCopying otherwise
assume implied 'strong'. Remove
lifetime qualifier on property as it has
moved to property's attribute. Added TODO
comment for future work by poking into
setter implementation.
llvm-svn: 186037
2013-07-10 21:30:22 +00:00
Fariborz Jahanian
a830ea7431
objc migrator: More refinment of property
...
attributes in migration. Specialli use of
'copy' attribute for retainable object types.
llvm-svn: 185985
2013-07-10 00:20:11 +00:00
Fariborz Jahanian
d83ef848bd
ObjC migrator: Add -objcmt-migrate-property to do property
...
migration. Also, fixes an old bug where older migration
flags were not being checked for properly.
llvm-svn: 185948
2013-07-09 16:59:14 +00:00
Fariborz Jahanian
e61c907792
ObjC migration: more test for migration to
...
properties.
llvm-svn: 185884
2013-07-08 23:29:51 +00:00
Fariborz Jahanian
7ac20e1031
ObjC migration: Skip over setter/getter with attributes
...
for now.
llvm-svn: 185879
2013-07-08 22:49:25 +00:00
Fariborz Jahanian
bfaabe40e7
[Objective-C migrator] replace candidate user setter/getter with
...
their equivalent property declaration. wip.
llvm-svn: 185873
2013-07-08 21:42:08 +00:00
Rafael Espindola
925213b0fa
Add 'not' to commands that are expected to fail.
...
This is at least good documentation, but also opens the possibility of
using pipefail.
llvm-svn: 185652
2013-07-04 16:16:58 +00:00
Argyrios Kyrtzidis
b11a192dfc
[arcmt/driver] For the -ccc-arcmt-* flags, claim them when -fno-objc-arc is passed to avoid the
...
"argument unused during compilation" warning.
rdar://14240566
llvm-svn: 184776
2013-06-24 19:01:18 +00:00
Argyrios Kyrtzidis
bcf2bdc922
Point diagnostics that complain about a use of a selector in an objc message, to the selector location.
...
Previously it would point to the left bracket or the receiver, which can be particularly
problematic if the receiver is a block literal and we end up point the diagnostic far away
for the selector that is complaining about.
rdar://13620447
llvm-svn: 180833
2013-05-01 00:24:09 +00:00
Argyrios Kyrtzidis
501d90bf9f
[objcmt] Fix a mishandled conversion to objc directory literal.
...
rdar://13181413
llvm-svn: 178942
2013-04-06 01:13:17 +00:00
Argyrios Kyrtzidis
d07fabf034
[arcmt] Make sure the function has an associated parameter for the argument
...
before checking for its attributes.
rdar://13192395
llvm-svn: 175184
2013-02-14 17:29:16 +00:00
Argyrios Kyrtzidis
88c0d3b1ae
[arcmt] Make sure the objc migrators work fine when used with a PCH.
...
rdar://13140508
llvm-svn: 174386
2013-02-05 16:37:00 +00:00
Douglas Gregor
0ad84b46e3
Undo my re-wording of the "ARC forbids Objective-C objects in ..."
...
error. Jordan is right.
llvm-svn: 173713
2013-01-28 20:13:44 +00:00
Douglas Gregor
e6c3fa0b27
Forbid the use of objects in unions in Objective-C++ ARC. Fixes
...
<rdar://problem/13098104>.
llvm-svn: 173708
2013-01-28 19:08:09 +00:00
Argyrios Kyrtzidis
6b4f341ecd
[objcmt] Rewrite a NSDictionary dictionaryWithObjects:forKeys: to a dictionary literal
...
if we can see the elements of the arrays.
for example:
NSDictionary *dict = [NSDictionary dictionaryWithObjects:[NSArray arrayWithObjects:@"1", @"2", nil] forKeys:[NSArray arrayWithObjects:@"A", @"B", nil]];
-->
NSDictionary *dict = @{ @"A" : @"1", @"B" : @"2" };
rdar://12428166
llvm-svn: 172679
2013-01-16 23:54:48 +00:00
Argyrios Kyrtzidis
08281fa337
[arcmt] Follow-up for r171484; make sure when adding brackets enclosing case statements,
...
that the case does not "contain" a declaration that is referenced "outside" of it,
otherwise we will emit un-compilable code.
llvm-svn: 171828
2013-01-08 00:58:25 +00:00
Argyrios Kyrtzidis
d12c332905
[arcmt] Allow removing an -autorelease of a variable initialized in the previous statement.
...
rdar://11074996
llvm-svn: 171485
2013-01-04 18:30:11 +00:00
Argyrios Kyrtzidis
03fbe3ef81
[arcmt] Adds brackets in case statements that "contain" initialization of retaining
...
variable, thus emitting the "switch case is in protected scope" error.
rdar://12952016
llvm-svn: 171484
2013-01-04 18:30:08 +00:00
Argyrios Kyrtzidis
b7b89b5ebc
[arcmt] Don't error if an autoreleased variable is returned after the -autorelease.
...
rdar://12952025
llvm-svn: 171482
2013-01-04 18:29:59 +00:00
Argyrios Kyrtzidis
6ba7afb8e1
[arcmt] Rewrite uses of Block_copy/Block_release macros.
...
c = Block_copy(b);
Block_release(c);
---->
c = [b copy];
<removed>
rdar://9408211
llvm-svn: 171454
2013-01-03 03:17:17 +00:00
Andy Gibbs
0fea04509a
Change VerifyDiagnosticConsumer so that it *must* contain at least one "expected-*" directive. As a result, for test-cases that are not expected to generate any diagnostics, an additional directive "expected-no-diagnostics" has been implemented which can then be included in such test-cases. This new directive may not be used in conjunction with any other "expected-*" directive.
...
This change was initially proposed as a solution to the problem highlighted by check-in r164677, i.e. that -verify will not cause a test-case failure where the compile command does not actually reference the file.
Patch reviewed by David Blaikie.
llvm-svn: 166281
2012-10-19 12:49:32 +00:00
Fariborz Jahanian
35227ea365
objective-C arc: remove -Warc-abi in its entirety.
...
// rdar://10554025
llvm-svn: 163917
2012-09-14 17:48:35 +00:00
Jordan Rose
b00073db80
Update VerifyDiagnosticConsumer to only get directives during parsing.
...
The old behavior was to re-scan any files (like modules) where we may have
directives but won't actually be parsing during the -verify invocation.
Now, we keep the old behavior in Debug builds as a sanity check (though
modules are a known entity), and expect all legitimate directives to come
from comments seen by the preprocessor.
This also affects the ARC migration tool, which captures diagnostics in
order to filter some out. This change adds an explicit cleanup to
CaptureDiagnosticsConsumer in order to let its sub-consumer handle the
real end of diagnostics.
This was originally split into four patches, but the tests do not run
cleanly without all four, so I've combined them into one commit.
Patches by Andy Gibbs, with slight modifications from me.
llvm-svn: 161650
2012-08-10 01:06:16 +00:00
Fariborz Jahanian
b7f03c191c
objective-c arc: ARC IRGen correctly assumes result
...
type of generated call to super dealloc is 'void'
and asserts if user's dealloc is not of 'void type.
This rule must be enforced in clang front-end (with a
fixit) if this is not the case, instead of asserting in CodeGen.
// rdar://11987838
llvm-svn: 160993
2012-07-30 20:52:48 +00:00
Fariborz Jahanian
84c97cafd0
revert r160839 for now.
...
llvm-svn: 160895
2012-07-27 21:34:23 +00:00
Fariborz Jahanian
226459efff
objc-arc: When objects with known CF semantics are assigned to
...
retainable types in arc, only suggest CFBridgingRelease/
CFBridgingRetain and not the confusing __bridge casts.
// rdar://11923822
llvm-svn: 160839
2012-07-26 23:17:04 +00:00
Nico Weber
9035951409
Let Expr::HasSideEffects() return false for NULL, bool literals, this, and nullptr.
...
Fixes PR13413, -Wunused-private-field now warns on unused fields initialized to NULL.
llvm-svn: 160541
2012-07-20 03:39:05 +00:00