On Dec 13, 1:01 pm, "Leslie P. Polzer" <[email protected]> wrote: > I don't have time to code up a solution myself, but I'd happily accept a > patch! > > But if you write a patch be sure to include at least one test case for this.
Hi Leslie, I have prepared the patch "Fix for tagbody->catch->go; towards fully supporting catch/throw" (will send it to you offline). It contains the test CL-CONT-TEST::TAGBODY-9 that deals with the problem mentioned above. The fix changes the CATCH handler to actually walk the body. This caused one of the existing catch/throw tests to fail, so I added a new handler for THROW, which made all the tests pass again :). I noticed that this new handling of catch/throw is beneficial in other cases, so I added the following tests CL-CONT-TEST::CATCH/THROW-3, CL-CONT-TEST::CATCH/THROW-4, CL-CONT-TEST::CATCH/THROW-5, CL-CONT-TEST::CATCH/THROW-6, CL-CONT-TEST::CATCH/THROW-7, CL-CONT-TEST::CATCH/THROW-8 which are also fixed by this change. I would not dare to say that catch/throw is fully supported (especially regarding call/cc, which it is definitely not), but this could be a first step towards that goal. Regards, Kilian -- You received this message because you are subscribed to the Google Groups "weblocks" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/weblocks?hl=en.
