diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,8 @@
+0.4.0.1 (2018-10-01)
+====================
+
+- containers-0.6 compatibility.
+
 0.4 (2018-03-18)
 ================
 
diff --git a/ixset-typed.cabal b/ixset-typed.cabal
--- a/ixset-typed.cabal
+++ b/ixset-typed.cabal
@@ -1,5 +1,5 @@
 name:                ixset-typed
-version:             0.4
+version:             0.4.0.1
 synopsis:            Efficient relational queries on Haskell sets.
 description:
     This Haskell package provides a data structure of sets that are indexed
@@ -26,7 +26,7 @@
 build-type:          Simple
 cabal-version:       >= 1.10
 extra-source-files:  CHANGELOG.md
-tested-with:         GHC == 8.0.1, GHC == 8.0.2, GHC == 8.2.2, GHC == 8.4.1
+tested-with:         GHC == 8.0.2, GHC == 8.2.2, GHC == 8.4.3, GHC == 8.6.1
 
 source-repository head
   type:              git
@@ -38,7 +38,7 @@
                      deepseq          >= 1.3 && < 2,
                      safecopy         >= 0.8 && < 1,
                      syb              >= 0.4 && < 1,
-                     template-haskell >= 2.8 && < 2.14
+                     template-haskell >= 2.8 && < 2.15
 
   hs-source-dirs:    src
   exposed-modules:
diff --git a/src/Data/IxSet/Typed/Ix.hs b/src/Data/IxSet/Typed/Ix.hs
--- a/src/Data/IxSet/Typed/Ix.hs
+++ b/src/Data/IxSet/Typed/Ix.hs
@@ -27,6 +27,7 @@
 import qualified Data.List  as List
 import           Data.Map   (Map)
 import qualified Data.Map   as Map
+import qualified Data.Map.Strict as Map.Strict
 import           Data.Set   (Set)
 import qualified Data.Set   as Set
 
@@ -80,7 +81,7 @@
 -- 'Map', then a new 'Set' is added transparently.
 insert :: (Ord a, Ord k)
        => k -> a -> Map k (Set a) -> Map k (Set a)
-insert k v index = Map.insertWith' Set.union k (Set.singleton v) index
+insert k v index = Map.Strict.insertWith Set.union k (Set.singleton v) index
 
 -- | Helper function to 'insert' a list of elements into a set.
 insertList :: (Ord a, Ord k)
