fix zo-parse problem with graphs in literal data
svn: r14596
original commit: 2439b4cb75
This commit is contained in:
parent
0a8691e0bb
commit
cd3f1c8707
|
@ -729,7 +729,7 @@
|
|||
[read-accept-dot #t]
|
||||
[read-accept-infix-dot #t]
|
||||
[read-accept-quasiquote #t])
|
||||
(read (open-input-bytes s))))]
|
||||
(read/recursive (open-input-bytes s))))]
|
||||
[(reference)
|
||||
(make-primval (read-compact-number cp))]
|
||||
[(small-list small-proper-list)
|
||||
|
@ -837,7 +837,17 @@
|
|||
[(box)
|
||||
(box (read-compact cp))]
|
||||
[(quote)
|
||||
(make-reader-graph (read-compact cp))]
|
||||
(make-reader-graph
|
||||
;; Nested escapes need to share graph references. So get inside the
|
||||
;; read where `read/recursive' can be used:
|
||||
(let ([rt (current-readtable)])
|
||||
(parameterize ([current-readtable (make-readtable
|
||||
#f
|
||||
#\x 'terminating-macro
|
||||
(lambda args
|
||||
(parameterize ([current-readtable rt])
|
||||
(read-compact cp))))])
|
||||
(read (open-input-bytes #"x")))))]
|
||||
[(symref)
|
||||
(let* ([l (read-compact-number cp)]
|
||||
[v (vector-ref (cport-symtab cp) l)])
|
||||
|
|
Loading…
Reference in New Issue
Block a user