[m-dev.] RTTI question?

Fergus Henderson fjh at cs.mu.OZ.AU
Fri Feb 8 01:25:26 AEDT 2002


On 07-Feb-2002, Peter Ross <peter.ross at miscrit.be> wrote:
> I have tracked the problem down some more, but I am not sure what has
> changed to cause it to go wrong.
>
> Here is the snippet of code that causes the problem.
> 
> 	.line 0 ''
> 	ldsfld	object[]
> 		['mercury']'mercury'.'private_builtin'.'mercury_code'::'private_builtin__field_types_sample_typeclass_info_0_0'

What has changed is that I added the types `sample_typeclass_info'
and `sample_typector_info' to private_builtin.m.

> The problem is not that the name is wrong, but that the namespace is
> wrong.  Here we refer to 'private_builtin__cpp_code' instead of
> 'private_builtin'.  This incorrect namespace is being done by
> mangle_dataname_module in make_static_fieldref.  However none of this
> code has changed in a long time, so why suddenly is this not working?
> Any ideas?

I think the code there assumes that any static variables from
private_builtin.m must be hand-defined in C++.

That assumption is not correct for the `sample_*' types that I added.

-- 
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-developers mailing list
Post messages to:       mercury-developers at cs.mu.oz.au
Administrative Queries: owner-mercury-developers at cs.mu.oz.au
Subscriptions:          mercury-developers-request at cs.mu.oz.au
--------------------------------------------------------------------------



More information about the developers mailing list