Skip to content

CIF simulator crashes on assignment to dictionary with non-int key

The following model:

automaton a:
    disc dict(string:string) x;
    location:
        initial;
        edge do x["a"] := "b";
end

crashes during simulation with the CIF simulator.

The problem is that AssignmentCodeGenerator contains for dictionary projection:

c.add("int key%d = %s;", i, gencodeExpr(proj.getIndex(), ctxt, state));

This hardcoded int type should be the key type.