From: Stephen W. <sw...@sw...> - 2004-04-12 21:55:15
|
> Alice also rejects it, with a halfway decent error message: > > 1.10-12.4: module expression does not match signature: > val f : '1 option -> '1 option > does not match > val f : 'a option -> 'a option > because > '1 > is incompatible with > '_a > > Actually, I fixed this only a couple of months ago, using some variable > level hack. Somehow I forgot to double-check Hamlet on this occasion. I > doubt that I can use the same hack there. I ended up patching MLton using the same code that checks if explicit type variables in val decs can be generalized. The error message looks like Error: z.sml 6.4: variable type in structure disagrees with signature variable: f unable to generalize: 'a signature: 'a option -> 'a option |