processElse :: AST.Name -> S.Expr -> Codegen ((AST.Operand, AST.Name), AST.Name)
processElse exitBlock (S.Clause S.Else code) = do
    elseBlock <- addBlock "case.else"

    setBlock elseBlock
    val <- cgen code
    br exitBlock
    elseBlock <- getBlock

    return ((val, elseBlock), elseBlock)
processElse :: AST.Name -> S.Expr -> Codegen ((AST.Operand, AST.Name), AST.Name)
processElse exitBlock (S.Clause S.Else code) = do
    elseBlock <- addBlock "case.else"

    setBlock elseBlock
    val <- cgen code
    br exitBlock
    elseBlock <- getBlock

    return ((val, elseBlock), elseBlock)
processElse exitBlock (S.Clause S.Else code) = do
    elseBlock <- addBlock "case.else"

    setBlock elseBlock
    val <- cgen code
    br exitBlock
    elseBlock <- getBlock

    return ((val, elseBlock), elseBlock)