You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Jun 4, 2019. It is now read-only.
AGREE can use AADL types from outside the AGREE annex clause, but you can't write them as types within the AGREE subclause for equations and constants.
system Mode_Control
features
start: in data port Base_Types::Boolean;
clear: in data port Base_Types::Boolean;
cooking_mode: out data port Base_Types::Integer;
If we concur that the mapping from AADL types to AGREE types is sufficiently well understood, then this makes sense. We already do the mapping implicitly for elements of aggregates; there are already plenty of implicit mappings occurring already.
The core of this issue is not that AADL Base Types are not allowed. The validator would allow them, but for some reason items in Base_Types are not resolved by the linker. Accordingly, the validator does not know what they are and posts a validation error.
Why resolving these types fails in unknown. It isn't because they're data types or because they're in a different package. Creating a data type that extends the base type and placing it in the same or another package works correctly.
This problem appears to be deep in the innards of how Xtext scoping and linking works, and interacts with OSATE and the AGREE annexes as delegated from OSATE.
AGREE can use AADL types from outside the AGREE annex clause, but you can't write them as types within the AGREE subclause for equations and constants.
system Mode_Control
features
start: in data port Base_Types::Boolean;
clear: in data port Base_Types::Boolean;
cooking_mode: out data port Base_Types::Integer;
The text was updated successfully, but these errors were encountered: