: foo query 1 throw ; : bar ['] foo catch ;According to the standard, the 1 THROW should restore the input source specification in effect before the execution of CATCH. If FOO did not execute a THROW (or 0 THROW), then the input source specification should not be restored.
Add the following requirement to the definition of LOAD, INCLUDE-FILE, INCLUDED, EVALUATE etc.: catch exceptions, restore the input source specification, and throw the exceptions.
AFAIK, there exist no experiences with the alternative.
> Proposal > Remove the requirement to restore the input source specification from the > definition of THROW. I agree. AFAIK, people (including myself) do implement CATCH and THROW without input souurce restoration, because if your program controls live hardware, why should you spend time and memory on >IN etc.?