From: Kevin Gallagher
Subject: Re: CL Pitfalls list
Date: 
Message-ID: <4694ho$nqs@kernighan.cs.umass.edu>
········@Rincewindarch.su.edu.au writes:
>You might add that the type of the result of (the ...) declarations is not
>checked, even with optimization for safety. If you use (setf foo (the fixnum
>(bar)) and bar returns NIL, than you won't get a runtime error (it might even 
>prevent LISP from finding that error later on, because it might not do a type 
>checking on foo anymore). 

In Allegro Common Lisp, (the ...) declarations are checked in
interpreted code; if a type violation is found an error is
signaled.  It would be nice if declarations were checked in
compiled code with safety=3, but they're not...