osate/osate2-core — Issue #12: Analysis error for additional features with inherited components
Author: juli1
Created: 2011-11-01 13:11:11+00:00
State: open

The following code report some errors about the latest connections sections, indicating that linkspw and link_aocs are not found. However, this piece of code seems to be valid and is successfully analyzed with other AADL compilers.

package test

public

bus spacewire
end spacewire;

bus bus1553
end bus1553;

bus generic
end generic;

system obc
features
link_payload : requires bus access;
link1553_platform : requires bus access bus1553;
end obc;

system implementation obc.i

end obc.i;

system obc_current extends obc
features
link_payload : refined to requires bus access bus1553;
end obc_current;

system implementation obc_current.i

end obc_current.i;

system obc_evolved extends obc
features
link_payload : refined to requires bus access spacewire;
link_aocs : requires bus access spacewire;
end obc_evolved;

system implementation obc_evolved.i extends obc.i

end obc_evolved.i;

system aocs
features
link1553 : requires bus access bus1553;
link : requires bus access generic;
end aocs;

system implementation aocs.i
end aocs.i;

system aocs_current extends aocs
end aocs_current;

system implementation aocs_current.i extends aocs.i
end aocs_current.i;

system aocs_evolved extends aocs
features
linkspw : requires bus access spacewire;
end aocs_evolved;

system implementation aocs_evolved.i extends aocs.i
end aocs_evolved.i;

system riu
features
link1553 : requires bus access bus1553;
bus_aocs : requires bus access generic;
bus_propulsion : requires bus access generic;
bus_thermal : requires bus access generic;
end riu;

system implementation riu.i
end riu.i;

system riu_current extends riu
features
bus_power : requires bus access generic;
end riu_current;

system implementation riu_current.i extends riu.i

end riu_current.i;

system riu_evolved extends riu
features
link_spw : requires bus access spacewire;
end riu_evolved;

system implementation riu_evolved.i extends riu.i
end riu_evolved.i;

system platform
features
payloadlink : requires bus access;
end platform;

system platform_current extends platform
features
payloadlink : refined to requires bus access bus1553;
end platform_current;

system implementation platform.i
subcomponents
riu : system riu.i;
aocs : system aocs.i;
obc : system obc.i;
end platform.i;

system implementation platform_current.i extends platform.i
subcomponents
riu : refined to system riu_current.i;
aocs : refined to system aocs_current.i;
powerbus : bus generic;
end platform_current.i;

system platform_evolved extends platform
features
payloadlink : refined to requires bus access spacewire;
end platform_evolved;

system implementation platform_evolved.i extends platform.i
subcomponents
obc : refined to system obc_evolved.i;
aocs : refined to system aocs_evolved.i;
spw_bus_aocs : bus spacewire;
connections
obc_aocs : bus access spw_bus_aocs -> aocs.linkspw;
aocs_obc : bus access spw_bus_aocs -> obc.link_aocs;
end platform_evolved.i;

end test;