Argyrios Kyrtzidis
88737a5aa5
[objcmt] Fix a buffer overflow crash than can occur while modernizing enums.
...
Note that due to the nature of the crash it requires libgmalloc or asan for it to crash consistently.
rdar://19932927
llvm-svn: 275600
2016-07-15 19:22:34 +00:00
Argyrios Kyrtzidis
e59b770518
[objcmt] Don't add an #import of Foundation unnecessarily, if the NS_ENUM macro is already defined.
...
llvm-svn: 275589
2016-07-15 18:11:27 +00:00
Fariborz Jahanian
7b012d3728
[SDK modernizer] Patch to fix type of the typed enums when
...
migrating to NS_ENUM typedef. rdar://19994496
llvm-svn: 231036
2015-03-02 23:58:02 +00:00
Fariborz Jahanian
4732d43cc2
Objective-C SDK modernizer to use NS_ENUM/NS_OPTIONS macros
...
with typed enums. rdar://19352510
llvm-svn: 227104
2015-01-26 17:41:03 +00:00
Fariborz Jahanian
1406c878cb
Objective-C SDK modernizer. When modernizing an enum to
...
NS_ENUM/NS_OPTIONS use the underlying type if there is
no associated type. rdar://19198042
llvm-svn: 223934
2014-12-10 18:25:24 +00:00
Fariborz Jahanian
d2241bf561
Objective-C SDK modernization. import Foundation even
...
when a previous definition of NS_OPTION is available
; e.g. from a pch. enhancement to rdar://18498550
llvm-svn: 219448
2014-10-09 22:04:27 +00:00
Fariborz Jahanian
35ee87debe
Objective-C SDK modernizer. Patch to support modernization
...
to NS_ENUM/NS_OPTION macros when typedef names are other
than NSInteger/NSUInteger (int8_t, etc.).
rdar://18532199
llvm-svn: 219173
2014-10-06 23:50:37 +00:00
Fariborz Jahanian
77a835bf56
Objective-C Modernizer. Patch to remove dangling space
...
before the semicolon wahen modernizing to use
NS_ENUM/NS_OPTIONS macros. rdar://18498539
llvm-svn: 218809
2014-10-01 20:46:32 +00:00
Fariborz Jahanian
18625ee75c
Objective-C SDK modernizer. Do not modernize an enum
...
which already has the underlying interger type specification.
// rdar://1826225
llvm-svn: 217783
2014-09-15 16:41:47 +00:00
Fariborz Jahanian
de79e81686
ObjectiveC migrator. In infering NS_ENUM/NS_OPTIONS
...
macros, prefer the typedef immediately following the
enum declaration to the one preceeding it.
// rdar://15200915
llvm-svn: 192927
2013-10-17 22:23:32 +00:00
Fariborz Jahanian
059e05eeef
ObjectiveC migrator: Support for more possibility of
...
migration to NS_ENUM/NS_OPTIONS macros; when
typedef'ed to NSInteger/NSUInteger preceeds well
before of the enum declaration. // rdar://15201056
llvm-svn: 192645
2013-10-15 00:00:28 +00:00
Fariborz Jahanian
11dd4b1b56
ObjectiveC migrator. also support migration to
...
NS_ENUM/NS_OPTIONS macros when typedef declaration
precedes enum declaration. // rdar://15200915
llvm-svn: 192506
2013-10-11 21:34:56 +00:00
Fariborz Jahanian
1d27ffd697
ObjectiveC migrator: fixes a bug when in NS_ENUM/NS_OPTIONS
...
migration, the typedef has annotations.
// rdar://15200602
llvm-svn: 192468
2013-10-11 17:35:22 +00:00
Fariborz Jahanian
9218f5178d
ObjectiveC migrator. When migrating to NS_ENUM/NS_OPTIONS,
...
don't leave a blank line behind replacing the typedef
decl. // rdar://15200949
llvm-svn: 192407
2013-10-10 23:57:58 +00:00
Fariborz Jahanian
8c45e283f2
ObjectiveC migrator: Add individual options and
...
enable them for distinct feature migration.
// rdar://15003157
llvm-svn: 191863
2013-10-02 22:49:59 +00:00
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
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
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
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
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
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
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
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
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