Revert "avoid unnecessary unased-unsized casts in assignments"

This reverts commit 51f2d2bb33.
This commit is contained in:
Zachary Snow 2020-07-17 19:12:44 -06:00
parent cc9f7f4658
commit e5e99b291b
1 changed files with 7 additions and 1 deletions

View File

@ -117,7 +117,8 @@ convertModuleItemM other = return $ convertModuleItem other
convertModuleItem :: ModuleItem -> ModuleItem
convertModuleItem =
traverseExprs (convertExpr SelfDetermined) .
traverseTypes (traverseNestedTypes convertType)
traverseTypes (traverseNestedTypes convertType) .
traverseAsgns convertAsgn
literalFor :: Char -> Expr
literalFor 'Z' = literalFor 'z'
@ -143,6 +144,11 @@ sizedLiteralFor expr ch =
Cast (Right size) (literalFor ch)
where size = DimsFn FnBits $ Right expr
convertAsgn :: (LHS, Expr) -> (LHS, Expr)
convertAsgn (lhs, expr) =
(lhs, convertExpr context expr)
where context = ContextDetermined $ lhsToExpr lhs
convertExpr :: ExprContext -> Expr -> Expr
convertExpr _ (DimsFn fn (Right e)) =
DimsFn fn $ Right $ convertExpr SelfDetermined e