Archived
This forum has been archived. Please start a new discussion on GitHub.
Issue with Icecs 3.3.0
Hello,
It seems that Dictionaries are not well generated with ice 3.3.0.
See what I got :
"v__" is not declared and I have the same behaviour with all my dictionaries. I thik "k__" should replace it.
See another example :
This time, another variable "v__" is declared and used after...
It seems that Dictionaries are not well generated with ice 3.3.0.
See what I got :
public static _System.Collections.Generic.Dictionary<castor.UnderlyingCrossCorrelationKey, castor.CorrelationStress> read(IceInternal.BasicStream is__)
{
int sz__ = is__.readSize();
_System.Collections.Generic.Dictionary<castor.UnderlyingCrossCorrelationKey, castor.CorrelationStress> r__ = new _System.Collections.Generic.Dictionary<castor.UnderlyingCrossCorrelationKey, castor.CorrelationStress>();
for(int i__ = 0; i__ < sz__; ++i__)
{
castor.UnderlyingCrossCorrelationKey k__;
v__ = new castor.UnderlyingCrossCorrelationKey();
k__.read__(is__);
is__.readObject(new Patcher__("::castor::CorrelationStress", r__, k__));
}
return r__;
}
"v__" is not declared and I have the same behaviour with all my dictionaries. I thik "k__" should replace it.
See another example :
public static _System.Collections.Generic.Dictionary<castor.CrossKey, double> read(IceInternal.BasicStream is__)
{
int sz__ = is__.readSize();
_System.Collections.Generic.Dictionary<castor.CrossKey, double> r__ = new _System.Collections.Generic.Dictionary<castor.CrossKey, double>();
for(int i__ = 0; i__ < sz__; ++i__)
{
castor.CrossKey k__;
v__ = new castor.CrossKey();
k__.read__(is__);
double v__;
v__ = is__.readDouble();
r__[k__] = v__;
}
return r__;
}
This time, another variable "v__" is declared and used after...
0
Comments
-
Hi,
Could you post the slice that was used to generate these functions?
Dwayne0 -
Here's an example :
module Test { struct Key { long Key1; long Key2; }; dictionary<Key, double> Dict; }; // module Test
It gives :public static _System.Collections.Generic.Dictionary<Test.Key, double> read(IceInternal.BasicStream is__) { int sz__ = is__.readSize(); _System.Collections.Generic.Dictionary<Test.Key, double> r__ = new _System.Collections.Generic.Dictionary<Test.Key, double>(); for(int i__ = 0; i__ < sz__; ++i__) { Test.Key k__; v__ = new Test.Key(); k__.read__(is__); double v__; v__ = is__.readDouble(); r__[k__] = v__; } return r__; }0 -
Ok thank you !0