diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -27,11 +27,26 @@
 stack build --fast
 ```
 
+### Dump out Template Haskell splices
+
+```
+stack clean && stack build --ghc-options='-ddump-splices -ddump-to-file'
+find . -name '*.dump-splices'
+```
+
 ### Test
 
 ```
 stack test
 ```
+
+### Publish new version
+
+* Bump version number in [`aws-easy.cabal`](aws-easy.cabal)
+* Commit change
+* Create a Git tag, e.g. `git tag -a v0.1.0.3 -m v0.1.0.3`
+* Push to GitHub, e.g. `git push && git push --tags`
+* Publish using `stack upload .`
 
 ## Licence
 
diff --git a/aws-easy.cabal b/aws-easy.cabal
--- a/aws-easy.cabal
+++ b/aws-easy.cabal
@@ -1,5 +1,5 @@
 name:                                       aws-easy
-version:                                    0.1.0.2
+version:                                    0.1.0.3
 synopsis:                                   Helper function and types for working with amazonka
 description:                                This package provides assorted functions and some Template Haskell to simplify working the @amazonka@ family of packages for interacting with Amazon Web Services.
 homepage:                                   https://github.com/rcook/aws-easy#readme
@@ -7,7 +7,7 @@
 license-file:                               LICENSE
 author:                                     Richard Cook
 maintainer:                                 rcook@rcook.org
-copyright:                                  2018 Richard Cook
+copyright:                                  (C) 2017-2021 Richard Cook
 category:                                   Network
 build-type:                                 Simple
 cabal-version:                              >= 1.10
diff --git a/lib/Network/AWS/Easy/TH.hs b/lib/Network/AWS/Easy/TH.hs
--- a/lib/Network/AWS/Easy/TH.hs
+++ b/lib/Network/AWS/Easy/TH.hs
@@ -10,6 +10,7 @@
 This module provides Template Haskell helper functions for generating type-safe service/session wrappers for @amazonka@.
 -}
 
+{-# LANGUAGE CPP #-}
 {-# LANGUAGE TemplateHaskell #-}
 
 module Network.AWS.Easy.TH
@@ -77,7 +78,7 @@
                         Nothing
                         []
                         (AppT (ConT ''ServiceClass) (ConT serviceN))
-                        [ TySynInstD ''TypedSession (TySynEqn [ConT serviceN] (ConT sessionN))
+                        [ mkTySynInstD serviceN sessionN
                         , FunD 'rawService [Clause [ConP serviceN [VarP serviceVarN]] (NormalB (VarE serviceVarN)) []]
                         , ValD (VarP 'wrappedSession) (NormalB (ConE $ mkName sessionTypeName)) []
                         ]
@@ -97,3 +98,10 @@
         , sig
         , var
         ]
+
+mkTySynInstD :: Name -> Name -> Dec
+#if __GLASGOW_HASKELL__ >= 810
+mkTySynInstD serviceN sessionN = TySynInstD (TySynEqn Nothing (AppT (ConT ''TypedSession) (ConT serviceN)) (ConT sessionN))
+#else
+mkTySynInstD serviceN sessionN = TySynInstD ''TypedSession (TySynEqn [ConT serviceN] (ConT sessionN))
+#endif
