Closed nvcyc closed 3 years ago
Thanks. This is indeed a funny bug and quite unexpected since the order of declaration should not matter here.
Thanks for the patch, greatly appreciated
Just to confirm with you, the PL #298 seems to be closed without being merged. Are you planning to add the commit later manually or is there anything else I can help with this issue? Thanks!
My bad, error in the GUI
OCARINA VERSION:
HOST MACHINE and OPERATING SYSTEM:
DESCRIPTION:
When the declaration of a component (a process component in my case), say
p2
, that extends a componentp1
is placed before the declaration ofp1
, the Ocarina's analyzer throws an error stating thatp1
's flow sources in its flow implementation and its flow spec are inconsistent.This error is not thrown if the order is inverse (i.e.,
p1
is declared first, followed byp2
.)Note that this order of declaration issue is true when
p1
andp2
are in the same AADL file or when they are in different files (the issue becomes the order of the AADL files given in the command line arguments.)Generally, the latter condition (i.e., components in separate files) is what we are really concerned with as we don't typically assume (or impractical to assume) any order when listing the AADL files in the command line arguments.
REPEAT BY:
As a simple example, let's consider a system
deployment
with a processp1
and a threadt1
enclosed. Assuming the AADL code below is stored in the filetest_order.aadl
, the aforementioned issue appears when runningocarina -aadlv2 test_order.aadl
which throws the error
The error does not occur when removing the declaration of
p2
or moving it to afterp1.impl
's declaration.