[project @ 1997-03-14 07:52:06 by simonpj]
[ghc-hetmet.git] / ghc / compiler / NOTES
1 * CHECK that the things seek_liftable found are done in Core
2
3 * CHECK that there aren't too many indirections in STG
4         local = ...
5         global = local Int
6
7 Interface files
8 ~~~~~~~~~~~~~~~
9 * Don't need to pin a kind on the type variable in a interface class decl,
10   because it'll be correctly re-inferred when we read it in.
11
12 * The double semicolon at the end of an interface-file signature is so that
13   the lexer can run through the pragmas very fast when -O isn't being used.
14
15 * In export lists, T!(A,B) says that constructors A and B are exported, 
16   but not the type T.  Similarly for classes.
17
18 ===========================================================================
19
20                 Nofib failures
21                 ~~~~~~~~~~~~~~
22
23 * spectral/hartel/wave4main, wang, spectral/simple, real/symalg
24
25 Bus error
26
27 * real/anna
28
29 expected stdout not matched by reality
30 *** big.sum.out Thu Aug 22 14:37:05 1996
31 --- /tmp/runtest21900.1 Mon Jan 20 17:57:49 1997
32 ***************
33 *** 1 ****
34 ! 12796    49
35 --- 1 ----
36 ! 63325 97
37
38
39 * /real/compress2
40
41 expected stderr not matched by reality
42 Warning: missing newline at end of file /tmp/runtest14691.2
43 *** /tmp/no_stderr14691 Thu Jan 23 14:33:29 1997
44 --- /tmp/runtest14691.2 Thu Jan 23 14:33:29 1997
45 ***************
46 *** 0 ****
47 --- 1,2 ----
48
49 + Fail: Prelude.Enum.Char.toEnum:out of range
50
51
52 * real/ebnf2ps
53  
54 IOSupplement.hs: 43: value not in scope: getEnv
55
56         ...and...
57  
58 HappyParser.hs: 127: Couldn't match the type
59                          [HappyParser.Token'] against PrelBase.Int
60     Expected: HappyParser.HappyReduction
61     Inferred: PrelBase.Int -> HappyParser.Token' -> HappyParser.HappyState HappyParser.Token' ([HappyParser.HappyAbsSyn] -> [AbstractSyntax.Production]) -> PrelBase.Int -> PrelBase.Int -> o{-a1yN-} -> o{-a1yO-} -> [HappyParser.Token'] -> a{-a1yP-}
62     In an equation for function HappyParser.action_1:
63         HappyParser.action_1 _ = HappyParser.happyFail
64
65
66 * GHC_ONLY/bugs/andy_cherry
67
68 DataTypes.lhs: 3: Could not find valid interface file for `GenUtils'
69
70 Need "make depend"
71
72 * GHC_ONLY/bugs/lex
73
74 Pattern match fail in lex; must be producing empty or multi-valued result
75
76 Aggravated by dreadful error messages:
77
78 + Fail: In irrefutable pattern
79 + Fail: In pattern-matching
80 + Fail: In pattern-matching
81 + Fail: In pattern-matching
82 + Fail: In pattern-matching
83 + Fail: In pattern-matching
84 + Fail: In pattern-matching
85 + Fail: In pattern-matching
86 + Fail: In pattern-matching
87 + Fail: In pattern-matching
88 + Fail: In pattern-matching
89 + Fail: In pattern-matching
90 + Fail: In pattern-matching
91 + Fail: In pattern-matching
92 + Fail: In pattern-matching
93 + Fail: In pattern-matchingtoo many nested calls to `error'
94
95
96 * GHC_ONLY/bugs/jtod_circint
97
98 Main.hs: 12: No instance for: Signal.Signal (Signal.Stream Bit.Bit)
99     Main.hs: 12: at a use of an overloaded identifier: `Signal.one'
100
101 instance-decl slurping is WRONG
102
103 * GHC_ONLY/arith005
104
105 ceiling doesn't work properly
106
107 --- 1,3 ----
108 + [1, 1, 2, 3, 4, 5, 0, -2, -3, -4, 1000013, 124, 101, 103, 1, 0, 17001, 0, 1, 4]
109 + [1, 1, 2, 3, 4, 5, 0, -2, -3, -4, 1000013, 124, 101, 103, 1, 0, 17001, 0, 1, 4]
110   [0, 0, 2, 3, 4, 5, -1, -2, -3, -4, 1000012, 124, 101, 103, 1, 0, 17000, 0, 1, 4]
111 ***************
112 *** 2,5 ****
113   [0, 0, 2, 3, 4, 5, -1, -2, -3, -4, 1000012, 124, 101, 103, 1, 0, 17000, 0, 1, 4]
114 - [0, 0, 2, 3, 4, 5, -1, -2, -3, -4, 1000012, 124, 101, 103, 1, 0, 17000, 0, 1, 4]
115 - [0, 0, 2, 3, 4, 5, -1, -2, -3, -4, 1000012, 124, 101, 103, 1, 0, 17000, 0, 1, 4]
116   [0, 0, 1, 2, 3, 4, -1, -3, -4, -5, 1000012, 123, 100, 102, 0, -1, 17000, -1, 0, 3]
117 --- 4,5 ----
118
119
120 * GHC_ONLY/bugs/lennart_array
121
122 Wrong array semantics (but who cares?)
123
124 * GHC_ONLY/bugs/life_space_leak
125
126 -n *** sum I got: 
127 0 0
128 -n *** sum I expected: 
129 02845  1350