| A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | NOTE: All comments on diffs in this document are based on https://github.dev/plotfi/cxx-interop-diff/pull/4 | |||||||||||||||||||||||||
2 | ||||||||||||||||||||||||||
3 | Foundation (iOS/iPhoneOS) | Content Diff | Take Action? | Fix? | ||||||||||||||||||||||
4 | Foundation (top level) | Just Comments (probably old vs new run) | Ignore | |||||||||||||||||||||||
5 | Combine | Just Comments (probably old vs new run) | Ignore | |||||||||||||||||||||||
6 | CoreFoundation | added: @_exported import std_config | Ignore for now | |||||||||||||||||||||||
7 | Dispatch | added: @_exported import std_config added: var __bool_true_false_are_defined: Int32 { get } removed: var DISPATCH_QUEUE_PRIORITY_BACKGROUND: Int32 { get } removed: @available(*, unavailable, message: "use 'nil' instead of this imported macro") removed: var DISPATCH_QUEUE_SERIAL: () removed: @available(*, unavailable, message: "use 'nil' instead of this imported macro") removed: var DISPATCH_TARGET_QUEUE_DEFAULT: () removed: @available(*, unavailable, message: "use 'nil' instead of this imported macro") removed: var DISPATCH_CURRENT_QUEUE_LABEL: () removed: @available(*, unavailable, message: "use 'nil' instead of this imported macro") removed: var DISPATCH_DATA_DESTRUCTOR_DEFAULT: () | INVESTIGATE missing DISPATCH_.* macros and __boot_true_false.* | |||||||||||||||||||||||
8 | Foundation.NSArray | withOptions versus unit (likely another omit words bug): func difference(from other: [Any], withOptions options: ... @available(swift, obsoleted: 3, renamed: "difference(from:withOptions:usingEquivalenceTest:)") ignoring typedef from NS_OPTIONS typealias | INVESTIGATE omit words | YES | ||||||||||||||||||||||
9 | Foundation.NSAttributedString | __ missing from __NSAttributedStringFormattingOptions ignoring typedef from NS_OPTIONS typealias | INVESTIGATE missing __ might be APINotes | |||||||||||||||||||||||
10 | Foundation.NSByteCountFormatter | ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
11 | Foundation.NSCalendar | ofUnit versus unit (likely another omit words bug): func minimumRange(ofUnit unit: NSCalendar.Unit) -> NSRange @available(swift, obsoleted: 3, renamed: "minimumRange(ofUnit:)") Also matchingUnit ignoring typedef from NS_OPTIONS typealias | INVESTIGATE omit words | YES | ||||||||||||||||||||||
12 | Foundation.NSComparisonPredicate | ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
13 | Foundation.NSData | Just Comments (probably old vs new run) ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
14 | Foundation.NSDateComponentsFormatter | missing @available(iOS 8.0, *) ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | INVESTIGATE missing @available, ignore the rest | |||||||||||||||||||||||
15 | Foundation.NSDecimal | missing var NSDecimalNoScale: Int32 { get } | INVESTIGATE missing NSDecimalNoScale | |||||||||||||||||||||||
16 | Foundation.NSExpression | added fields to struct and init for _expressionFlags: var _usesKVC: UInt32 var _validatedExpression: UInt32 var _validatedKeys: UInt32 | Ignore for now | |||||||||||||||||||||||
17 | Foundation.NSExtensionContext | many missing @availables: @available(iOS 8.2, *) @available(swift, obsoleted: 3 missing extension NSNotification.Name { NSExtensionHost.* types changed from NSNotification.Name to String Is this intentional? | INVESTIGATE missing @available, extension, etc. | |||||||||||||||||||||||
18 | Foundation.NSFileCoordinator | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
19 | Foundation.NSFileManager | inDomain versus domain (likely another omit words bug): func getRelationship(..., inDomain domainMask: @available(swift, obsoleted: 3, renamed: "getRelationship(_:of:inDomain:toItemAt:)") ignoring typedef from NS_OPTIONS typealias | INVESTIGATE omit words | YES | ||||||||||||||||||||||
20 | Foundation.NSFileVersion | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
21 | Foundation.NSFileWrapper | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
22 | Foundation.NSHashTable | ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop: specifically NSPointerFunctions.Options instead of Int | Ignore for now | |||||||||||||||||||||||
23 | Foundation.NSISO8601DateFormatter | ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
24 | Foundation.NSItemProvider | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
25 | Foundation.NSJSONSerialization | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
26 | Foundation.NSKeyValueObserving | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
27 | Foundation.NSLinguisticTagger | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
28 | Foundation.NSMapTable | ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop: specifically NSPointerFunctions.Options instead of Int | Ignore for now | |||||||||||||||||||||||
29 | Foundation.NSMeasurementFormatter | ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
30 | Foundation.NSNetServices | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
31 | Foundation.NSNotificationQueue | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
32 | Foundation.NSObjCRuntime | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
33 | Foundation.NSOrderedCollectionDifference | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
34 | Foundation.NSOrderedSet | withOptions versus options (likely another omit words bug): func difference(from other: NSOrderedSet, withOptions options: ... @available(swift, obsoleted: 3, renamed: "difference(from:withOptions:usingEquivalenceTest:)") | INVESTIGATE omit words | YES | ||||||||||||||||||||||
35 | Foundation.NSPathUtilities | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
36 | Foundation.NSPersonNameComponentsFormatter | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
37 | Foundation.NSPointerFunctions | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
38 | Foundation.NSPort | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
39 | Foundation.NSProcessInfo | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
40 | Foundation.NSPropertyList | ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop class func propertyListWithStream(...options opt: PropertyListSerialization.ReadOptions = [], IS MISSING = [] default val | INVESTIGATE missing = [ ] | |||||||||||||||||||||||
41 | Foundation.NSRegularExpression | ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
42 | Foundation.NSStream | ignoring typedef from NS_OPTIONS typealias Missing: optional func stream(_ aStream: Stream, handle eventCode: Stream.Event) @available(swift, obsoleted: 3, renamed: "stream(_:handle:)") In protocol StreamDelegate : NSObjectProtocol { | INVESTIGATE missing func + @available inside protocol | |||||||||||||||||||||||
43 | Foundation.NSString | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
44 | Foundation.NSTextCheckingResult | ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
45 | Foundation.NSURL | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
46 | Foundation.NSXPCConnection | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
47 | ||||||||||||||||||||||||||
48 | ||||||||||||||||||||||||||
49 | ||||||||||||||||||||||||||
50 | ||||||||||||||||||||||||||
51 | UIKit (iOS/iPhoneOS) | Content Diff | Take Action? | |||||||||||||||||||||||
52 | TOP LEVEL UIKit NOTE ➡️ | Note that inorder to get UIKit to load with C++-Interop and the intended changes to CFAvailability.h (for CF_OPTIONS) that it was needed to remove FILEPROVIDER_API_AVAILABILITY_V3 and FILEPROVIDER_API_AVAILABILITY_V3_1 from being applied to certain NS_OPTIONS because the C++-Interop NS/CF_OPTIONS is now two separate statements and the macro would only apply to the first one causing the second one to cause a compile error for the unavailable typedef. | Need to figure how how to get the enum : NSFooTypedefType {'s avaiability to be subsumed from the typedef peceeding it (it's QualType). | |||||||||||||||||||||||
53 | UIKit.NSAttributedString | ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
54 | UIKit.NSLayoutConstraint | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
55 | UIKit.NSLayoutManager | shouldUseAction versus "shouldUse Action" (likely another omit words bug): optional func layoutManager(_ layoutManager: NSLayoutManager, shouldUseAction action: ... @available(swift, obsoleted: 3, renamed: "layoutManager(_:shouldUseAction:forControlCharacterAt:)") ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | INVESTIGATE omit words | YES | ||||||||||||||||||||||
56 | UIKit.NSParagraphStyle | ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
57 | UIKit.NSStringDrawing | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
58 | UIKit.NSTextContentManager | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
59 | UIKit.NSTextLayoutFragment | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
60 | UIKit.NSTextLayoutManager | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
61 | UIKit.NSTextSelectionNavigation | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
62 | UIKit.NSTextStorage | __ missing from __NSAttributedStringFormattingOptions "ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop " | Same problem mentioned above in Foundation section: INVESTIGATE missing __ might be APINotes | |||||||||||||||||||||||
63 | UIKit.UIAccessibility | ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
64 | UIKit.UIAccessibilityConstants | default init() for UIAccessibility is added | INVESTIGATE, I believe this may affect production code | |||||||||||||||||||||||
65 | UIKit.UIAction | comments dropped ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
66 | UIKit.UIApplication | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
67 | UIKit.UIBackgroundConfiguration | ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
68 | UIKit.UIBandSelectionInteraction | ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
69 | UIKit.UIBarButtonItem | missing function and @available: func setBackgroundImage(_ backgroundImage: UIImage?, ... @available(iOS 5.0, *) @available(swift, obsoleted: 3, renamed: "setBackgroundImage(_:for:barMetrics:)") forState versus "for state" (likely another omit words bug): func backgroundImage(forState state: ... @available(swift, obsoleted: 3, renamed: "backgroundImage(forState:barMetrics:)") | INVESTIGATE omit words, INVESTIGATE missing function+@avail | YES | ||||||||||||||||||||||
70 | UIKit.UIBarItem | missing function and @available: func setTitleTextAttributes(_ attributes: [NSAttributedString.Key : Any]?, for state: UIControl.State) @available(iOS 5.0, *) @available(swift, obsoleted: 3, renamed: "setTitleTextAttributes(_:for:)") forState versus "for state" (likely another omit words bug): func titleTextAttributes(forState state: UIControl.State) -> [NSAttributedString.Key : Any]? @available(iOS 5.0, *) @available(swift, obsoleted: 3, renamed: "titleTextAttributes(forState:)") | INVESTIGATE omit words, INVESTIGATE missing function+@avail | YES | ||||||||||||||||||||||
71 | UIKit.UIButton | EXACT SAME AS PREVIOUS TWO (UIKit.UIBarButtonItem and UIKit.UIBarItem) | INVESTIGATE omit words, INVESTIGATE missing function+@avail | YES | ||||||||||||||||||||||
72 | UIKit.UIButtonConfiguration | ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
73 | UIKit.UICloudSharingController | ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
74 | UIKit.UICollectionView (NEW??) | ignoring typedef from NS_OPTIONS typealias func scrollToItem(at indexPath: IndexPath, atScrollPosition scrollPosition: UICollectionView.ScrollPosition, animated: Bool) @available(swift, obsoleted: 3, renamed: "scrollToItem(at:atScrollPosition:animated:)") | INVESTIGATE atScrollPosition | |||||||||||||||||||||||
75 | UIKit.UICollectionViewCompositionalLayout | ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
76 | UIKit.UICollisionBehavior | ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
77 | UIKit.UICommand | comments dropped ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
78 | UIKit.UIControl | ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop Dropped function+@available: func removeTarget(_ target: Any?, action: Selector?, for controlEvents: UIControl.Event) @available(swift, obsoleted: 3, renamed: "removeTarget(_:action:for:)") forControlEvents versus "for controlEvents" (likely another omit words bug): func sendActions(forControlEvents controlEvents: UIControl.Event) @available(swift, obsoleted: 3, renamed: "sendActions(forControlEvents:)") | INVESTIGATE omit words, INVESTIGATE missing function+@avail | |||||||||||||||||||||||
79 | UIKit.UIDataDetectors | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
80 | UIKit.UIDocument | ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
81 | UIKit.UIDocumentBrowserAction | ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
82 | UIKit.UIEvent | comments dropped ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop Missing Extension: extension UIEvent.ButtonMask { /// Convenience initializer for a button mask where `buttonNumber` is a one-based index of the button on the input device /// .button(1) == .primary /// .button(2) == .secondary @available(iOS 13.4, *) static func button(_ buttonNumber: Int) -> UIEvent.ButtonMask } | INVESTIGATE missing Extension | |||||||||||||||||||||||
83 | UIKit.UIFocus | ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
84 | UIKit.UIFontDescriptor | ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
85 | UIKit.UIFontPickerViewControllerConfiguration | ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
86 | UIKit.UIGeometry | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
87 | UIKit.UIGestureRecognizer | ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
88 | UIKit.UIGuidedAccess | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
89 | UIKit.UIKey | ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
90 | UIKit.UIKeyCommand | comments dropped ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
91 | UIKit.UILabel | ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
92 | UIKit.UIListContentConfiguration | ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
93 | UIKit.UILocalNotification | ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
94 | UIKit.UIMenu | comments dropped ignoring typedef from NS_OPTIONS typealias ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
95 | UIKit.UIMenuElement | ignoring typedef from NS_OPTIONS typealias | Ignore | |||||||||||||||||||||||
96 | UIKit.UIPanGestureRecognizer | comments dropped ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
97 | UIKit.UIPointerInteraction | ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
98 | UIKit.UIPointerRegion | ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
99 | UIKit.UIPopoverBackgroundView | ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now | |||||||||||||||||||||||
100 | UIKit.UIPopoverController | ignoring Int versus OptionsStruct.InnerStruct type since we want raw int for OPTIONS C++-Interop | Ignore for now |