Comments (2)
Sorry it's taken a little while to get to this, especially as it's a regression. My computer suddenly died about the time you reported this error, and I'm only really now back up and running properly. A minimal example, avoiding Lamdu, is:
import Data.Derive.Monoid
import Data.DeriveTH
import Data.Monoid
data Foo a b = Foo (a b)
data Scope name m = Scope
{ _scopeLocals :: [Foo m name]
, _scopeGlobals :: [Foo m name]
}
derive makeMonoid ''Scope
from derive.
The issue was that in GHC 7.8 and below, the only type variables that got kind annotations were those which weren't kind *
, and due to accidental luck, I stripped those from contexts. In GHC 7.10 all variables got kind annotations, so I stripped them all on all versions, and that broke the example above as m
is kind * -> *
. I fixed that by slightly more intelligent handling of kind annotations, treating no annotation and an annotation of *
as equivalent. I've just released derive-2.5.20 with the fix.
from derive.
Related Issues (20)
- Add Aeson ToJSON/FromJSON
- Enum instances derived with TH crash with "Missing field in record construction
- Unnecessary context when deriving Monoid
- breakage with template-haskell-2.11 (in ghc-8) HOT 15
- to decrease build time, sources should be in separate src/ folder HOT 2
- "derive makeArbitrary" error w/ strict types (8.0.1) HOT 7
- Could not convert Dec to Decl HOT 2
- Convert to haskell-src-exts-1.18 HOT 20
- Errors while using C and GHC preprocessors HOT 1
- TH derivation doesn't work when the type name is qualified HOT 1
- Fails to build under newest derive HOT 3
- Build failure with GHC 8.2 HOT 3
- Example in Data.Derive.UniplateDirect fails HOT 8
- Parse Fails For pattern aliases (MINOR: see issue comments) HOT 3
- Could not convert Type to Kind () ConT GHC.Types.Nat HOT 1
- Could not convert Dec to Decl () HOT 2
- Hackage distribution lacks TestInstances HOT 1
- Could not convert Type to Type () HOT 1
- Upgrade to haskell-src-exts-1.20 HOT 1
- support haskell-src-exts-1.21+? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from derive.