For discussion here I already suggested kind of unusual in Fortran 'crash and burn' world idea not to allow any crashes in Clearwin at all. At least for me time and kicks in my butt tell that this was very reasonable idea. Lost one day again because GUI crash. Crash of GUI may kill one day or one week of run. No matter what is the problem the Clearwin has to allow the main simulation to complete the run. Fixing bugs can be done later.
At the end it is just the GUI, this is not a crash from, say, negative number under square root, and so it would be just fine to have the warning window at run time saying that %il for example has zero value. Who cares, that means that %il still allow the %dd to have at least single value. Crash took place with this construct ('Negative or zero range implied with %il format')
ii=winio('%dd%il%6rd%`il)',1,1,max(1,n_ExpCases), iVariable)
when by mistake happen n_ExpCases=0 and so %il restricted %dd just for iVariable=1 which is perfectly OK.
As a discussion, may be in cases like this instead of crash Clearwin has to ask user
- Would you like to cancel run?
- Take this %il zero or negative range and continue run
- Completely remove influence of %il and continue run