From ed69d69347779bee1771918327c8fedd2d5cd2a9 Mon Sep 17 00:00:00 2001 From: Dan Burton Date: Fri, 6 Sep 2019 13:04:21 -0400 Subject: [PATCH] Add new CPP branch for template-haskell >= 2.15 --- yesod-core/src/Yesod/Routes/TH/RenderRoute.hs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/yesod-core/src/Yesod/Routes/TH/RenderRoute.hs b/yesod-core/src/Yesod/Routes/TH/RenderRoute.hs index e02ff0b4..64246945 100644 --- a/yesod-core/src/Yesod/Routes/TH/RenderRoute.hs +++ b/yesod-core/src/Yesod/Routes/TH/RenderRoute.hs @@ -141,7 +141,10 @@ mkRenderRouteInstance :: Cxt -> Type -> [ResourceTree Type] -> Q [Dec] mkRenderRouteInstance cxt typ ress = do cls <- mkRenderRouteClauses ress (cons, decs) <- mkRouteCons ress -#if MIN_VERSION_template_haskell(2,12,0) +#if MIN_VERSION_template_haskell(2,15,0) + did <- DataInstD [] Nothing (AppT (ConT ''Route) typ) Nothing cons <$> fmap (pure . DerivClause Nothing) (mapM conT (clazzes False)) + let sds = fmap (\t -> StandaloneDerivD Nothing cxt $ ConT t `AppT` ( ConT ''Route `AppT` typ)) (clazzes True) +#elif MIN_VERSION_template_haskell(2,12,0) did <- DataInstD [] ''Route [typ] Nothing cons <$> fmap (pure . DerivClause Nothing) (mapM conT (clazzes False)) let sds = fmap (\t -> StandaloneDerivD Nothing cxt $ ConT t `AppT` ( ConT ''Route `AppT` typ)) (clazzes True) #else