diff --git a/ChangeLog b/ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,7 @@
 2022-11-08 v1.6.1
+	* Add GHC 9.4.4 to CI
+	* Add support for exact printing HsDocTy. #121
+2022-11-08 v1.6.1
 	* Support GHC 9.4.3
 2022-09-30 v1.6.0
 	* Support GHC 9.4.1 and GHC 9.4.2
diff --git a/ghc-exactprint.cabal b/ghc-exactprint.cabal
--- a/ghc-exactprint.cabal
+++ b/ghc-exactprint.cabal
@@ -1,5 +1,5 @@
 name:                ghc-exactprint
-version:             1.6.1
+version:             1.6.1.1
 synopsis:            ExactPrint for GHC
 description:         Using the API Annotations available from GHC 9.2.1, this
                      library provides a means to round trip any code that can
@@ -18,6 +18,7 @@
 tested-with:         GHC == 9.4.1
                    , GHC == 9.4.2
                    , GHC == 9.4.3
+                   , GHC == 9.4.4
 extra-source-files:  ChangeLog
                      tests/examples/failing/*.hs
                      tests/examples/ghc710-only/*.hs
diff --git a/src/Language/Haskell/GHC/ExactPrint/ExactPrint.hs b/src/Language/Haskell/GHC/ExactPrint/ExactPrint.hs
--- a/src/Language/Haskell/GHC/ExactPrint/ExactPrint.hs
+++ b/src/Language/Haskell/GHC/ExactPrint/ExactPrint.hs
@@ -3957,6 +3957,10 @@
   exact (HsSpliceTy a splice) = do
     splice' <- markAnnotated splice
     return (HsSpliceTy a splice')
+  exact (HsDocTy an ty doc) = do
+    ty' <- markAnnotated ty
+    doc' <- markAnnotated doc
+    return (HsDocTy an ty' doc')
   exact (HsBangTy an (HsSrcBang mt up str) ty) = do
     an0 <-
       case mt of
@@ -3995,7 +3999,9 @@
       (HsCharTy src v) -> printSourceText src (show v)
     return (HsTyLit a lit)
   exact t@(HsWildCardTy _) = printStringAdvance "_" >> return t
-  exact x = error $ "missing match for HsType:" ++ showAst x
+  exact x@(HsRecTy _ _)    = error $ "missing match for HsType:" ++ showAst x
+  exact x@(XHsType _)      = error $ "missing match for HsType:" ++ showAst x
+
 
 -- ---------------------------------------------------------------------
 
diff --git a/tests/Test.hs b/tests/Test.hs
--- a/tests/Test.hs
+++ b/tests/Test.hs
@@ -246,7 +246,7 @@
     -- mkParserTestBC libdir "ghc92" "TopLevelSemis1.hs"
     -- mkParserTestMD libdir "ghc92" "TopLevelSemis1.hs"
 
-    mkParserTest libdir "ghc94" "record-dot-four-out.hs"
+    mkParserTest libdir "ghc94" "HsDocTy.hs"
 
    -- Needs GHC changes
 
diff --git a/tests/examples/ghc94/HsDocTy.hs b/tests/examples/ghc94/HsDocTy.hs
new file mode 100644
--- /dev/null
+++ b/tests/examples/ghc94/HsDocTy.hs
@@ -0,0 +1,6 @@
+{-# OPTIONS_GHC -haddock #-}
+module HsDocTy where
+
+class C1 a where
+  f1 :: a -> Int
+    -- ^ comment on Int
