Skip to content

Commit 224fe9c

Browse files
authored
fix(fmt): apply multi statement block config to else block (#8661)
fix(fmt): apply multi statement block to else clauses
1 parent 1c71ab1 commit 224fe9c

File tree

3 files changed

+29
-1
lines changed

3 files changed

+29
-1
lines changed

crates/fmt/src/formatter.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1782,7 +1782,7 @@ impl<'a, W: Write> Formatter<'a, W> {
17821782
self.visit_if(*loc, cond, if_branch, else_branch, false)?;
17831783
} else {
17841784
let else_branch_is_single_line =
1785-
self.visit_stmt_as_block(else_branch, if_branch_is_single_line)?;
1785+
self.visit_stmt_as_block(else_branch, attempt_single_line)?;
17861786
if single_line_stmt_wide && !else_branch_is_single_line {
17871787
bail!(FormatterError::fmt())
17881788
}

crates/fmt/testdata/Repros/fmt.sol

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,3 +131,17 @@ library MyLib {
131131
);
132132
// forgefmt: disable-end
133133
}
134+
135+
contract IfElseTest {
136+
function setNumber(uint256 newNumber) public {
137+
number = newNumber;
138+
if (newNumber = 1) {
139+
number = 1;
140+
} else if (newNumber = 2) {
141+
// number = 2;
142+
}
143+
else {
144+
newNumber = 3;
145+
}
146+
}
147+
}

crates/fmt/testdata/Repros/original.sol

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,3 +129,17 @@ library MyLib {
129129
);
130130
// forgefmt: disable-end
131131
}
132+
133+
contract IfElseTest {
134+
function setNumber(uint256 newNumber) public {
135+
number = newNumber;
136+
if (newNumber = 1) {
137+
number = 1;
138+
} else if (newNumber = 2) {
139+
// number = 2;
140+
}
141+
else {
142+
newNumber = 3;
143+
}
144+
}
145+
}

0 commit comments

Comments
 (0)