Hello community,
here is the log from the commit of package ghc-proxied for openSUSE:Factory checked in at 2017-08-31 20:58:03
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-proxied (Old)
and /work/SRC/openSUSE:Factory/.ghc-proxied.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-proxied"
Thu Aug 31 20:58:03 2017 rev:2 rq:513457 version:0.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc-proxied/ghc-proxied.changes 2016-11-15 17:57:09.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.ghc-proxied.new/ghc-proxied.changes 2017-08-31 20:58:04.725799520 +0200
@@ -1,0 +2,5 @@
+Thu Jul 27 14:07:02 UTC 2017 - psimons@suse.com
+
+- Update to version 0.3.
+
+-------------------------------------------------------------------
Old:
----
proxied-0.2.tar.gz
New:
----
proxied-0.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-proxied.spec ++++++
--- /var/tmp/diff_new_pack.VtArbQ/_old 2017-08-31 20:58:05.401704554 +0200
+++ /var/tmp/diff_new_pack.VtArbQ/_new 2017-08-31 20:58:05.405703992 +0200
@@ -1,7 +1,7 @@
#
# spec file for package ghc-proxied
#
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -18,20 +18,16 @@
%global pkg_name proxied
Name: ghc-%{pkg_name}
-Version: 0.2
+Version: 0.3
Release: 0
Summary: Make functions consume Proxy instead of undefined
License: BSD-3-Clause
-Group: System/Libraries
+Group: Development/Languages/Other
Url: https://hackage.haskell.org/package/%{pkg_name}
Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz
BuildRequires: ghc-Cabal-devel
-# Begin cabal-rpm deps:
-BuildRequires: ghc-generic-deriving-devel
BuildRequires: ghc-rpm-macros
-BuildRequires: ghc-tagged-devel
BuildRoot: %{_tmppath}/%{name}-%{version}-build
-# End cabal-rpm deps
%description
'proxied' is a simple library that exports a function to convert constant
@@ -70,15 +66,12 @@
%prep
%setup -q -n %{pkg_name}-%{version}
-
%build
%ghc_lib_build
-
%install
%ghc_lib_install
-
%post devel
%ghc_pkg_recache
++++++ proxied-0.2.tar.gz -> proxied-0.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/proxied-0.2/CHANGELOG.md new/proxied-0.3/CHANGELOG.md
--- old/proxied-0.2/CHANGELOG.md 2016-04-17 00:57:59.000000000 +0200
+++ new/proxied-0.3/CHANGELOG.md 2017-04-04 16:04:59.000000000 +0200
@@ -1,3 +1,14 @@
+## 0.3
+* Update for GHC 8.2
+ * Since `typeRep#`, `typeNatTypeRep`, and `typeSymbolTypeRep` are no longer
+ exported from `base`, `theTypeRep#`, `theTypeNatTypeRep`, and
+ `theTypeSymbolTypeRep` are now synonyms for `theTypeRep`
+ * Happily, the new type signature for `GHC.OverloadedLabels.fromLabel` is now
+ exactly the same as `theFromLabel`, so the latter is now a synonym for the
+ former
+* Use explicit kind variable binders in `Data.Proxyless`
+* Use explicit `forall`s in `Data.Proxied` for consistency
+
## 0.2
* Added the `Data.Proxyless` module
* Added `proxyHashed` to `Data.Proxied`
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/proxied-0.2/LICENSE new/proxied-0.3/LICENSE
--- old/proxied-0.2/LICENSE 2016-04-17 00:57:59.000000000 +0200
+++ new/proxied-0.3/LICENSE 2017-04-04 16:04:59.000000000 +0200
@@ -1,4 +1,4 @@
-Copyright (c) 2016, Ryan Scott
+Copyright (c) 2016-2017, Ryan Scott
All rights reserved.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/proxied-0.2/README.md new/proxied-0.3/README.md
--- old/proxied-0.2/README.md 2016-04-17 00:57:59.000000000 +0200
+++ new/proxied-0.3/README.md 2017-04-04 16:04:59.000000000 +0200
@@ -19,4 +19,4 @@
`Proxy`, however, does not carry any of the error-throwing risks of `undefined`, so it is much more preferable to take `Proxy` as an argument to a constant function instead of `undefined`. Unfortunately, `Proxy` was included in `base` until GHC 7.8, so many of `base`'s typeclasses still contain constant functions that aren't amenable to passing `Proxy`. `proxied` addresses this issue by providing variants of those typeclass functions that take an explicit `proxy` value.
-This library also contains the "Data.Proxyless" module, which works in the opposite direction. That is, one can take functions which take `Proxy` (or `undefined`) as an argument and convert them to functions which take no arguments. This trick relies on the `-XTypeApplications` extension, so it is only available with GHC 8.0 or later.
+This library also contains the `Data.Proxyless` module, which works in the opposite direction. That is, one can take functions which take `Proxy` (or `undefined`) as an argument and convert them to functions which take no arguments. This trick relies on the `-XTypeApplications` extension, so it is only available with GHC 8.0 or later.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/proxied-0.2/proxied.cabal new/proxied-0.3/proxied.cabal
--- old/proxied-0.2/proxied.cabal 2016-04-17 00:57:59.000000000 +0200
+++ new/proxied-0.3/proxied.cabal 2017-04-04 16:04:59.000000000 +0200
@@ -1,5 +1,5 @@
name: proxied
-version: 0.2
+version: 0.3
synopsis: Make functions consume Proxy instead of undefined
description: @proxied@ is a simple library that exports a function to
convert constant functions to ones that take a @proxy@
@@ -34,7 +34,7 @@
author: Ryan Scott
maintainer: Ryan Scott
stability: Provisional
-copyright: (C) 2016 Ryan Scott
+copyright: (C) 2016-2017 Ryan Scott
category: Data
build-type: Simple
tested-with: GHC == 7.0.4
@@ -43,7 +43,8 @@
, GHC == 7.6.3
, GHC == 7.8.4
, GHC == 7.10.3
- , GHC == 8.0.1
+ , GHC == 8.0.2
+ , GHC == 8.2.1
extra-source-files: CHANGELOG.md, README.md
cabal-version: >=1.10
@@ -56,8 +57,10 @@
if impl(ghc >= 8.0)
exposed-modules: Data.Proxyless
build-depends: base >= 4.3 && < 5
- , generic-deriving >= 1.10.1 && < 2
- , tagged >= 0.4.4 && < 1
+ if !impl(ghc >= 7.6)
+ build-depends: generic-deriving >= 1.10.1 && < 2
+ if !impl(ghc >= 7.8)
+ build-depends: tagged >= 0.4.4 && < 1
hs-source-dirs: src
default-language: Haskell2010
ghc-options: -Wall
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/proxied-0.2/src/Data/Proxied.hs new/proxied-0.3/src/Data/Proxied.hs
--- old/proxied-0.2/src/Data/Proxied.hs 2016-04-17 00:57:59.000000000 +0200
+++ new/proxied-0.3/src/Data/Proxied.hs 2017-04-04 16:04:59.000000000 +0200
@@ -1,6 +1,7 @@
{-# LANGUAGE CPP #-}
{-# LANGUAGE KindSignatures #-}
{-# LANGUAGE MagicHash #-}
+{-# LANGUAGE ScopedTypeVariables #-}
#if __GLASGOW_HASKELL__ >= 702
{-# LANGUAGE Trustworthy #-}
@@ -14,7 +15,7 @@
{-|
Module: Data.Proxied
-Copyright: (C) 2016 Ryan Scott
+Copyright: (C) 2016-2017 Ryan Scott
License: BSD-style (see the file LICENSE)
Maintainer: Ryan Scott
Stability: Provisional
@@ -81,8 +82,12 @@
import Foreign.Storable (Storable(..))
+#if MIN_VERSION_base(4,6,0)
+import GHC.Generics
+#else
import Generics.Deriving.Base
import Generics.Deriving.Instances ()
+#endif
#if MIN_VERSION_base(4,7,0)
import Data.Bits (FiniteBits(..))
@@ -93,7 +98,7 @@
-- | Converts a constant function to one that takes a @proxy@ argument.
--
-- /Since: 0.1/
-proxied :: (a -> b) -> proxy a -> b
+proxied :: forall proxy a b. (a -> b) -> proxy a -> b
proxied f _ = f undefined
#if MIN_VERSION_base(4,7,0)
@@ -101,7 +106,7 @@
-- This function is only available with @base-4.7@ or later.
--
-- /Since: 0.2/
-proxyHashed :: (a -> b) -> Proxy# a -> b
+proxyHashed :: forall a b. (a -> b) -> Proxy# a -> b
proxyHashed f _ = f undefined
#endif
@@ -110,7 +115,7 @@
-- but it's here for symmetry.)
--
-- /Since: 0.1/
-unproxied :: (Proxy a -> b) -> a -> b
+unproxied :: forall a b. (Proxy a -> b) -> a -> b
unproxied f _ = f Proxy
-------------------------------------------------------------------------------
@@ -120,13 +125,13 @@
-- | @'bitSizeProxied' = 'proxied' 'bitSize'@
--
-- /Since: 0.1/
-bitSizeProxied :: Bits a => proxy a -> Int
+bitSizeProxied :: forall proxy a. Bits a => proxy a -> Int
bitSizeProxied = proxied bitSize
-- | @'isSignedProxied' = 'proxied' 'isSigned'@
--
-- /Since: 0.1/
-isSignedProxied :: Bits a => proxy a -> Bool
+isSignedProxied :: forall proxy a. Bits a => proxy a -> Bool
isSignedProxied = proxied isSigned
#if MIN_VERSION_base(4,7,0)
@@ -135,7 +140,7 @@
-- This function is only available with @base-4.7@ or later.
--
-- /Since: 0.1/
-bitSizeMaybeProxied :: Bits a => proxy a -> Maybe Int
+bitSizeMaybeProxied :: forall proxy a. Bits a => proxy a -> Maybe Int
bitSizeMaybeProxied = proxied bitSizeMaybe
-- | @'finiteBitSizeProxied' = 'proxied' 'finiteBitSize'@
@@ -143,7 +148,7 @@
-- This function is only available with @base-4.7@ or later.
--
-- /Since: 0.1/
-finiteBitSizeProxied :: FiniteBits a => proxy a -> Int
+finiteBitSizeProxied :: forall proxy a. FiniteBits a => proxy a -> Int
finiteBitSizeProxied = proxied finiteBitSize
#endif
@@ -154,7 +159,7 @@
-- | @'dataTypeOfProxied' = 'proxied' 'dataTypeOf'@
--
-- /Since: 0.1/
-dataTypeOfProxied :: Data a => proxy a -> DataType
+dataTypeOfProxied :: forall proxy a. Data a => proxy a -> DataType
dataTypeOfProxied = proxied dataTypeOf
-------------------------------------------------------------------------------
@@ -166,7 +171,13 @@
-- On @base-4.7@ and later, this is identical to 'typeRep'.
--
-- /Since: 0.1/
-typeOfProxied :: Typeable a => proxy a -> TypeRep
+typeOfProxied :: forall proxy
+#if MIN_VERSION_base(4,7,0)
+ (a :: k)
+#else
+ a
+#endif
+ . Typeable a => proxy a -> TypeRep
#if MIN_VERSION_base(4,7,0)
typeOfProxied = typeRep
#else
@@ -180,29 +191,33 @@
-- | @'sizeOfProxied' = 'proxied' 'sizeOf'@
--
-- /Since: 0.1/
-sizeOfProxied :: Storable a => proxy a -> Int
+sizeOfProxied :: forall proxy a. Storable a => proxy a -> Int
sizeOfProxied = proxied sizeOf
-- | @'alignmentProxied' = 'proxied' 'alignment'@
--
-- /Since: 0.1/
-alignmentProxied :: Storable a => proxy a -> Int
+alignmentProxied :: forall proxy a. Storable a => proxy a -> Int
alignmentProxied = proxied alignment
-------------------------------------------------------------------------------
-- GHC.Generics
-------------------------------------------------------------------------------
-#if MIN_VERSION_base(4,9,0)
-# define T_TYPE(t) (t :: k -> (* -> *) -> * -> *)
+#define GENERIC_FORALL(t,letter) forall proxy T_TYPE(t) letter f a
+
+#if MIN_VERSION_base(4,10,0)
+# define T_TYPE(t) (t :: k1 -> (k2 -> *) -> k2 -> *)
+#elif MIN_VERSION_base(4,9,0)
+# define T_TYPE(t) (t :: k1 -> (* -> *) -> k2 -> *)
#else
-# define T_TYPE(t) (t :: * -> (* -> *) -> * -> *)
+# define T_TYPE(t) (t :: * -> (* -> *) -> * -> *)
#endif
-- | @'datatypeNameProxied' = 'proxied' 'datatypeName'@
--
-- /Since: 0.1/
-datatypeNameProxied :: Datatype d
+datatypeNameProxied :: GENERIC_FORALL(t,d). Datatype d
=> proxy (T_TYPE(t) d f a)
-> [Char]
datatypeNameProxied = proxied datatypeName
@@ -210,7 +225,7 @@
-- | @'moduleNameProxied' = 'proxied' 'moduleName'@
--
-- /Since: 0.1/
-moduleNameProxied :: Datatype d
+moduleNameProxied :: GENERIC_FORALL(t,d). Datatype d
=> proxy (T_TYPE(t) d f a)
-> [Char]
moduleNameProxied = proxied moduleName
@@ -221,7 +236,7 @@
-- This function is only available with @base-4.7@ or later.
--
-- /Since: 0.1/
-isNewtypeProxied :: Datatype d
+isNewtypeProxied :: GENERIC_FORALL(t,d). Datatype d
=> proxy (T_TYPE(t) d f a)
-> Bool
isNewtypeProxied = proxied isNewtype
@@ -233,7 +248,7 @@
-- This function is only avaiable with @base-4.9@ or later.
--
-- /Since: 0.1/
-packageNameProxied :: Datatype d
+packageNameProxied :: GENERIC_FORALL(t,d). Datatype d
=> proxy (T_TYPE(t) d f a)
-> [Char]
packageNameProxied = proxied packageName
@@ -242,7 +257,7 @@
-- | @'conNameProxied' = 'proxied' 'conName'@
--
-- /Since: 0.1/
-conNameProxied :: Constructor c
+conNameProxied :: GENERIC_FORALL(t,c). Constructor c
=> proxy (T_TYPE(t) c f a)
-> [Char]
conNameProxied = proxied conName
@@ -250,7 +265,7 @@
-- | @'conFixityProxied' = 'proxied' 'conFixity'@
--
-- /Since: 0.1/
-conFixityProxied :: Constructor c
+conFixityProxied :: GENERIC_FORALL(t,c). Constructor c
=> proxy (T_TYPE(t) c f a)
-> Fixity
conFixityProxied = proxied conFixity
@@ -258,7 +273,7 @@
-- | @'conIsRecordProxied' = 'proxied' 'conIsRecord'@
--
-- /Since: 0.1/
-conIsRecordProxied :: Constructor c
+conIsRecordProxied :: GENERIC_FORALL(t,c). Constructor c
=> proxy (T_TYPE(t) c f a)
-> Bool
conIsRecordProxied = proxied conIsRecord
@@ -266,7 +281,7 @@
-- | @'selNameProxied' = 'proxied' 'selName'@
--
-- /Since: 0.1/
-selNameProxied :: Selector s
+selNameProxied :: GENERIC_FORALL(t,s). Selector s
=> proxy (T_TYPE(t) s f a)
-> [Char]
selNameProxied = proxied selName
@@ -277,7 +292,7 @@
-- This function is only available with @base-4.9@ or later.
--
-- /Since: 0.1/
-selSourceUnpackednessProxied :: Selector s
+selSourceUnpackednessProxied :: GENERIC_FORALL(t,s). Selector s
=> proxy (T_TYPE(t) s f a)
-> SourceUnpackedness
selSourceUnpackednessProxied = proxied selSourceUnpackedness
@@ -287,7 +302,7 @@
-- This function is only available with @base-4.9@ or later.
--
-- /Since: 0.1/
-selSourceStrictnessProxied :: Selector s
+selSourceStrictnessProxied :: GENERIC_FORALL(t,s). Selector s
=> proxy (T_TYPE(t) s f a)
-> SourceStrictness
selSourceStrictnessProxied = proxied selSourceStrictness
@@ -297,7 +312,7 @@
-- This function is only available with @base-4.9@ or later.
--
-- /Since: 0.1/
-selDecidedStrictnessProxied :: Selector s
+selDecidedStrictnessProxied :: GENERIC_FORALL(t,s). Selector s
=> proxy (T_TYPE(t) s f a)
-> DecidedStrictness
selDecidedStrictnessProxied = proxied selDecidedStrictness
@@ -310,19 +325,19 @@
-- | @'floatRadixProxied' = 'proxied' 'floatRadix'@
--
-- /Since: 0.1/
-floatRadixProxied :: RealFloat a => proxy a -> Integer
+floatRadixProxied :: forall proxy a. RealFloat a => proxy a -> Integer
floatRadixProxied = proxied floatRadix
-- | @'floatDigitsProxied' = 'proxied' 'floatDigits'@
--
-- /Since: 0.1/
-floatDigitsProxied :: RealFloat a => proxy a -> Int
+floatDigitsProxied :: forall proxy a. RealFloat a => proxy a -> Int
floatDigitsProxied = proxied floatDigits
-- | @'floatRangeProxied' = 'proxied' 'floatRange'@
--
-- /Since: 0.1/
-floatRangeProxied :: RealFloat a => proxy a -> (Int, Int)
+floatRangeProxied :: forall proxy a. RealFloat a => proxy a -> (Int, Int)
floatRangeProxied = proxied floatRange
-------------------------------------------------------------------------------
@@ -335,6 +350,6 @@
-- This function is only available with @base-4.7@ or later.
--
-- /Since: 0.1/
-parseFormatProxied :: PrintfArg a => proxy a -> ModifierParser
+parseFormatProxied :: forall proxy a. PrintfArg a => proxy a -> ModifierParser
parseFormatProxied = proxied parseFormat
#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/proxied-0.2/src/Data/Proxyless.hs new/proxied-0.3/src/Data/Proxyless.hs
--- old/proxied-0.2/src/Data/Proxyless.hs 2016-04-17 00:57:59.000000000 +0200
+++ new/proxied-0.3/src/Data/Proxyless.hs 2017-04-04 16:04:59.000000000 +0200
@@ -1,19 +1,23 @@
{-# LANGUAGE AllowAmbiguousTypes #-}
+{-# LANGUAGE CPP #-}
{-# LANGUAGE MagicHash #-}
{-# LANGUAGE PolyKinds #-}
{-# LANGUAGE Trustworthy #-}
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE TypeApplications #-}
+{-# LANGUAGE TypeInType #-}
{-# LANGUAGE TypeOperators #-}
-{-# LANGUAGE ViewPatterns #-}
-
{-# OPTIONS_GHC -Wno-deprecations #-}
+
+#if __GLASGOW_HASKELL__ == 800 \
+ && __GLASGOW_HASKELL_PATCHLEVEL1__ == 1
{-# OPTIONS_GHC -Wno-type-defaults #-} -- Needed due to GHC Trac #11947
+#endif
{-|
Module: Data.Proxyless
-Copyright: (C) 2016 Ryan Scott
+Copyright: (C) 2016-2017 Ryan Scott
License: BSD-style (see the file LICENSE)
Maintainer: Ryan Scott
Stability: Provisional
@@ -80,10 +84,13 @@
) where
import Data.Bits (Bits(..), FiniteBits(..))
-import Data.Data hiding (Fixity)
+import Data.Data (Data(dataTypeOf), DataType)
import Data.Proxy (Proxy(..))
import Data.Type.Equality ((:~:))
-import Data.Typeable.Internal (Typeable(..), typeNatTypeRep, typeSymbolTypeRep)
+import Data.Typeable (Typeable, TypeRep, typeRep)
+#if !(MIN_VERSION_base(4,10,0))
+import Data.Typeable.Internal (typeRep#, typeNatTypeRep, typeSymbolTypeRep)
+#endif
import Foreign.Storable (Storable(..))
@@ -98,14 +105,14 @@
-- doesn't require an argument.
--
-- /Since: 0.2/
-proxyless :: forall a b. (Proxy a -> b) -> b
+proxyless :: forall k (a :: k) b. (Proxy a -> b) -> b
proxyless f = f Proxy
-- | Converts a constant function that takes a 'Proxy#' argument to one that
-- doesn't require an argument.
--
-- /Since: 0.2/
-proxyHashless :: forall a b. (Proxy# a -> b) -> b
+proxyHashless :: forall k (a :: k) b. (Proxy# a -> b) -> b
proxyHashless f = f proxy#
-- | Converts a constant function that takes an 'undefined' argument to one that
@@ -159,27 +166,48 @@
-- | @'theTypeNatTypeRep' = 'proxyHashless' 'typeNatTypeRep'@
--
+-- Note that in @base-4.10@ and later, 'theTypeNatTypeRep' is simply a synonym
+-- for 'theTypeRep', as 'typeNatTypeRep' is no longer exported.
+--
-- /Since: 0.2/
theTypeNatTypeRep :: forall a. KnownNat a => TypeRep
-theTypeNatTypeRep = proxyHashless @a typeNatTypeRep
+#if MIN_VERSION_base(4,10,0)
+theTypeNatTypeRep = theTypeRep @_ @a
+#else
+theTypeNatTypeRep = proxyHashless @_ @a typeNatTypeRep
+#endif
-- | @'theTypeRep' = 'proxyless' 'typeRep'@
--
-- /Since: 0.2/
-theTypeRep :: forall a. Typeable a => TypeRep
-theTypeRep = proxyless @a typeRep
+theTypeRep :: forall k (a :: k). Typeable a => TypeRep
+theTypeRep = proxyless @_ @a typeRep
-- | @'theTypeRep#' = 'proxyHashless' 'typeRep#'@
--
+-- Note that in @base-4.10@ and later, 'theTypeRep#' is simply a synonym for
+-- 'theTypeRep', as 'typeRep#' is no longer exported.
+--
-- /Since: 0.2/
-theTypeRep# :: forall a. Typeable a => TypeRep
-theTypeRep# = proxyHashless @a typeRep#
+theTypeRep# :: forall k (a :: k). Typeable a => TypeRep
+#if MIN_VERSION_base(4,10,0)
+theTypeRep# = theTypeRep @k @a
+#else
+theTypeRep# = proxyHashless @_ @a typeRep#
+#endif
-- | @'theTypeSymbolTypeRep' = 'proxyHashless' 'typeSymbolTypeRep'@
--
+-- Note that in @base-4.10@ and later, 'theTypeSymbolTypeRep' is simply a
+-- synonym for 'theTypeRep', as 'typeSymbolTypeRep' is no longer exported.
+--
-- /Since: 0.2/
theTypeSymbolTypeRep :: forall a. KnownSymbol a => TypeRep
-theTypeSymbolTypeRep = proxyHashless @a typeSymbolTypeRep
+#if MIN_VERSION_base(4,10,0)
+theTypeSymbolTypeRep = theTypeRep @_ @a
+#else
+theTypeSymbolTypeRep = proxyHashless @_ @a typeSymbolTypeRep
+#endif
-------------------------------------------------------------------------------
-- Foreign.Storable
@@ -204,78 +232,85 @@
-- | @'theDatatypeName' = 'datatypeName' 'undefined'@
--
-- /Since: 0.2/
-theDatatypeName :: forall d. Datatype d => [Char]
+theDatatypeName :: forall k (d :: k). Datatype d => [Char]
theDatatypeName = datatypeName @d undefined
-- | @'theModuleName' = 'moduleName' 'undefined'@
--
-- /Since: 0.2/
-theModuleName :: forall d. Datatype d => [Char]
+theModuleName :: forall k (d :: k). Datatype d => [Char]
theModuleName = moduleName @d undefined
-- | @'theIsNewtype' = 'isNewtype' 'undefined'@
--
-- /Since: 0.2/
-theIsNewtype :: forall d. Datatype d => Bool
+theIsNewtype :: forall k (d :: k). Datatype d => Bool
theIsNewtype = isNewtype @d undefined
-- | @'thePackageName' = 'packageName' 'undefined'@
--
-- /Since: 0.2/
-thePackageName :: forall d. Datatype d => [Char]
+thePackageName :: forall k (d :: k). Datatype d => [Char]
thePackageName = packageName @d undefined
-- | @'theConName' = 'conName' 'undefined'@
--
-- /Since: 0.2/
-theConName :: forall c. Constructor c => [Char]
+theConName :: forall k (c :: k). Constructor c => [Char]
theConName = conName @c undefined
-- | @'theConFixity' = 'conFixity' 'undefined'@
--
-- /Since: 0.2/
-theConFixity :: forall c. Constructor c => Fixity
+theConFixity :: forall k (c :: k). Constructor c => Fixity
theConFixity = conFixity @c undefined
-- | @'theConIsRecord' = 'conIsRecord' 'undefined'@
--
-- /Since: 0.2/
-theConIsRecord :: forall c. Constructor c => Bool
+theConIsRecord :: forall k (c :: k). Constructor c => Bool
theConIsRecord = conIsRecord @c undefined
-- | @'theSelName' = 'selName' 'undefined'@
--
-- /Since: 0.2/
-theSelName :: forall s. Selector s => [Char]
+theSelName :: forall k (s :: k). Selector s => [Char]
theSelName = selName @s undefined
-- | @'theSelSourceUnpackedness' = 'selSourceUnpackedness' 'undefined'@
--
-- /Since: 0.2/
-theSelSourceUnpackedness :: forall s. Selector s => SourceUnpackedness
+theSelSourceUnpackedness :: forall k (s :: k). Selector s => SourceUnpackedness
theSelSourceUnpackedness = selSourceUnpackedness @s undefined
-- | @'theSelSourceStrictness' = 'selSourceStrictness' 'undefined'@
--
-- /Since: 0.2/
-theSelSourceStrictness :: forall s. Selector s => SourceStrictness
+theSelSourceStrictness :: forall k (s :: k). Selector s => SourceStrictness
theSelSourceStrictness = selSourceStrictness @s undefined
-- | @'theSelDecidedStrictness' = 'selDecidedStrictness' 'undefined'@
--
-- /Since: 0.2/
-theSelDecidedStrictness :: forall s. Selector s => DecidedStrictness
+theSelDecidedStrictness :: forall k (s :: k). Selector s => DecidedStrictness
theSelDecidedStrictness = selDecidedStrictness @s undefined
-------------------------------------------------------------------------------
-- GHC.Generics
-------------------------------------------------------------------------------
--- | @'theFromLabel' = 'proxyHashless' 'fromLabel'@
+-- | In @base-4.10@ and later, this is simply a synonym for 'fromLabel'.
+-- In @base-4.9@, 'theFromLabel' is defined as:
+--
+-- @'theFromLabel' = 'proxyHashless' 'fromLabel'@
--
-- /Since: 0.2/
theFromLabel :: forall x a. IsLabel x a => a
-theFromLabel = proxyHashless @x fromLabel
+#if MIN_VERSION_base(4,10,0)
+theFromLabel = fromLabel @x
+#else
+theFromLabel = proxyHashless @_ @x fromLabel
+#endif
-------------------------------------------------------------------------------
-- GHC.TypeLits
@@ -285,13 +320,13 @@
--
-- /Since: 0.2/
theNatVal :: forall n. KnownNat n => Integer
-theNatVal = proxyless @n natVal
+theNatVal = proxyless @_ @n natVal
-- | @`theNatVal'` = 'proxyHashless' `natVal'`@
--
-- /Since: 0.2/
theNatVal' :: forall n. KnownNat n => Integer
-theNatVal' = proxyHashless @n natVal'
+theNatVal' = proxyHashless @_ @n natVal'
-- | @'theSameNat' = 'sameNat' 'Proxy' 'Proxy'@
--
@@ -309,25 +344,25 @@
--
-- /Since: 0.2/
theSomeNat :: forall n. KnownNat n => SomeNat
-theSomeNat = proxyless @n SomeNat
+theSomeNat = proxyless @_ @n SomeNat
-- | @'theSomeSymbol' = 'proxyless' 'SomeSymbol'@
--
-- /Since: 0.2/
theSomeSymbol :: forall n. KnownSymbol n => SomeSymbol
-theSomeSymbol = proxyless @n SomeSymbol
+theSomeSymbol = proxyless @_ @n SomeSymbol
-- | @'theSymbolVal' = 'proxyless' 'symbolVal'@
--
-- /Since: 0.2/
theSymbolVal :: forall n. KnownSymbol n => String
-theSymbolVal = proxyless @n symbolVal
+theSymbolVal = proxyless @_ @n symbolVal
-- | @`theSymbolVal'` = 'proxyHashless' `symbolVal'`@
--
-- /Since: 0.2/
theSymbolVal' :: forall n. KnownSymbol n => String
-theSymbolVal' = proxyHashless @n symbolVal'
+theSymbolVal' = proxyHashless @_ @n symbolVal'
-------------------------------------------------------------------------------
-- Prelude