Am Mittwoch, 12.02.03 um 22:07 Uhr schrieb Martin Cracauer:
> Hi, > > is there any equivalent to a "noreturn" declartion in CMUCL? > > In a context like this > > (+ (if p > p > (invoke-error "p is foobar')) > 2) > > I get a warnng that the return value of invoke-error is not a number. > I want to teach the compiler that invoke-error never returns. The conventional way of indicating a function doesn't return is to give it a return-value type of nil; see (describe 'error) for an example. Note that normally, CMUCL should be able to derive this type automagically, if indeed every possible exit of the function is via a function that errors out. In cases where cmucl can't automagically do that, you might want to declaim the ftype of invoke-error appropriately, e.g. (declaim (ftype (function (t) nil) invoke-error)) Regs, Pierre. -- Pierre R. Mai <[EMAIL PROTECTED]> http://www.pmsf.de/pmai/ The most likely way for the world to be destroyed, most experts agree, is by accident. That's where we come in; we're computer professionals. We cause accidents. -- Nathaniel Borenstein
