[m-rev.] RTTI bug & type specialization
Fergus Henderson
fjh at cs.mu.OZ.AU
Wed Jan 21 19:50:06 AEDT 2004
On 19-Dec-2003, Simon Taylor <stayl at cs.mu.OZ.AU> wrote:
> On 19-Dec-2003, Fergus Henderson <fjh at cs.mu.OZ.AU> wrote:
> > Work around an RTTI bug which was causing problems for accurate gc.
> >
> > compiler/handle_options.m:
> > Disable type specialization, since this can create type class
> > constraints on compound non-ground types, which the current
> > RTTI system can't handle.
>
> I'm not sure exactly what the problem is. Type specialization
> should only consider a typeclass-info to provide a type-info for
> a type variable if that variable occurs at the top level in the
> class constraint (see higher_order.arg_type_contains_type_info_for_tvar).
I'm not sure exactly what the problem is either. And I don't recall all
of the details exactly anymore. But it did occur. Type specialization
was specializing some of the code in sparse_bitset.m in the Mercury
standard library which had explicit `pragma type_spec' declarations.
It was specializing some type variable T, which was constrained by an
enum(T) constraint, with the specialization "T=var(_)". There may also have
been a lambda procedure involved; maybe that had something do with it.
--
Fergus Henderson <fjh at cs.mu.oz.au> | "I have always known that the pursuit
The University of Melbourne | of excellence is a lethal habit"
WWW: <http://www.cs.mu.oz.au/~fjh> | -- the last words of T. S. Garp.
--------------------------------------------------------------------------
mercury-reviews mailing list
post: mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------
More information about the reviews
mailing list