[m-rev.] for review: fix bug #90

Julien Fischer juliensf at csse.unimelb.edu.au
Thu Jun 11 23:50:12 AEST 2009


On Thu, 4 Jun 2009, Peter Wang wrote:

> Branches: main
>
> Fix bug #90.  The compiler would abort on the given program when performing
> higher order/type specialisation due to "inconsistent type_infos".
>
> compiler/higher_order.m:
>        In interpret_typeclass_info_manipulator, when assigning to a variable
>        TypeInfoVar the extracted field of a type_info TypeInfoArg, duplicate
>        the TypeInfoArg rtti_var_info for TypeInfoVar.
>
>        On the test program the rtti_var_info for TypeInfoVar already existed
>        but was for the procedure *before* specialisation, which is what
>        lead to the inconsistent type_infos message.
>
> compiler/hlds_rtti.m:
>        Add version of rtti_var_info_duplicate which doesn't abort if the
>        rtti_varmap already has an entry for the target variable.
>
> tests/valid/Mercury.options:
> tests/valid/Mmakefile:
> tests/valid/tci_spec_varmap.m:
>        Add test case.

That's fine.

Julien.
--------------------------------------------------------------------------
mercury-reviews mailing list
Post messages to:       mercury-reviews at csse.unimelb.edu.au
Administrative Queries: owner-mercury-reviews at csse.unimelb.edu.au
Subscriptions:          mercury-reviews-request at csse.unimelb.edu.au
--------------------------------------------------------------------------



More information about the reviews mailing list