[migrator] Migrate UIApplicationMain #17619
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In Swift 4.2 the type of second parameter of
UIApplicationMain
exactly matches the type ofCommandLine.unsafeArgv
so it can be called as below:This is how it was intended to be in Swift 4 as well, but the types had optionality differences, so callers instead had to do something similar to the below example, from the Firefox-iOS project:
Now that the type of
UIApplicationMain
's second parameter has been updated to matchCommandLine.unsafeArgv
, this workaround is no longer needed. This patch adds a migration that simply replaces the second argument withCommandLine.unsafeArgv
at all call sites whereCommandLine.argc
is passed as the first argument.There is an open issue for providing a deprecated version with the old type, so we simply leave any callers that don't pass
CommandLine.argc
for the first argument as they are.Resolves rdar://problem/40045693.