*Repeat and non-zero return codes
Jeffrey Lee (213) 6048 posts |
*Repeat’s handling of non-zero return codes is very broken. Should it stop or should it continue? Should a non-zero return code cause *Repeat itself to exit with a non-zero return code? For commands that exit with errors, the behaviour is pretty clear: If the -continue flag isn’t specified, Repeat will stop, print the error (or report via Wimp_ReportError), and then exit with a return code of 1. However for commands that exit with non-zero return codes, things are less certain. An extra wrinkle is that because |
Stuart Swales (8827) 1323 posts |
I would have thought that *Repeat should only stop on errors; for non-zero return codes the user can choose an appropriate Sys$RCLimit so that an error is generated. |
Peter Howkins (211) 235 posts |
I would think that after 20+ years the current behaviour is set. If you want to change the behaviour add a second API. |
David J. Ruck (33) 1585 posts |
Repeat’s inconsistent behaviour is responsible for an immense amount of grief, when trying to diagnose incomplete booting, due to something failing in PreDesk. I would prefer this to be fixed, as any change in behaviour will generally only become apparent when something is already broken. |
Jon Abbott (1421) 2640 posts |
The *Repeat documentation doesn’t mention the “-continue” parameter. Terminate and report the file that returned a non-zero, exiting with said value? I’d expect -continue to ignore all errors, including non-zero returns. Add a specific error so it can be distinguished. Q if system is dependent on DDEUtils, does a softloaded CLib auto-load the Module? I don’t remember it being a dependency. |