diff --git a/hw-bits.cabal b/hw-bits.cabal
--- a/hw-bits.cabal
+++ b/hw-bits.cabal
@@ -1,9 +1,7 @@
--- This file has been generated from package.yaml by hpack version 0.18.1.
---
--- see: https://github.com/sol/hpack
+cabal-version:  2.2
 
 name:           hw-bits
-version:        0.7.0.5
+version:        0.7.0.6
 synopsis:       Bit manipulation
 description:    Please see README.md
 category:       Data, Bit
@@ -12,13 +10,11 @@
 bug-reports:    https://github.com/haskell-works/hw-bits/issues
 author:         John Ky
 maintainer:     newhoggy@gmail.com
-copyright:      2016 John Ky
-license:        BSD3
+copyright:      2016-2018 John Ky
+license:        BSD-3-Clause
 license-file:   LICENSE
-tested-with:    GHC == 8.4.2, GHC == 8.2.2, GHC == 8.0.2, GHC == 7.10.3
+tested-with:    GHC == 8.6.3, GHC == 8.4.2, GHC == 8.2.2, GHC == 8.0.2
 build-type:     Simple
-cabal-version:  >= 1.10
-
 extra-source-files:
     README.md
 
@@ -31,21 +27,35 @@
   manual: False
   default: True
 
-library
-  hs-source-dirs:
-      src
-  build-depends:
-      base        >= 4.8        && < 5
-    , vector      >= 0.12       && < 0.13
-    , bytestring        >= 0.9        && < 0.11
-    , hw-int            >= 0.0.0.1    && < 0.1
-    , hw-prim           >= 0.4.0.3    && < 0.7
-    , hw-string-parse   >= 0.0.0.1    && < 0.1
-    , safe
+common base                 { build-depends: base                 >= 4          && < 5      }
+
+common QuickCheck           { build-depends: QuickCheck           >= 2.10       && < 2.12   }
+common bytestring           { build-depends: bytestring           >= 0.9        && < 0.11   }
+common criterion            { build-depends: criterion            >= 1.2        && < 1.6    }
+common hedgehog             { build-depends: hedgehog             >= 0.5        && < 0.7    }
+common hspec                { build-depends: hspec                >= 2.4        && < 3      }
+common hw-hspec-hedgehog    { build-depends: hw-hspec-hedgehog    >= 0.1.0.4    && < 0.2    }
+common hw-int               { build-depends: hw-int               >= 0.0.0.1    && < 0.1    }
+common hw-prim              { build-depends: hw-prim              >= 0.4.0.3    && < 0.7    }
+common hw-string-parse      { build-depends: hw-string-parse      >= 0.0.0.1    && < 0.1    }
+common vector               { build-depends: vector               >= 0.12       && < 0.13   }
+common safe                 { build-depends: safe                 >= 0.3        && < 0.4    }
+
+common common
+  default-language:   Haskell2010
+  ghc-options:        -Wall -O2
   if flag(sse42)
-    ghc-options: -Wall -O2 -msse4.2
-  else
-    ghc-options: -Wall -O2
+    ghc-options:      -msse4.2
+
+library
+  import:   base
+          , common
+          , bytestring
+          , hw-int
+          , hw-prim
+          , hw-string-parse
+          , safe
+          , vector
   exposed-modules:
       HaskellWorks.Data.Bits
       HaskellWorks.Data.Bits.AllExcess
@@ -70,47 +80,45 @@
       HaskellWorks.Data.Bits.Types.Builtin
       HaskellWorks.Data.Bits.Word
       HaskellWorks.Data.Bits.Writer.Storable
-  other-modules:
-      Paths_hw_bits
-  default-language: Haskell2010
+  other-modules:      Paths_hw_bits
+  autogen-modules:    Paths_hw_bits
+  hs-source-dirs:     src
 
 test-suite hw-bits-test
-  type: exitcode-stdio-1.0
-  main-is: Spec.hs
-  hs-source-dirs:
-      test
-  ghc-options: -threaded -rtsopts -with-rtsopts=-N -Wall
-  build-depends:
-      base        >= 4.8        && < 5
-    , vector      >= 0.12       && < 0.13
-    , bytestring              >= 0.9        && < 0.11
-    , hedgehog                >= 0.5        && < 0.7
-    , hspec                   >= 2.4        && < 3
-    , hw-hspec-hedgehog       >= 0.1.0.4    && < 0.2
-    , hw-bits
-    , hw-prim                 >= 0.4.0.3    && < 0.7
-    , QuickCheck              >= 2.10       && < 2.12
+  import:   base
+          , common
+          , QuickCheck
+          , bytestring
+          , hedgehog
+          , hspec
+          , hw-hspec-hedgehog
+          , hw-prim
+          , vector
+  build-depends:      hw-bits
+  type:               exitcode-stdio-1.0
+  main-is:            Spec.hs
+  build-depends:      hw-bits
   other-modules:
       HaskellWorks.Data.Bits.BitReadSpec
       HaskellWorks.Data.Bits.BitWiseSpec
       HaskellWorks.Data.Bits.FromBitTextByteStringSpec
       HaskellWorks.Data.Bits.Log2Spec
       HaskellWorks.Data.Bits.Writer.StorableSpec
-  default-language: Haskell2010
+      Paths_hw_bits
+  autogen-modules:    Paths_hw_bits
+  hs-source-dirs:     test
+  ghc-options:        -threaded -rtsopts -with-rtsopts=-N
+  build-tool-depends: hspec-discover:hspec-discover
 
 benchmark bench
-  type: exitcode-stdio-1.0
-  main-is: Main.hs
-  hs-source-dirs:
-      bench
-  build-depends:
-      base        >= 4.8        && < 5
-    , vector      >= 0.12       && < 0.13
-    , criterion >= 1.2        && < 1.6
-    , hw-bits
-    , hw-prim   >= 0.4.0.0    && < 0.7
-  if flag(sse42)
-    ghc-options: -Wall -O2 -msse4.2
-  else
-    ghc-options: -Wall -O2
-  default-language: Haskell2010
+  import:   base
+          , common
+          , criterion
+          , vector
+  build-depends:      hw-bits
+  type:               exitcode-stdio-1.0
+  main-is:            Main.hs
+  build-depends:      hw-bits
+  other-modules:      Paths_hw_bits
+  autogen-modules:    Paths_hw_bits
+  hs-source-dirs:     bench
diff --git a/src/HaskellWorks/Data/Bits/PopCount/PopCount1.hs b/src/HaskellWorks/Data/Bits/PopCount/PopCount1.hs
--- a/src/HaskellWorks/Data/Bits/PopCount/PopCount1.hs
+++ b/src/HaskellWorks/Data/Bits/PopCount/PopCount1.hs
@@ -23,7 +23,7 @@
 {-# INLINE fastWord #-}
 
 class PopCount1 v where
-  -- | The number of 0-bits in the value.
+  -- | The number of 1-bits in the value.
   popCount1 :: v -> Count
 
 instance PopCount1 Bool where
