diff options
author | Twan van Laarhoven <twanvl@gmail.com> | 2013-09-11 15:32:33 +0200 |
---|---|---|
committer | Herbert Valerio Riedel <hvr@gnu.org> | 2013-09-18 09:53:18 +0200 |
commit | bd42c9dfd1c9ce19672e1d63871a237c268e0212 (patch) | |
tree | 0d9e6e3fdedae39176751cc62c1458344a0cf781 /compiler/vectorise | |
parent | b6bc3263d0099e79b437ac5f3c053452c608c710 (diff) | |
download | haskell-bd42c9dfd1c9ce19672e1d63871a237c268e0212.tar.gz |
Implement checkable "minimal complete definitions" (#7633)
This commit adds a `{-# MINIMAL #-}` pragma, which defines the possible
minimal complete definitions for a class. The body of the pragma is a
boolean formula of names.
The old warning for missing methods is replaced with this new one.
Note: The interface file format is changed to store the minimal complete
definition.
Authored-by: Twan van Laarhoven <twanvl@gmail.com>
Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
Diffstat (limited to 'compiler/vectorise')
-rw-r--r-- | compiler/vectorise/Vectorise/Type/TyConDecl.hs | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/compiler/vectorise/Vectorise/Type/TyConDecl.hs b/compiler/vectorise/Vectorise/Type/TyConDecl.hs index 935ea32c69..29d54a074b 100644 --- a/compiler/vectorise/Vectorise/Type/TyConDecl.hs +++ b/compiler/vectorise/Vectorise/Type/TyConDecl.hs @@ -67,6 +67,7 @@ vectTyConDecl tycon name' (snd . classTvsFds $ cls) -- keep the original functional dependencies [] -- no associated types (for the moment) methods' -- method info + (defaultClassMinimalDef methods') -- default minimal complete definition rec_flag -- whether recursive -- the original dictionary constructor must map to the vectorised one |