which does not conform to the Definition of SML'97. In particular, the code should simplify to
val rec f = fn vid1 => fn vid2 => case (vid1, vid2) of (x, x) => x;
which is in turn rejected by MosML with the following error message:
! Toplevel input:
! val rec f = fn vid1 => fn vid2 => case (vid1, vid2) of (x, x) => x;
! ^
! Illegal rebinding of x: the same value identifier is bound twice in a pattern
MosML elaborates the following code:
as
which does not conform to the Definition of SML'97. In particular, the code should simplify to
which is in turn rejected by MosML with the following error message:
(Tested with version 2.10 on Arch Linux)