diff --git a/ChangeLog b/ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 Changes in 0.3.1.0
 
+  * Fix build for GHC 8.0
+
+
+Changes in 0.3.1.0
+
   * replicateF added
 
   * type signature of zipMonoF generalized
diff --git a/Data/Vector/HFixed/Class.hs b/Data/Vector/HFixed/Class.hs
--- a/Data/Vector/HFixed/Class.hs
+++ b/Data/Vector/HFixed/Class.hs
@@ -1,19 +1,20 @@
 {-# LANGUAGE CPP                   #-}
-{-# LANGUAGE GADTs                 #-}
-{-# LANGUAGE MultiParamTypeClasses #-}
+{-# LANGUAGE ConstraintKinds       #-}
+{-# LANGUAGE DataKinds             #-}
+{-# LANGUAGE DefaultSignatures     #-}
+{-# LANGUAGE ExplicitNamespaces    #-}
 {-# LANGUAGE FlexibleContexts      #-}
 {-# LANGUAGE FlexibleInstances     #-}
-{-# LANGUAGE TypeFamilies          #-}
-{-# LANGUAGE DataKinds             #-}
+{-# LANGUAGE GADTs                 #-}
+{-# LANGUAGE InstanceSigs          #-}
 {-# LANGUAGE KindSignatures        #-}
-{-# LANGUAGE TypeOperators         #-}
-{-# LANGUAGE ScopedTypeVariables   #-}
-{-# LANGUAGE DefaultSignatures     #-}
-{-# LANGUAGE UndecidableInstances  #-}
+{-# LANGUAGE MultiParamTypeClasses #-}
 {-# LANGUAGE PolyKinds             #-}
 {-# LANGUAGE RankNTypes            #-}
-{-# LANGUAGE ConstraintKinds       #-}
-{-# LANGUAGE InstanceSigs #-}
+{-# LANGUAGE ScopedTypeVariables   #-}
+{-# LANGUAGE TypeFamilies          #-}
+{-# LANGUAGE TypeOperators         #-}
+{-# LANGUAGE UndecidableInstances  #-}
 module Data.Vector.HFixed.Class (
     -- * Types and type classes
     -- ** Peano numbers
@@ -33,7 +34,7 @@
   , tfunToFun
     -- ** Type functions
   , Proxy(..)
-  , (++)()
+  , type (++)()
   , Len
   , Wrap
   , HomList
@@ -298,7 +299,7 @@
   type Elems v = GElems (Rep v)
   -- | Function for constructing vector
   construct :: Fun (Elems v) v
-  default construct :: (Generic v, GHVector (Rep v), GElems (Rep v) ~ Elems v, Functor (Fun (Elems v)))
+  default construct :: (Generic v, GHVector (Rep v), GElems (Rep v) ~ Elems v)
                     => Fun (Elems v) v
   construct = fmap to gconstruct
   -- | Function for deconstruction of vector. It applies vector's
diff --git a/Data/Vector/HFixed/TypeFuns.hs b/Data/Vector/HFixed/TypeFuns.hs
--- a/Data/Vector/HFixed/TypeFuns.hs
+++ b/Data/Vector/HFixed/TypeFuns.hs
@@ -1,8 +1,9 @@
-{-# LANGUAGE CPP           #-}
-{-# LANGUAGE TypeOperators #-}
-{-# LANGUAGE TypeFamilies  #-}
-{-# LANGUAGE DataKinds     #-}
-{-# LANGUAGE PolyKinds     #-}
+{-# LANGUAGE CPP                #-}
+{-# LANGUAGE DataKinds          #-}
+{-# LANGUAGE ExplicitNamespaces #-}
+{-# LANGUAGE PolyKinds          #-}
+{-# LANGUAGE TypeFamilies       #-}
+{-# LANGUAGE TypeOperators      #-}
 -- | Type functions
 module Data.Vector.HFixed.TypeFuns (
     -- * Type proxy
@@ -11,7 +12,7 @@
   , proxy
   , unproxy
     -- * Type functions
-  , (++)()
+  , type (++)()
   , Len
   , Head
   , HomList
diff --git a/fixed-vector-hetero.cabal b/fixed-vector-hetero.cabal
--- a/fixed-vector-hetero.cabal
+++ b/fixed-vector-hetero.cabal
@@ -1,5 +1,5 @@
 Name:           fixed-vector-hetero
-Version:        0.3.1.0
+Version:        0.3.1.1
 Synopsis:       Generic heterogeneous vectors
 Description:
   Generic heterogeneous vectors
@@ -27,7 +27,7 @@
   -- tuples
   Ghc-options:          -Wall -fcontext-stack=50
   Build-Depends:
-    base          >=4.6 && <5,
+    base          >=4.7 && <5,
     deepseq,
     transformers,
     ghc-prim,
