diff options
Diffstat (limited to 'libraries/template-haskell')
-rw-r--r-- | libraries/template-haskell/Language/Haskell/TH/Syntax.hs | 19 | ||||
-rw-r--r-- | libraries/template-haskell/changelog.md | 3 |
2 files changed, 11 insertions, 11 deletions
diff --git a/libraries/template-haskell/Language/Haskell/TH/Syntax.hs b/libraries/template-haskell/Language/Haskell/TH/Syntax.hs index 4e21e8b841..c9bccf665f 100644 --- a/libraries/template-haskell/Language/Haskell/TH/Syntax.hs +++ b/libraries/template-haskell/Language/Haskell/TH/Syntax.hs @@ -1187,20 +1187,17 @@ unboxedTupleDataName :: Int -> Name -- | Unboxed tuple type constructor unboxedTupleTypeName :: Int -> Name -unboxedTupleDataName 0 = error "unboxedTupleDataName 0" -unboxedTupleDataName 1 = error "unboxedTupleDataName 1" -unboxedTupleDataName n = mk_unboxed_tup_name (n-1) DataName - -unboxedTupleTypeName 0 = error "unboxedTupleTypeName 0" -unboxedTupleTypeName 1 = error "unboxedTupleTypeName 1" -unboxedTupleTypeName n = mk_unboxed_tup_name (n-1) TcClsName +unboxedTupleDataName n = mk_unboxed_tup_name n DataName +unboxedTupleTypeName n = mk_unboxed_tup_name n TcClsName mk_unboxed_tup_name :: Int -> NameSpace -> Name -mk_unboxed_tup_name n_commas space - = Name occ (NameG space (mkPkgName "ghc-prim") tup_mod) +mk_unboxed_tup_name n space + = Name (mkOccName tup_occ) (NameG space (mkPkgName "ghc-prim") tup_mod) where - occ = mkOccName ("(#" ++ replicate n_commas ',' ++ "#)") - tup_mod = mkModName "GHC.Tuple" + tup_occ | n == 1 = "Unit#" -- See Note [One-tuples] in TysWiredIn + | otherwise = "(#" ++ replicate n_commas ',' ++ "#)" + n_commas = n - 1 + tup_mod = mkModName "GHC.Tuple" ----------------------------------------------------- -- Locations diff --git a/libraries/template-haskell/changelog.md b/libraries/template-haskell/changelog.md index c4b8f034cf..1f41a6a528 100644 --- a/libraries/template-haskell/changelog.md +++ b/libraries/template-haskell/changelog.md @@ -16,6 +16,9 @@ * Add support for attaching deriving strategies to `deriving` statements (#10598) + * `unboxedTupleTypeName` and `unboxedTupleDataName` now work for unboxed + 0-tuples and 1-tuples (#12977) + ## 2.11.0.0 *May 2016* * Bundled with GHC 8.0.1 |