Skip to content

Commit

Permalink
Temporarily fix nullability of -[NSData initWithBase64EncodedString:o…
Browse files Browse the repository at this point in the history
…ptions].

This keeps our own test cases running; the actual fix is tracked by
rdar://problem/18230185.


Swift SVN r21708
  • Loading branch information
DougGregor committed Sep 4, 2014
1 parent cdf9488 commit cc31f9b
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 5 deletions.
2 changes: 1 addition & 1 deletion apinotes/Foundation.apinotes
Original file line number Diff line number Diff line change
Expand Up @@ -2077,7 +2077,7 @@ Classes:
Nullability:
- N
- S
NullabilityOfRet: N
NullabilityOfRet: O
- Selector: 'initWithBytes:length:'
MethodKind: Instance
Nullability:
Expand Down
9 changes: 5 additions & 4 deletions test/Interpreter/SDK/objc_subclass.swift
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ testB()

// Propagating nil init out of a superclass initialization.
class MyNSData : NSData {
init(base64EncodedString str: String) {
init?(base64EncodedString str: String) {
super.init(base64EncodedString:str,
options:NSDataBase64DecodingOptions(0))
println("MyNSData code should not be executed")
Expand All @@ -111,15 +111,16 @@ class MyNSData : NSData {
}

// CHECK-NOT: should not be executed
var myNSData : MyNSData! = MyNSData(base64EncodedString:"\n\n\n")
if myNSData == nil {
if let myNSData = MyNSData(base64EncodedString:"\n\n\n") {
println("NSData came back non-nil?")
} else {
// CHECK: nil MyNSData as expected
println("nil MyNSData as expected")
}

// Propagating nil out of delegating initialization.
extension NSData {
convenience init(myString str: String) {
convenience init?(myString str: String) {
self.init(base64EncodedString:str,
options:NSDataBase64DecodingOptions(0))
println("NSData code should not be executed")
Expand Down

0 comments on commit cc31f9b

Please sign in to comment.