title: Stripe iOS SDK - Incompatible block pointer types sending
body: <p>The Stripe SDK is causing a build a failure.  The specific error is:</p>
  <blockquote>
  <p>Incompatible block pointer types sending '__strong STPAPIResponseBlock _Nonnull' (aka 'void (^__strong)(ResponseType  _Nullable __strong, NSHTTPURLResponse * _Nullable __strong, NSError * _Nullable __strong)')</p>
  <p>to parameter of type 'void (^ _Nonnull)(STPSource * _Nullable __strong, NSHTTPURLResponse * _Nullable __strong, NSError * _Nullable __strong)'</p>
  </blockquote>
  <p>The code it is failing on is the following within STPAPIClient.m...</p>
  <pre><code>- (NSURLSessionDataTask *)retrieveSourceWithId:(NSString *)identifier clientSecret:(NSString *)secret responseCompletion:(STPAPIResponseBlock)completion {
      NSString *endpoint = [NSString stringWithFormat:@&quot;%@/%@&quot;, APIEndpointSources, identifier];
      NSDictionary *parameters = @{@&quot;client_secret&quot;: secret};
      return [STPAPIRequest&lt;STPSource *&gt; getWithAPIClient:self
                                                 endpoint:endpoint
                                               parameters:parameters
                                             deserializer:[STPSource new]
                                               completion:completion];
  }
  </code></pre>
  <p>Everything was working fine - and then I believe Xcode updated.  Now I get this problem.  I tried building a new app from scratch with nothing in it other then the Stripe SDK (installed via CocoaPods) and that failed to.</p>
  <p>Before I rollback to an earlier version of Xcode - any help would be much appreciated.</p>