ppStatement (SeqBlock mb_name decls stmts)
  = text "begin" <+> x $$
    nest 2 (vcat (map ppBlockDecl decls ++ map ppStatement stmts)) $$
    text "end"
  where x = case mb_name of
              Just name -> colon <+> ppIdent name
              Nothing   -> empty
ppStatement (SeqBlock mb_name decls stmts)
  = text "begin" <+> x $$
    nest 2 (vcat (map ppBlockDecl decls ++ map ppStatement stmts)) $$
    text "end"
  where x = case mb_name of
              Just name -> colon <+> ppIdent name
              Nothing   -> empty
ppStatement (SeqBlock mb_name decls stmts)
  = text "begin" <+> x $$
    nest 2 (vcat (map ppBlockDecl decls ++ map ppStatement stmts)) $$
    text "end"
  where x = case mb_name of
              Just name -> colon <+> ppIdent name
              Nothing   -> empty