Fix infinite recursion bug in HACK-BRACKET-SPEC:
The LOOSE and RANGES lists weren't getting sorted in the fixpoint comparison.
This commit is contained in:
parent
be84d5ec47
commit
64cdef6fc7
|
@ -562,7 +562,6 @@
|
|||
;; Repeat until stable:
|
||||
(let ((loose (sort-list loose0 loose<=)) ; Sort loose chars and ranges.
|
||||
(ranges (sort-list ranges0 range<)))
|
||||
|
||||
;; If ] opens or closes a range, shrink it out.
|
||||
;; If - opens a range, shrink it out.
|
||||
(receive (loose ranges)
|
||||
|
@ -588,6 +587,9 @@
|
|||
(append new-ranges0 new-ranges)))))
|
||||
(values loose '())))
|
||||
|
||||
(let ((loose (sort-list loose loose<=)) ; Sort loose chars and ranges.
|
||||
(ranges (sort-list ranges range<)))
|
||||
|
||||
(? ((or (not (equal? loose0 loose)) ; Loop if anything changed.
|
||||
(not (equal? ranges0 ranges)))
|
||||
(lp loose ranges end-hyphen?))
|
||||
|
@ -622,4 +624,4 @@
|
|||
(apply string-append
|
||||
(map (lambda (r) (string (car r) #\- (cdr r)))
|
||||
ranges))
|
||||
"]")))))))
|
||||
"]"))))))))
|
||||
|
|
Loading…
Reference in New Issue