diff --git a/haddock-api/src/Haddock/Backends/Hoogle.hs b/haddock-api/src/Haddock/Backends/Hoogle.hs
index 44bdb214e03da89e4a758045193d459d9c5201f4..e0bc9380c8e7aed8d9dcc35dcd1d745a12cdc463 100644
--- a/haddock-api/src/Haddock/Backends/Hoogle.hs
+++ b/haddock-api/src/Haddock/Backends/Hoogle.hs
@@ -192,7 +192,7 @@ pp_sig dflags names (L _ typ)  =
 
 -- note: does not yet output documentation for class methods
 ppClass :: DynFlags -> TyClDecl GhcRn -> [(Name, DocForDecl Name)] -> [String]
-ppClass dflags decl subdocs =
+ppClass dflags decl@(ClassDecl {}) subdocs =
     (ppDecl ++ ppTyFams) : ppMethods
   where
     ppDecl :: String
@@ -234,7 +234,7 @@ ppClass dflags decl subdocs =
         , nest 4 . vcat . map (Outputable.<> semi) $ elems
         , rbrace
         ]
-
+ppClass _ _non_cls_decl _ = []
 
 ppFam :: DynFlags -> FamilyDecl GhcRn -> [String]
 ppFam dflags decl@(FamilyDecl { fdInfo = info })