Archived

This forum has been archived. Please start a new discussion on GitHub.

Patch #2 for Ice 3.1

Attached is patch #2 for Ice 3.1. It affects only Ice for C++. The patch includes patch #1, and you can apply this patch whether or not you previously installed patch #1.

You need to install this patch only if you have a class with a member that is an interface by value:
interface I
{
    void op();
};

class C
{
    I myI; // Note: I, not I*. Generates bad code.
};

Note that if you have a class with a member that is a class by value, there is no problem.
class I
{
    void op();
};

class C
{
    I myI; // Note: I, not I*. Works fine without the patch.
};

The patch is binary incompatible, so you need to recompile Ice for C++ as well as your application if you apply this patch.

To apply the patch, unzip the attached archive at the top of your Ice for C++ source distribution and rebuild.

This patch will be included in Ice 3.2. Unless you have pressing need to apply it, I suggest you wait until we release Ice 3.2.

Cheers,

Michi.