Skip to content

'in modes' clause on behavior specification stopped working in OSATE 2.7.1. #2295

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
schwerdf opened this issue Apr 22, 2020 · 4 comments · Fixed by #2296
Closed

'in modes' clause on behavior specification stopped working in OSATE 2.7.1. #2295

schwerdf opened this issue Apr 22, 2020 · 4 comments · Fixed by #2296

Comments

@schwerdf
Copy link
Contributor

The following specification works in OSATE 2.7.0 and earlier, but causes a syntax error in OSATE 2.7.1. The specific error is on the behavior specification's in modes clause: "Couldn't resolve reference to mode 'normal'." But when autocomplete is activated inside the parentheses of the in modes clause, both the component's modes show up in the list.

  thread group threadB
    features
      output: out event data port message_pm;
  	modes
  		normal: initial mode;
  		fast: mode;
  end threadB;
  
  thread group implementation threadB.impl
      annex behavior_specification {**
         states
            s0: initial state;
            s1: final state;
        transitions
            s0 -[ ]-> s1 {output:=1};
    **} in modes (normal);
@lwrage
Copy link
Contributor

lwrage commented Apr 22, 2020

This used to work, but only by accident.

@smithdtyler
Copy link

This used to work, but only by accident.

I am confused - is the AADL source in the example legal? We are relying on this functionality.

@Etienne13
Copy link
Contributor

@lwrage I confirm that the Behavior Annex document specifically mentions that BA subclauses can be mode specific using the in modes statement.

@lwrage
Copy link
Contributor

lwrage commented Apr 23, 2020

There's no question that it is a bug (note the "bug" label at this issue). There's already a PR that fixes the name resolution.

Any annex subclause can be modal as specified in the AADL 2.2 standard section 4.8.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants