A Haskell 98 logically uninhabited data type http://github.com/ekmett/void

This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.

BSD-3-Clause licensed by Edward A. Kmett
Maintained by Edward A. Kmett


Hackage Build Status

This package provides a canonical ‘uninhabited’ data type for Haskell. This arises in a surprisingly wide array of situations in practice.

Contact Information

Contributions and bug reports are welcome!

Please feel free to contact me through github or on the #haskell IRC channel on irc.freenode.net.

-Edward Kmett


0.7.3 [2019.05.10]

  • Backport the Lift Void instance introduced in template-haskell-


  • Only depend on deepseq, hashable, and semigroups if using GHC 7.8 or earlier.
  • Cleaned up spurious “redundant constraint” warnings on GHC 8+


  • Support semigroups 0.17 on older GHCs
  • Backported NFData’s semigroup instance to older GHCs.


  • adapt to Data.Void being moved into base-4.8
  • vacuousM removed


  • instance Exception Void
  • instance Generic Void
  • instance Hashable Void


  • Fixed compatibility with GHC 7.2 (#6)
  • Added CHANGELOG.markdown and README.markdown