aihc-parser-1.0.0.2: test/Test/Fixtures/golden/module/string-gap-where-layout.yaml
extensions: []
input: |
module StringGapWhere where
f = header ++ footer
where
header = "hello\
\world"
footer = "bye"
ast: |-
Module {ModuleHead {"StringGapWhere"}, [DeclValue (PatternBind (PVar "f") (EInfix (EVar "header") "++" (EVar "footer") Just [DeclValue (PatternBind (PVar "header") (EString "helloworld")), DeclValue (PatternBind (PVar "footer") (EString "bye"))]))]}
status: pass
comment: |
String gap inside a where block must not trigger premature layout
closure. When a string literal with gaps spans multiple lines, the
next token after the closing quote may appear on the same line as
the string end but a different line from the string start. The
layout engine must use the end line of the previous token for BOL
detection, not the start line.