[m-dev.] bug with tests/hard_coded/expand.m
Simon TAYLOR
stayl at students.cs.mu.oz.au
Fri Feb 28 09:47:24 AEDT 1997
>
> The Mercury compiler is failing the test in tests/hard_coded/expand.m;
> it reports the following:
>
> Software error: specialized argument not of higher-order type
>
> Could someone please volunteer to investigate this one?
>
I think that's mine.
A closure is being passed in as an argument of type T, rather than type
pred(...), so type_is_higher_order fails when higher_order.m tries
to create the higher-order term inside the specialised version. The fix is
to not attempt to specialise in these cases. There cannot possibly be a call
to the closure within the specialised version anyway, since the old version
didn't know that it was a closure.
Simon.
More information about the developers
mailing list