Community
Participate
Working Groups
Created attachment 195646 [details] testmodel If a substate has no init point the code generator crashes. Forthermore the init point must be connected to a state before the crash disapears. It does not matter if the init point is requireded from logical point of view. Attached a model to reproduce the problem.
For the attached model the generator says: 1709 ERROR IOExtensions - Blinky: Having no initial transition in a nested state is valid only if there is no transition to history except of self transitions! @ blinking [Blinky.Blinky] 1710 ERROR Mwe2Launcher - Checks failed! This is correct since 'blinking' is entered by the initial transition of the top level state which is a transition to history. This is semantically not changed by only introducing an initial point without connecting it to a state (the initial point alone doesn't even change the .room model). Unfortunately the MweRunner doesn't offer a possibility to terminate it without showing an exception on the console.
(In reply to comment #1) > For the attached model the generator says: > 1709 ERROR IOExtensions - Blinky: Having no initial transition in a > nested state is valid only if there is no transition to history except of self > transitions! @ blinking [Blinky.Blinky] > 1710 ERROR Mwe2Launcher - Checks failed! > > This is correct since 'blinking' is entered by the initial transition of the > top level state which is a transition to history. > This is semantically not changed by only introducing an initial point without > connecting it to a state (the initial point alone doesn't even change the .room > model). > > Unfortunately the MweRunner doesn't offer a possibility to terminate it without > showing an exception on the console. You are completly right! It was may fault to not double check the .room file and to not attach the diagram file. The graphical behavior editor shows, that the transition from off to blinking ends at the transition point of blinking. With this change in mind the model was semantically correct. However, the mistake i made leads again to the discussion how to handle transition points, automatically or manually. If we do it manually it must be clearly shown in the graphical editor whether the transition ends directly at the state (history) or at the transition point (which might be connected inside the state). Otherwise this is a latent source of mistakes.
closed resolved bug