David Kågedal wrote:
Raphael Collet <[EMAIL PROTECTED]> writes:
David Kågedal wrote:
Raphael Collet <[EMAIL PROTECTED]> writes:
Dear users,
We are proud to announce the new release of Mozart, namely
Mozart 1.4.0
The main change with Mozart 1.3.2 is the new implementation of the
distribution layer, a per-entity configurable distribution behavior, and
a complete redesign of the Fault module. This release also contain a
bunch of bug fixes.
The dss library casts pointers to int in many places
pos += sprintf((buf+pos),"%d|%x ", a_fields[i].a_ft,
reinterpret_cast<int>(a_fields[i].a_arg));
int i = reinterpret_cast<int>(m_popVal());
This is a horrible thing to do, and gcc (at least version 4.1.2 which
I happened to use) rightfully refuses to compile such code.
What was the compiler that anyone managed to compile this with?
I agree with you, it's horrible. This is the kind of code heritage we
have to work with. I personally use gcc 4.0.1 (darwin) for compiling.
But I thought this was code added for this release, so it doesn't
really count as "heritage". Someone recently acceped this code into
the code base.
Indeed. We used the DSS library to reimplement the distribution support
in the virtual machine. But we have not implemented the DSS ourselves,
even if we maintain it. The type cast you mention can be avoided by
using a union type. You just gave me a good motivation for cleaning up
that bit of code ;-)
I will notify you once the fix is available.
Cheers,
raph
_________________________________________________________________________________
mozart-users mailing list
[email protected]
http://www.mozart-oz.org/mailman/listinfo/mozart-users