<rdar://problem/21384187> NSDictionary's convenience init(objects:
[AnyObject], forKeys keys: [AnyObject]) is unsound
This method is unsound / unsafe for Swift. There is not a way to
correctly express the alternating variadic type constant:
AnyObject, NSCopying,...
The overlay already defines a tuple based method that serves the same
role.
Patch by Michael J LeHew Jr.
Swift SVN r29497
The case where this comes up is when people name their app and framework
targets the same thing, or when they've renamed their test target module
in an attempt to avoid issues with NSClassFromString and differing
runtime names. We currently do various wrong things when this happens,
so just emit an error instead.
I left a hole for our overlays, which use '@exported import <the-current-module>'
to get at their Clang modules. The previous commit means this can be
replaced by -import-underlying-module, but that doesn't help our tests,
which use -enable-source-import for their overlays. Which we should stop doing.
rdar://problem/21254367
Swift SVN r29440
-import-underlying-module deliberately avoids autolinking against that module,
since normally it's used when building the Swift half of a single binary.
For the overlays, however, that's not what we want, so add the underlying
framework explicitly.
Swift SVN r29439
At one point we were considering it to be a replacement rather than an
overlay, but that's not where we are today. We can revisit that later.
Necessary for next commit.
Swift SVN r29438
Depends on a clang change to target info, and an objc4 change to the
Objective-C headers, which accomplish the actual ABI change for Swift.Bool.
This commit updates ObjCBool and adds a test.
rdar://problem/21294221
Patch by Ben Langmuir.
Swift SVN r29423
if the thing it is removing has leading and trailing whitespace already, this nukes
an extra space to avoid leaving double spaces or incorrectly indented results. This
fixes <rdar://problem/21045509> Fixit deletes 'let' from non-binding 'if case let' statements, but leaves an extra space
Swift SVN r29419
Addresses a bitcode linking problem when linking with the SDK overlays,
which are built against the internal SDK, against a program built
against the public SDK, which does not have
CoreText. rdar://problem/21246363
Swift SVN r29395
This makes it clearer that expressions like "foo.myType.init()" are creating new objects, instead of invoking a weird-looking method. The last part of rdar://problem/21375845.
Swift SVN r29375
This change was committed and reverted multiple times over the past
month, but now it is safe since we have bumped the minimum required
SDKs.
Swift SVN r29269
For integral types, the WatchKit remote procedure call mechanisms only
consider signed numbers (rdar://problem/21153645) and the boolean
type. We were incorrectly assuming that all bools are i1, even on
platforms where bool maps to signed char, such as armv7k, arm64, and
iOS x86_64.
Mark Objective-C type encoded strings that bool -> signed char
when Clang says so.
Fixes: rdar://problem/21129609
See Also: rdar://problem/21131808
Swift SVN r29141
The <Redacted>13A261 iOS SDK adds an availability attribute marking the imported
WatchKitErrorCode enum as available only on iOS 8.2 and newer. The WatchKit overlay
has a protocol extension for WatchKitErrorCode, so mark the extension as only available
on 8.2 and newer. On <Redacted>13A261 this silences a diagnostic complaining that
WatchKitErrorCode is only available on 8.2 and newer.
However, on <Redacted>13A254 this new annotation itself causes an error because on that
SDK WatchKitErrorCode claims to be available on all iOS versions and yet the conformance
would only hold on 8.2 and newer. To make this second diagnostic go away, this
commit temporarily disables availability checking for the WatchKit overlay.
rdar://problem/21099550 tracks re-enabling availability checking when we update the bots,
etc. to <Redacted>13A261.
rdar://problem/21098396
Swift SVN r29026
CNErrorDomain is lacking proper availability annotations, and
explicitly linking with -weak_framework is not working reliably. For
now, just remove the overlay to solve rdar://problem/21030937. We'll
bring it back when rdar://problem/21032649 makes it into all of the
builds we care about.
Swift SVN r29003
Darwin libc and glibc use different typedefs for the signal handler type, and SIG_HOLD has different values. Conditionalize the definitions in their respective overlays.
Swift SVN r28921