Since Void values logically don't exist, this witnesses the logical reasoning tool of "ex falso quodlibet".
let x :: Either Void Int; x = Right 5:{case x of Right r -> r Left l -> absurd l:}5
:: a typeCtrl KGHC 9.14.1 · lts/ghc-9.14.x · 45dd537 · 2026-10-11
Modulebase-compat-0.15.0Haskell2010
Since Void values logically don't exist, this witnesses the logical reasoning tool of "ex falso quodlibet".
let x :: Either Void Int; x = Right 5:{case x of Right r -> r Left l -> absurd l:}5
Uninhabited data type
Eq VoidDefined in ghc-internal-9.1401.0 · GHC.Internal.BaseData VoidDefined in ghc-internal-9.1401.0 · GHC.Internal.Data.DataOrd VoidDefined in ghc-internal-9.1401.0 · GHC.Internal.BaseRead VoidDefined in ghc-internal-9.1401.0 · GHC.Internal.ReadShow VoidDefined in ghc-internal-9.1401.0 · GHC.Internal.ShowIx VoidDefined in ghc-internal-9.1401.0 · GHC.Internal.IxGeneric VoidDefined in ghc-internal-9.1401.0 · GHC.Internal.GenericsSemigroup VoidDefined in ghc-internal-9.1401.0 · GHC.Internal.BaseException VoidDefined in ghc-internal-9.1401.0 · GHC.Internal.Exception.TypeLift VoidDefined in ghc-internal-9.1401.0 · GHC.Internal.TH.Lifttype Rep Void = D1 ('MetaData "Void"
"GHC.Internal.Base"
"ghc-internal"
'False) V1Defined in ghc-internal-9.1401.0 · GHC.Internal.Generics