on master help sign in
Use ‘sitcc’ around let-in construction

Due to the “weird” leading space before ‘in’ we get rather unpleasing results without ‘sitcc’.

commit8485e34ec73f1f820ec353b32101e0852ccdfcbc authormrkkrp <mark.karpov@tweag.io> dateTue 27 Aug 2019, 18:28 (7 years ago) parent96390b2
3 files changed+10−1
data/examples/declaration/value/function/let-multi-line-out.hs+5 data/examples/declaration/value/function/let-multi-line.hs+4 src/Ormolu/Printer/Meat/Declaration/Value.hs+1−1
data/examples/declaration/value/function/let-multi-line-out.hs+5
@@ -21,3 +21,8 @@ implicitParams :: HasCallStack => Int
2121implicitParams =
2222 let ?cs = ?callstack
2323 in foo cs
24+
25+sitting =
26+ foo
27+ $ let x = 20
28+ in x
data/examples/declaration/value/function/let-multi-line.hs+4
@@ -21,3 +21,7 @@ implicitParams :: HasCallStack => Int
2121implicitParams =
2222 let ?cs = ?callstack
2323 in foo cs
24+
25+sitting =
26+ foo $ let x = 20
27+ in x
src/Ormolu/Printer/Meat/Declaration/Value.hs+1−1
@@ -578,7 +578,7 @@ p_hsExpr = \case
578578 txt "if"
579579 breakpoint
580580 inci . sitcc $ sep newline (located' (p_grhs RightArrow)) guards
581− HsLet NoExt localBinds e -> do
581+ HsLet NoExt localBinds e -> sitcc $ do
582582 txt "let"
583583 space
584584 dontUseBraces $ sitcc (located localBinds p_hsLocalBinds)