diff --git a/src/Windows12/CodeGen.hs b/src/Windows12/CodeGen.hs index fd70c38..609ea61 100644 --- a/src/Windows12/CodeGen.hs +++ b/src/Windows12/CodeGen.hs @@ -265,23 +265,18 @@ codegenStmt (TWhile cond body) = mdo end <- block `named` "end" return () -codegenStmt (TAssign BaseAssign l@(t, (TId name)) e) = do +codegenStmt (TAssign BaseAssign l e) = do op <- codegenExpr e var <- codegenLVal l store var 0 op -codegenStmt (TAssign BaseAssign l@((StructType tName), (LTMember ((_, TId sName)) field)) e) = do - op <- codegenExpr e - struct <- codegenLVal l - store struct 0 op - -codegenStmt (TAssign AddAssign l@(t, (TId name)) e) = do +codegenStmt (TAssign AddAssign l e) = do op <- codegenExpr e var <- codegenLVal l val <- load var 0 store var 0 =<< add val op -codegenStmt (TAssign SubAssign l@(t, (TId name)) e) = do +codegenStmt (TAssign SubAssign l e) = do op <- codegenExpr e var <- codegenLVal l val <- load var 0