[m-rev.] for preliminary review: bug 493 & 532 alterative fix

Zoltan Somogyi zoltan.somogyi at runbox.com
Fri May 14 16:59:44 AEST 2021


2021-05-14 16:40 GMT+10:00 "Peter Wang" <novalazy at gmail.com>:
> (row 4 and row 5 are identical)

That is not supposed to happen. Unfortunately, I know that
two ground terms that have identical representations nevertheless
do not share a row because they are of different types, and the
code that does lookups used to use the type as part of the key.
However, I thought I fixed that years ago.

> Anyway, common.m is too eager to replace V = (integer) with V = Base.

I thought the check on line 462 in common.m would prevent that.
It should be moved earlier in the test chain, but it should work.
Are you saying it doesn't? And if so, do you know why?

> Your const static db approach would work better.

I think so, but only for when targeting C (either LLDS or MLDS).
The const struct db is turned off for user terms when targeting
Java or C#, though it *can* store RTTI terms when targeting Java.
Lifting that restriction is work for someone who knows these languages
better than me.

I will see what I can do along these lines, for C only.

Zoltan.


More information about the reviews mailing list