Skip to content

fix: do not over-indent a comment-only array in a return statement - #2556

Open
benjaminkincses wants to merge 3 commits into
prettier:mainfrom
benjaminkincses:fix/1864-return-array-comment-indent
Open

benjaminkincses wants to merge 3 commits into
prettier:mainfrom
benjaminkincses:fix/1864-return-array-comment-indent

Conversation

@benjaminkincses

Copy link
Copy Markdown
Contributor

Closes #1864

Returning an array that holds only a comment printed the comment one level too deep and indented the closing bracket:

<?php
return [
        // TODO: ...
    ];

The return printer wrapped the expression in indent() whenever the expression had any comments. Dangling comments are printed by the expression itself at its own indent, so the extra wrap shifted them and the closing line one level too far. The wrap now only applies when the expression has leading or trailing comments.

Added tests/array/empty-comment.php with the cases from the issue, including the same return inside a function. Full jest suite passes: 104 suites, 602 tests, no other snapshots changed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Ugly: Wrong indent in empty array with //comment inside

1 participant