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 - [email protected]
+
+- 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 <[email protected]>
 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


Reply via email to