From e546996e823fa6210c0d4b942d8c08e0bd936f10 Mon Sep 17 00:00:00 2001 From: Joscha Date: Thu, 21 Nov 2019 19:16:27 +0000 Subject: [PATCH] Fix parsing of labels whose name starts with an instruction --- src/Mima/Parse/Assembly/Statement.hs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Mima/Parse/Assembly/Statement.hs b/src/Mima/Parse/Assembly/Statement.hs index b46a5e5..fd1fed1 100644 --- a/src/Mima/Parse/Assembly/Statement.hs +++ b/src/Mima/Parse/Assembly/Statement.hs @@ -27,9 +27,9 @@ lLabel = lexeme $ try $ labelName <* symbol ":" lStatement :: Parser (Statement Address) lStatement = - SDirective <$> lDirective <* lNewlines - <|> SRawInstruction <$> lRawInstruction <* lNewlines - <|> SLabel <$> lLabel <* many lNewline + try (SDirective <$> lDirective <* lNewlines) + <|> try (SRawInstruction <$> lRawInstruction <* lNewlines) + <|> (SLabel <$> lLabel <* many lNewline) lStatements :: Parser [WithOffset (Statement Address)] lStatements = many (withOffset lStatement)