Indeed, after some more investigation (thanks to Francois Berenger), it seems that in 4.03 we can no longer just use a bare .mli file with the interface to some external code, as it was possible before.
Now, we need to provide also an .ml file, in any case.
The fix in parmap is underway, and it was a simple matter of moving setcore.mli to
setcore.ml, without touching anything else.
For the curious, the content of
setcore.ml (ex setcore.mli) is the following:
(* uses the native affinity interface to
declare that the current process should be
attached to core number n *)
external numcores: unit -> int = "numcores"
external setcore: int -> unit = "setcore"
If you have similar patterns in your projects, take due notice :-)
--
Roberto