There was a duplicate of something.
This may occur when using and
to declare many things at once.
val x = 3
and x = 4
(** ^ duplicate value: `x` *)
It may also occur when binding the same name more than once in a pattern.
fun add (x, x) = x + x
(** ^ duplicate value: `x` *)
Use different names, or avoid and
. (The latter induces shadowing.)
val x = 3
val x = 4