Matthew Fluet wrote:
There appears to be a bug with datatype replication when the
to-be-replicated type is brought into scope by an open.
[fl...@shadow tmp]$ poly
Poly/ML 5.3 Release candidate 1
structure S1 = struct open Date datatype t = datatype weekday end;
Exception- InternalError: codeVal - Formal raised while compiling
Exception- InternalError: codeVal - Formal raised while compiling
Thanks. Now fixed.
Also, the Definition allows binding non-datatypes with datatype
replication, so the following should be accepted:
[fl...@shadow tmp]$ poly
Poly/ML 5.3 Release candidate 1
structure S2 = struct datatype t = datatype char end;
Error-char is not a datatype Found near datatype t = datatype char
Static Errors
I think you're right and I've removed this check so it's now allowed.
The Definition seems to allow an arbitrary type structure to be
replicated so the following is also legal:
type 'a t = 'a * 'a;
datatype s = datatype t;
David
_______________________________________________
polyml mailing list
[email protected]
http://lists.inf.ed.ac.uk/mailman/listinfo/polyml