When mapping comments for modifiers of class members, make sure trailing comments for the preceding member are ignored. #9130
+76
−1
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.
While applying the TestNG->JUnit conversion, it turned out comments are sometimes duplicated. After some debugging, it happens if given code like:
the comments are mapped for the
@Deprecated(or mapped for the@Deprecatedbefore other important mappings). The code will try to map the comments for the whole method, but as a consequence, it will assign the//trailingto the method as well. And when if the modifiers are changed, the comment may be duplicated.The proposed change here is to do a "dry run" on the comment assignment for the preceding member, which should consume the trailing comment, and make sure the comments are assigned properly.
I tried some other cases where there are lists of elements, but so far this seems to only affect class members. If we later find more cases like this, it should be possible to generalize the handling, but tweaking specifically only class members seems sufficient for now.
^Add meaningful description above
Click to collapse/expand PR instructions
By opening a pull request you confirm that, unless explicitly stated otherwise, the changes -
Please make sure (eg.
git log) that all commits have a valid name and email address for you in the Author field.If you're a first time contributor, see the Contributing guidelines for more information.
If you're a committer, please label the PR before pressing "Create pull request" so that the right test jobs can run.
PR approval and merge checklist:
If this PR targets the delivery branch: don't merge. (full wiki article)