Nicolas Neuss <email@example.com> wrote:
| Pascal Bourguignon <firstname.lastname@example.org> writes:
| > CLHS says clearly that:
| > defun is not required to perform any compile-time side effects. In
| > particular, defun does not make the function definition available at
| > compile time. An implementation may choose to store information about
| > the function for the purposes of compile-time error-checking (such as
| > checking the number of arguments on calls), or to enable the function
| > to be expanded inline.
| As much as I see the problem lies not at compile-time (COMPILE-FILE works),
| but at load-time.
Uh... You *do* understand that if your example is COMPILE-FILE'd
that the ASSERT will not run until *load* time, yes?
[Hint: Try MACROEXPAND on your ASSERT form and look at what the
"top-level" compile-time behavior of the resulting expansion is...]
Rob Warnock <email@example.com>
627 26th Avenue <URL:http://rpw3.org/>
San Mateo, CA 94403 (650)572-2607