From a83cc3809b395997b2475766aa512834364a613b Mon Sep 17 00:00:00 2001 From: Zachary Snow Date: Thu, 9 Jul 2020 21:02:09 -0600 Subject: [PATCH] omit no-op size casts of explicitly-sized literals --- src/Convert/SizeCast.hs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Convert/SizeCast.hs b/src/Convert/SizeCast.hs index a80a806..4831d16 100644 --- a/src/Convert/SizeCast.hs +++ b/src/Convert/SizeCast.hs @@ -64,7 +64,9 @@ traverseExprM = where convertExprM :: Expr -> ST Expr convertExprM (Cast (Right (Number s)) (Number n)) = - case (readNumber s, readNumber n) of + if elem '\'' n && s == takeWhile (/= '\'') n + then return $ Number n + else case (readNumber s, readNumber n) of (Just s', Just n') -> return $ Number str where