Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and
privacy statement. We’ll occasionally send you account related emails.
Already on GitHub?
to your account
Xcode Version 12.5 beta 2 (12E5234g)
Some Swift code is not able to build with the Xcode beta with code which calls Objective-C code with multiple closures. Log attached.
The Objective-C function definition is below.
- (void)enumerateToAssignBlocksForUploadTask:(nullable void (^)(AWSS3TransferUtilityUploadTask *uploadTask,
_Nullable AWSS3TransferUtilityProgressBlock * _Nullable uploadProgressBlockReference,
_Nullable AWSS3TransferUtilityUploadCompletionHandlerBlock * _Nullable completionHandlerReference))uploadBlocksAssigner
downloadTask:(nullable void (^)(AWSS3TransferUtilityDownloadTask *downloadTask,
_Nullable AWSS3TransferUtilityProgressBlock * _Nullable downloadProgressBlockReference,
_Nullable AWSS3TransferUtilityDownloadCompletionHandlerBlock * _Nullable completionHandlerReference))downloadBlocksAssigner;
To get around this error I created an Objective-C Category which is defined in MyApp.zip which exposes a simpler function to Swift which is used instead.
The text was updated successfully, but these errors were encountered:
I've narrowed down the failure further. See MyFramework.zip. It includes a git history of the changes. It appears adding NSError to the list of parameters is what causes the segmentation fault. It does not fail in previous release versions of Xcode.
Sorry, something went wrong.
Xcode 12.5 RC is out now. Was this issue handled with this update?
I just tried building the included MyApp sample project. It still gets the segfault when the flag for
USE_OBJC_CATEGORY is excluded.
Comment by Grant Furick (JIRA)
This is blocking for our app that utilizes the aws sdk. Thanks for logging this issue as we have reproduced. I'm holding back build server update and haven't had to do that in a while.
I've created an alternate API to get around this issue. See the comment at the bottom of the issue below to see sample code.
No branches or pull requests