anchor.diff:  (defun read-all-bib-files-and-compute-bib-entries ()
     (dolist (file *bib-files*)
       (let ((expanded-file (kpathsea:find-file (concatenate 'string file ".bib"))))
  -      (unless expanded-file
  -	(format *error-output* "I couldn't find database file `~A'" file))
  -      (with-open-file (s expanded-file :if-does-not-exist nil)
  -	(unless s
  -	  (format *error-output* "I couldn't open database file `~A'" expanded-file))
  -	(read-bib-database s))))
  +      (if (not expanded-file)
  +	  (format *error-output* "I couldn't find database file `~A.bib'" file)
  +	  (with-open-file (s expanded-file :if-does-not-exist nil)
  +	    (if (not s)
  +		(format *error-output* "I couldn't open database file `~A.bib'" expanded-file)
  +		(read-bib-database s))))))
     (cited-bib-entries (if *cite-all-entries* t *cite-keys*)
   		     :min-crossrefs *min-crossrefs*))
   
  
positive.code: 
  (defun bib-warn (format-control &rest args)
    "Emit a warning."
    (apply #'format *error-output* format-control args)
    (terpri *error-output*)
    (mark-warning))
  
negative.code:   (let ((bib-entries (make-array 0 :adjustable t :fill-pointer 0)))
      (cond
        ((eql cite-keys t)
         (loop for key being each hash-key in *bib-database*
  	     do (vector-push-extend (get-merged-bib-entry key) bib-entries)))
        (t
         (let ((crossref-hash (make-hash-table :test 'equalp))
  	     (processed-keys '()))
  