anchor.diff:  (in-package #:sicl-read-test)
  +
  +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  +;;;
  +;;; Reading symbols
   
   (define-test read.symbol.followed.by.end.of.file.upcase
     (let ((*read-base* 10)
  
positive.code: 		  (symbol-name (with-input-from-string (stream "12.3Ab ")
  				 (read stream))))))
  
  (define-test read.integer.zero.no.sign.end.of.file
    (let ((*read-base* 10)
  	(*readtable* (copy-readtable nil)))
  
negative.code: 		  (with-input-from-string (stream "-2/3")
  				 (read stream)))))
    
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  ;;;
  ;;; Reading floats
  
  (define-test read.positive.float.no.sign.no.exponent.marker.followed.by.end.of.file.1
    (assert-true (let ((*read-base* 10)
  		     (*readtable* (copy-readtable nil))
  		     (*read-default-float-format* 'short-float))
  		 (let ((result (with-input-from-string (stream ".2")
  				 (read stream))))
  		   (and (typep result 'short-float)
  			(= (/ (float 2 1s0) (float 10 1s0))))))))
  
  (define-test read.positive.float.no.sign.no.exponent.marker.followed.by.end.of.file.2
    (assert-true (let ((*read-base* 10)
  		     (*readtable* (copy-readtable nil))
  		     (*read-default-float-format* 'short-float))
  		 (let ((result (with-input-from-string (stream "0.2")
  				 (read stream))))
  		   (and (typep result 'short-float)
  			(= (/ (float 2 1s0) (float 10 1s0))))))))
  
  (define-test read.positive.float.plus.sign.no.exponent.marker.followed.by.end.of.file.1
    (assert-true (let ((*read-base* 10)
  		     (*readtable* (copy-readtable nil))
  		     (*read-default-float-format* 'short-float))
  		 (let ((result (with-input-from-string (stream "+.2")
  				 (read stream))))
  		   (and (typep result 'short-float)
  			(= (/ (float 2 1s0) (float 10 1s0))))))))
  
  (define-test read.positive.float.plus.sign.no.exponent.marker.followed.by.end.of.file.2
    (assert-true (let ((*read-base* 10)
  		     (*readtable* (copy-readtable nil))
  		     (*read-default-float-format* 'short-float))
  		 (let ((result (with-input-from-string (stream "+0.2")
  				 (read stream))))
  		   (and (typep result 'short-float)
  			(= (/ (float 2 1s0) (float 10 1s0))))))))
  
  (define-test read.negative.float.no.exponent.marker.followed.by.end.of.file.1
    (assert-true (let ((*read-base* 10)
  		     (*readtable* (copy-readtable nil))
  		     (*read-default-float-format* 'short-float))
  		 (let ((result (with-input-from-string (stream "-.2")
  				 (read stream))))
  		   (and (typep result 'short-float)
  			(= (/ (float -2 1s0) (float 10 1s0))))))))
  
  (define-test read.negative.float.no.exponent.marker.followed.by.end.of.file.2
    (assert-true (let ((*read-base* 10)
  		     (*readtable* (copy-readtable nil))
  		     (*read-default-float-format* 'short-float))
  		 (let ((result (with-input-from-string (stream "-0.2")
  				 (read stream))))
  		   (and (typep result 'short-float)
  			(= (/ (float -2 1s0) (float 10 1s0))))))))
  
  			      
  