swift
[4.2 04/30][migrator] Filter out diag::wrong_argument_labels for the fixit pass
#16685
Merged

[4.2 04/30][migrator] Filter out diag::wrong_argument_labels for the fixit pass #16685

nathawes
nathawes7 years ago

Cherry-pick of #16664

The migrator only applies changes from the APIDiffMigratorPass in the primary file. This means that if a nominal type was renamed, for example, any members users have added in an extension in a separate file won't be visible, because the extension would still have the old name. This can result in 'wrong/extraneous/missing argument label' errors with fixits to change the argument labels that, when applied by the fixit pass, change which function was being called and cause post-migration errors.

This patch updates the fixit pass to ignore fixits from diag::wrong_argument_labels. diag::extra_argument_labels and diag::missing_argument_labels were already filtered out for other reasons.

Resolves rdar://problem/40170377

[migrator] Filter out diag::wrong_argument_labels for the fixit pass
0f1cf0f1
nathawes
nathawes7 years ago

@swift-ci please test

swift-ci
swift-ci7 years ago

Build failed
Swift Test OS X Platform
Git Sha - 0f1cf0f

nathawes
nathawes7 years ago

@swift-ci please test OS X

nathawes nathawes merged 248d9082 into swift-4.2-branch-04-30-2018 7 years ago
nathawes nathawes deleted the rdar40170377-wrong_argument_labels-fixit-not-migrator-friendly-4.2-04-30-2018 branch 7 years ago

Login to write a write a comment.

Login via GitHub

Reviewers
No reviews
Assignees
No one assigned
Labels
Milestone