[m-users.] Why can't `det` be used where `multi` is expected.

Julien Fischer jfischer at opturion.com
Tue Aug 6 11:10:20 AEST 2019


On Mon, 5 Aug 2019, Philip White wrote:

> Quoting Julian Fondren (2019-08-05 01:46:30)
>> On 2019-08-04 23:02, Philip White wrote:
>> mds.m:022:   in argument 1 of call to predicate 
>> `getopt.process_options'/4:
>> mds.m:022:   mode error: variable `OptionOps' has instantiatedness
>> mds.m:022:     unique(
>> mds.m:022:       option_ops_multi(
>> mds.m:022:         /* unique */ (pred(in, out) is semidet),
>> mds.m:022:         /* unique */ (pred(in, out) is semidet),
>> mds.m:022:         /* unique */ (pred(out, out) is det)
>> mds.m:022:       )
>> mds.m:022:     ),
>
> Wow, the formatting really helps a lot; I'll make sure to reformat
> errors in the future. Maybe I'm getting errors wrong, but for me,
> mds.err has both the expected and actual instantiatedness one the same
> one line (well, multiple lines due to line wrapping). Errors don't get
> logged by default for me, so I've been passing the -E flag.
>
> Is there a way to have errors get pretty-printed?

They *should* be formatted by default; you'll have to provide us with a
bit more information.

Julien.


More information about the users mailing list