summaryrefslogtreecommitdiff
path: root/testsuite/tests/roles/should_compile/T8958.stderr
diff options
context:
space:
mode:
authorRichard Eisenberg <eir@cis.upenn.edu>2014-04-05 13:56:00 -0400
committerRichard Eisenberg <eir@cis.upenn.edu>2014-04-05 17:25:45 -0400
commitd468cd376ffc02cf9f4755275a316be914c482be (patch)
tree3ae0b3da074be5aab808d13658bb3b0d52bde3ae /testsuite/tests/roles/should_compile/T8958.stderr
parente81d110e7ddd381e53c3af4fbd261d29edd16725 (diff)
downloadhaskell-d468cd376ffc02cf9f4755275a316be914c482be.tar.gz
Fix #8958.
We now do role inference on stupid datatype contexts, allowing a lightweight role annotation syntax.
Diffstat (limited to 'testsuite/tests/roles/should_compile/T8958.stderr')
-rw-r--r--testsuite/tests/roles/should_compile/T8958.stderr49
1 files changed, 49 insertions, 0 deletions
diff --git a/testsuite/tests/roles/should_compile/T8958.stderr b/testsuite/tests/roles/should_compile/T8958.stderr
new file mode 100644
index 0000000000..e40865fc64
--- /dev/null
+++ b/testsuite/tests/roles/should_compile/T8958.stderr
@@ -0,0 +1,49 @@
+
+T8958.hs:1:31: Warning:
+ -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
+TYPE SIGNATURES
+TYPE CONSTRUCTORS
+ Map :: * -> * -> *
+ newtype (Nominal k, Representational v) => Map k v
+ No C type associated
+ Roles: [nominal, representational]
+ RecFlag NonRecursive, Promotable
+ = MkMap :: [(k, v)] -> Map k v Stricts: _
+ FamilyInstance: none
+ Nominal :: * -> Constraint
+ class Nominal a
+ Roles: [nominal]
+ RecFlag NonRecursive
+ Representational :: * -> Constraint
+ class Representational a
+ Roles: [representational]
+ RecFlag NonRecursive
+COERCION AXIOMS
+ axiom T8958.NTCo:Map :: Map k v = [(k, v)]
+INSTANCES
+ instance [incoherent] Representational a
+ -- Defined at T8958.hs:10:10
+ instance [incoherent] Nominal a -- Defined at T8958.hs:7:10
+Dependent modules: []
+Dependent packages: [base, ghc-prim, integer-gmp]
+
+==================== Typechecker ====================
+AbsBinds [a] []
+ {Exports: [T8958.$fRepresentationala <= $dRepresentational_aJ6
+ <>]
+ Exported types: T8958.$fRepresentationala [InlPrag=[ALWAYS] CONLIKE]
+ :: forall a. Representational a
+ [LclIdX[DFunId],
+ Str=DmdType,
+ Unf=DFun: \ (@ a) -> T8958.D:Representational TYPE a]
+ Binds: $dRepresentational_aJ6 = T8958.D:Representational}
+AbsBinds [a] []
+ {Exports: [T8958.$fNominala <= $dNominal_aJ7
+ <>]
+ Exported types: T8958.$fNominala [InlPrag=[ALWAYS] CONLIKE]
+ :: forall a. Nominal a
+ [LclIdX[DFunId],
+ Str=DmdType,
+ Unf=DFun: \ (@ a) -> T8958.D:Nominal TYPE a]
+ Binds: $dNominal_aJ7 = T8958.D:Nominal}
+