datatype D {
i : Integer;
}
activity A (out j : Integer) {
j = 1;
}
activity Test() : D {
d = new D(0);
A(d.i);
return d;
}
In the above return d; causes a typing error because, after the invocation A(d.i), d has been incorrectly assigned the type Integer (the type of the parameter j of A) as its "known type". This seems to happen only for data value updates.
In the above
return d;causes a typing error because, after the invocationA(d.i),dhas been incorrectly assigned the typeInteger(the type of the parameterjofA) as its "known type". This seems to happen only for data value updates.