OpenGEODE issueshttps://gitrepos.estec.esa.int/taste/opengeode/-/issues2023-12-22T09:19:43Zhttps://gitrepos.estec.esa.int/taste/opengeode/-/issues/15Copy-paste of procedure symbol from one OG instance to another results in mul...2023-12-22T09:19:43ZSteve DuncanCopy-paste of procedure symbol from one OG instance to another results in multiple copies of the wrong procedureSeen on OG 4.1.20
Trying to copy procedures from one diagram to another in a different OG instance causes strange behaviour whereby the wrong procedure body is copied multiple times.
e.g. trying to copy UpdateFaultState
![image](/uplo...Seen on OG 4.1.20
Trying to copy procedures from one diagram to another in a different OG instance causes strange behaviour whereby the wrong procedure body is copied multiple times.
e.g. trying to copy UpdateFaultState
![image](/uploads/78099cfbd0db88d69486b4fb1f065ee8/image.png)
Results in this output when pasted into the other diagram:
![image](/uploads/dd3fbd21352ee962c89da75167f0a9e8/image.png)https://gitrepos.estec.esa.int/taste/opengeode/-/issues/18Incorrect C code generation in test-save2024-01-29T16:42:25ZSteve DuncanIncorrect C code generation in test-saveIn \~/tool-src/opengeode/tests/testsuite/test-save using OG 4.1.23, the generated C code for GET_PARAM appears to be incorrect.
Using "make test-c" gives this output:
~~~
void _0_og_GET_PARAM()
{
asn1SccMyInteger idx = 0;
asn1Scc...In \~/tool-src/opengeode/tests/testsuite/test-save using OG 4.1.23, the generated C code for GET_PARAM appears to be incorrect.
Using "make test-c" gives this output:
~~~
void _0_og_GET_PARAM()
{
asn1SccMyInteger idx = 0;
asn1SccSeqOf tmp41;
asn1SccUint max_range_2;
asn1SccUint min_range_2;
// param := save_buffer(0) (66,25)
ctxt.param = (asn1SccBoolType) ctxt.save_buffer.arr[0];
// idx := length (save_buffer) - 1 (68,25)
idx = (asn1SccMyInteger) (ctxt.save_buffer.nCount - 1);
// save_buffer := if length(save_buffer) > 1
// then save_buffer(1, idx) else {} fi (70,25)
min_range_2 = 1;
max_range_2 = idx;
if ((ctxt.save_buffer.nCount > 1))
{
tmp41 = (asn1SccSeqOf) ctxt.save_buffer; <<<<<<<<<<<<<<< does not remove the first element of save_buffer
}
else
{
tmp41 = (asn1SccSeqOf) asn1SccSeqOf_constant;
}
ctxt.save_buffer = (asn1SccSeqOf) tmp41;
// RETURN (None,None) at 170, 302
return;
}
~~~