summaryrefslogtreecommitdiff
path: root/Build
diff options
context:
space:
mode:
Diffstat (limited to 'Build')
-rw-r--r--Build/EvilSplicer.hs7
1 files changed, 4 insertions, 3 deletions
diff --git a/Build/EvilSplicer.hs b/Build/EvilSplicer.hs
index 7476e1a0a..11ab7612b 100644
--- a/Build/EvilSplicer.hs
+++ b/Build/EvilSplicer.hs
@@ -332,12 +332,12 @@ mangleCode = flip_colon
preindent <- many1 $ oneOf " \n"
string "\\ "
lambdaparams <- restofline
- continuedlambdaparams <- many $ do
+ continuedlambdaparams <- many $ try $ do
indent <- many1 $ char ' '
p <- satisfy isLetter
aram <- many $ satisfy isAlphaNum <|> oneOf "_"
newline
- return $ indent ++ p:aram
+ return $ indent ++ p:aram ++ "\n"
indent <- many1 $ char ' '
string "-> "
firstline <- restofline
@@ -348,7 +348,8 @@ mangleCode = flip_colon
return $ indent ++ " " ++ l
return $ concat
[ prefix:preindent
- , "(\\ " ++ lambdaparams ++ "\n" ++ intercalate "\n" continuedlambdaparams
+ , "(\\ " ++ lambdaparams ++ "\n"
+ , concat continuedlambdaparams
, indent ++ "-> "
, lambdaparens $ intercalate "\n" (firstline:lambdalines)
, ")\n"