From f36411c33921bedfef87ee38c7f93340c1667bd7 Mon Sep 17 00:00:00 2001 From: topecongiro <seuchida@gmail.com> Date: Tue, 9 May 2017 08:11:05 +0900 Subject: [PATCH] Remove visual_indent when rewriting else block --- src/expr.rs | 4 ++-- tests/source/nested-if-else.rs | 11 +++++++++++ tests/target/nested-if-else.rs | 11 +++++++++++ 3 files changed, 24 insertions(+), 2 deletions(-) create mode 100644 tests/source/nested-if-else.rs create mode 100644 tests/target/nested-if-else.rs diff --git a/src/expr.rs b/src/expr.rs index 5aaaa2743f8..61c6cea55e9 100644 --- a/src/expr.rs +++ b/src/expr.rs @@ -1004,7 +1004,7 @@ impl<'a> Rewrite for ControlFlow<'a> { false, true, mk_sp(else_block.span.lo, self.span.hi)) - .rewrite(context, shape.visual_indent(0)) + .rewrite(context, shape) } ast::ExprKind::If(ref cond, ref if_block, ref next_else_block) => { ControlFlow::new_if(cond, @@ -1014,7 +1014,7 @@ impl<'a> Rewrite for ControlFlow<'a> { false, true, mk_sp(else_block.span.lo, self.span.hi)) - .rewrite(context, shape.visual_indent(0)) + .rewrite(context, shape) } _ => { last_in_chain = true; diff --git a/tests/source/nested-if-else.rs b/tests/source/nested-if-else.rs new file mode 100644 index 00000000000..9a54789ddcd --- /dev/null +++ b/tests/source/nested-if-else.rs @@ -0,0 +1,11 @@ +fn issue1518() { + Some(Object { + field: if a { + a_thing + } else if b { + b_thing + } else { + c_thing + }, + }) +} diff --git a/tests/target/nested-if-else.rs b/tests/target/nested-if-else.rs new file mode 100644 index 00000000000..4d5bf1f702a --- /dev/null +++ b/tests/target/nested-if-else.rs @@ -0,0 +1,11 @@ +fn issue1518() { + Some(Object { + field: if a { + a_thing + } else if b { + b_thing + } else { + c_thing + }, + }) +}