tcStmtAnn (EmbedAnn l isLeak e) = tcStmtBlock l "annotation statement" $ insideAnnotation $ do
    (isLeak',(e',t)) <- checkLeakMb l isLeak $ withKind PKind $ tcStmt (ComplexT Void) e
    return $ EmbedAnn (Typed l t) isLeak' e'
tcStmtAnn (EmbedAnn l isLeak e) = tcStmtBlock l "annotation statement" $ insideAnnotation $ do
    (isLeak',(e',t)) <- checkLeakMb l isLeak $ withKind PKind $ tcStmt (ComplexT Void) e
    return $ EmbedAnn (Typed l t) isLeak' e'
tcStmtAnn (EmbedAnn l isLeak e) = tcStmtBlock l "annotation statement" $ insideAnnotation $ do
    (isLeak',(e',t)) <- checkLeakMb l isLeak $ withKind PKind $ tcStmt (ComplexT Void) e
    return $ EmbedAnn (Typed l t) isLeak' e'