Open jgroote opened 7 years ago
tictactoe.mcrl2
(1.3 KiB)I cannot reproduce this problem on Ubuntu 17.04. Can you maybe attach the fsm file as well?
The .fsm file is has the following size and is too big to be uploaded:
1331642 Sep 6 14:31 tictactoe.fsm
This appears to be a problem that is specific for MacOsX. OS: OsX 10.12.6. Qt 5.7.
Further analysis shows that the problem is caused by the .fsm parser. At line 86 of parse_parameter the input consists of a domain of over 5000 elements (namely all potential positions of of the pieces in tic-tac-toe). The size of the input string is 793221 characters long. Apparently, this is too much to swallow for Boost's regexp with the relatively small stack that processes have on the mac.
As this is not untypical .fsm input, and the structure of the input is very simple, it is advisable to replace this algorithm by one that can deal with a smaller stack, probably, by splitting the input string first into the appropriate subdomains.
Note that this input is not problematic in tools that do not use Qt, such as ltsinfo. Apparently the stack of such tools is bigger on MacOsX.
Issue migrated from trac ticket # 1430
component: Core: Parse Library | priority: major
2017-09-06 14:47:27: @jgroote created the issue
In the enclosed file tictactoe.mcrl2 when applying the following commands ltsview crashes. Note that if a .lts file is generated no crash takes place on tictactoe.lts. If the .fsm file is translated to a .lts file no crash occurs.
mcrl22lps -v tictactoe.mcrl2 tictactoe.lps lps2lts -v -rjittyc tictactoe.lps tictactoe.fsm ltsview tictactoe.fsm
The tictactoe file stems directly from the example directory.