Ticket #1094 (closed defect: notabug)
self-modified function doesn't behave correctly
|Reported by:||hasarkinn||Owned by:|
(defun f () (setf (symbol-function 'f) (lambda () 1)) (f))
Such a function will cause an infinite loop when it is call at first time but when interupting and calling (f) again, it has been modified to (lambda () 1) I have tried several CL implementation and they all behave correctly, they return 1 and do not cause an infinite loop.