Skip to content

An output argument that is a data value update results in the wrong known type #98

@seidewitz

Description

@seidewitz
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.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions