summaryrefslogtreecommitdiff
path: root/testsuite/tests/typecheck/should_fail/tcfail046.hs
blob: 67225acde0d867c55b2a9159b136ffd0c72f5813 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
-- !! function types in deriving Eq things
-- From a bug report by Dave Harrison <D.A.Harrison@newcastle.ac.uk>

module ShouldFail where


type    Process a = Pid -> Time -> Message a -> ( MessList a,
			     		   	  Continuation a)

data    Continuation a = Do (Process a) deriving Eq


type 	ProcList a = [ (Pid, Status, Process a) ]
data 	Status     = Active | Passive | Busy Integer | Terminated
		     deriving Eq


data Message a = Create (Process a) | Created Pid   | Activate Pid  | 
	      	 Passivate Pid      | Terminate Pid | Wait Pid Time | 
		 Query Pid a        | Data Pid a    | Event         |
	      	 Output Pid String
               deriving Eq

type 	MessList a = [ Message a ]

type	Pid  = Integer
type 	Time = Integer