anchor.diff:  ;;;
   ;;; Timer definitions
   ;;;
  +
   (defun timer-handling ()
     (declare (optimize (debug 3)))
     (flet ((maybe-invoke-event (event)
  
positive.code: 					 (get-internal-real-time))
  				  (let ((*in-scope?* t))
  				    (declare (ignorable *in-scope?*))
  				    ;; Sleep here, and allow timer functions
  				    ;; to acquire the lock (and therefore invoke
  				    ;; a timer-interrupt).
  				    (let ((secs (i2secs
  						 (- (timer-event-time event)
  						    (get-internal-real-time)))))
  				      (when (plusp secs) (sleep secs))))))
  		      ;; If an interrupt occurred, attempt to invoke the active timer
  		      (when (and event (maybe-invoke-event event))
  			(qpop (timer-queue *timer*))))))
  		 (t (timer-wait))))))))
  
negative.code:     (qpush (timer-queue *timer*) event)
      (timer-notify)
      (interrupt-thread (timer-thread *timer*) #'%int-thrower)
      (sleep 0)
      event))
  
  ;;; ----------------------------------------------------------------------------
  