Correction to recompiling on a version chance

svn: r2052
This commit is contained in:
Kathy Gray 2006-01-30 22:07:40 +00:00
parent 47aadf7789
commit c0d057056a
7 changed files with 23 additions and 17 deletions

View File

@ -314,6 +314,9 @@
;Extracts the version from a .zo file. Will probably blow up on anything else. ;Extracts the version from a .zo file. Will probably blow up on anything else.
;get-version port -> string ;get-version port -> string
(define (get-version port) (define (get-version port)
(if (eof-object? (peek-char port))
""
(begin
(let get-to-count ((n 0)) (let get-to-count ((n 0))
(unless (= n 2) (unless (= n 2)
(read-bytes 1 port) (read-bytes 1 port)
@ -323,6 +326,6 @@
(if (= c 0) (if (= c 0)
null null
(cons (read-char port) (cons (read-char port)
(loop (sub1 c)))))))) (loop (sub1 c))))))))))
) )

View File

@ -7,4 +7,4 @@
() ()
() ()
() ()
"version4") "version4" "ignore")

View File

@ -7,4 +7,4 @@
() ()
() ()
() ()
"version4") "version4" "ignore")

View File

@ -17,5 +17,5 @@
() ()
(("Object" "java" "lang")) (("Object" "java" "lang"))
() ()
"version4") "version4" "ignore")

View File

@ -85,4 +85,4 @@
() ()
(("Object" "java" "lang")) (("Object" "java" "lang"))
(("Serializable" "java" "io") ("Comparable" "java" "lang") ("CharSequence" "java" "lang")) (("Serializable" "java" "io") ("Comparable" "java" "lang") ("CharSequence" "java" "lang"))
"version4") "version4" "ignore")

View File

@ -35,4 +35,4 @@
() ()
(("Object" "java" "lang")) (("Object" "java" "lang"))
(("Serializable" "java" "io")) (("Serializable" "java" "io"))
"version4") "version4" "ignore")

View File

@ -722,7 +722,7 @@
(define type-version "version4") (define type-version "version4")
(define type-length 10) (define type-length 11)
;; read-record: path -> (U class-record #f) ;; read-record: path -> (U class-record #f)
(define (read-record filename) (define (read-record filename)
@ -730,6 +730,8 @@
(lambda (input) (lambda (input)
(and (= (length input) type-length) (and (= (length input) type-length)
(equal? type-version (list-ref input 9)) (equal? type-version (list-ref input 9))
(or (equal? (version) (list-ref input 10))
(equal? "ignore" (list-ref input 10)))
(make-class-record (list-ref input 1) (make-class-record (list-ref input 1)
(list-ref input 2) (list-ref input 2)
(symbol=? 'class (car input)) (symbol=? 'class (car input))
@ -798,7 +800,8 @@
(map inner->list (class-record-inners r)) (map inner->list (class-record-inners r))
(class-record-parents r) (class-record-parents r)
(class-record-ifaces r) (class-record-ifaces r)
type-version))) type-version
(version))))
(field->list (field->list
(lambda (f) (lambda (f)
(list (list