[M3devel] What is this??? How's it possible?

Olaf Wagner wagner at elegosoft.com
Thu Mar 6 18:23:19 CET 2008


Quoting Tony Hosking <hosking at cs.purdue.edu>:

> This usually means you did not rebuild a clean set of binaries.  i.e.,
> some old binaries were lying around that made old assumptions about
> type ids.

> On Mar 6, 2008, at 10:50 AM, Dragiša Durić wrote:
>
>> ***
>> *** runtime error:
>> ***    A compile-time type is missing.
>> ***    file "../src/runtime/common/RTLinker.i3"
>> ***

Well, we'd have to admit it _is_ a little bit cryptic and may not
be very helpful and encouraging to the casual user :-)

In theory, CM3 should be able to detect such version conflicts
even at link time (using fingerprints for compiled units etc.).
I seem to remember that older M3 versions (i.e. DEC SRC M3) were
more reliable in detecting such things; but my memory may be wrong
or the environment completely different (no shared objects for example).

I'd like to better understand this kind of error: does it only show
up in connection with old libraries, only in connection with old
runtime modules (some special rules here), only when using shared
libraries and so on. Conceptually, it's a kind of version error and
should be notified as early as possible.

Then we can think of ways to (a) detect it earlier (if possible) and
(b) improve the user notification ;-)

Olaf
-- 
Olaf Wagner -- elego Software Solutions GmbH
                Gustav-Meyer-Allee 25 / Gebäude 12, 13355 Berlin, Germany
phone: +49 30 23 45 86 96  mobile: +49 177 2345 869  fax: +49 30 23 45 86 95
    http://www.elegosoft.com | Geschäftsführer: Olaf Wagner | Sitz: Berlin
Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194




More information about the M3devel mailing list