Paul, the point is that no matter what is saved or not saved, in scope or out of scope, variables defined or undefined, the Clearwin does not have to crash, it must be rock stable, this is not the Fortran (where crash is the hint for the errors) but just additional facility, the graphics interface. Nothing bad will happen if Clearwin will have internal bugs but still not crash. Users just will inform the developers about odd behavior but will be able still to live with the bug. At least it is much better that property sheet will for example due to its bugs not start second time you call it than it will crash and take down with it the rest of Fortran code which ran simulation for 12 hours. With bad but not crashing GUI the Fortran code will continue its run and most probably will save the data in other forms besides GUI completing the run.
Users do not have to know about sources of errors in Clearwin, who cares that ish1 have to be in scope? 99.9% of Fortran users even do not know and will never interested what in scope means. Why %PS not doing this internally? Not enough memory for additional code to handle that inside %PS? Or additional code which handles all user insane moves torturing GUI will slow down the GUI? When the user interacts with the property sheet the GUIs human-to-computer input-output with the mouse and keyboard response time is approximately 0.1 second, enough for 1000 additional internal checks for anything bad programmer might do.
My larger code still crashes with SAVE. Adding SAVE is by the way counterintuitive
Fortranish approach to GUI development - one step aside and you got crash, abort, access violation - is hell wrong, currently it's like you got tiny scratch of your finger, or piece of dust got into your eye and this immediately causes the death of the entire human.