osate / osate2

Open Source AADL2 Tool Environment
http://osate.org
Eclipse Public License 2.0
36 stars 8 forks source link

OSATE does not allow multiple call sequences in threads #2718

Closed lwrage closed 2 years ago

lwrage commented 2 years ago

Summary OSATE does not support multiple call sequences in threads even though the standard allows that. Multiple call sequences are needed to provide different call sequences for the various ..._Entrypoint_Call_Sequence properties.

Expected behavior Multiple call sequences should be allowed in thread implementations.

Actual behavior When adding multiple call sequences to a thread implementation, OSATE marks that as an error.

Steps To Reproduce

  1. Paste the model below in the AADL text editor.
  2. Both call sequences are marked with an error.
package P
public

    thread T
    end T;

    thread implementation T.i
        calls
            a: {
                a1: subprogram S;
            };
            b: {
                b1: subprogram S;
            };
    end T.i;

    subprogram S
    end S;

end P;

Desktop (please complete the following information):

jjhugues commented 2 years ago

Note we may have to revisit https://github.com/saeaadl/aadlv2.2/issues/45 which points also to https://github.com/osate/osate2/issues/1564

lwrage commented 2 years ago

Check what exactly was changed in #1564. Subprograms should allow only one call sequence (per mode).

lwrage commented 2 years ago

Should be an easy fix, Tests for 1564 need to be revised.