From d617166dcad80e294f4746c6e9b995caffa90c64 Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Tue, 13 Nov 2007 12:40:00 +0000 Subject: [PATCH] v3.99.0.2 svn: r7706 original commit: 39cedb62edf9258b051a22a29a90be9c6841956f --- collects/parser-tools/info.ss | 2 +- collects/parser-tools/lex.ss | 2 +- collects/parser-tools/private-lex/stx.ss | 2 +- collects/parser-tools/private-lex/util.ss | 2 +- collects/parser-tools/private-yacc/lr0.ss | 12 ++++++------ 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/collects/parser-tools/info.ss b/collects/parser-tools/info.ss index 8326e98..4fe905d 100644 --- a/collects/parser-tools/info.ss +++ b/collects/parser-tools/info.ss @@ -1,5 +1,5 @@ -(module info (lib "infotab.ss" "setup") +(module info setup/infotab (define doc.txt "doc.txt") (define name "Parser-tools")) diff --git a/collects/parser-tools/lex.ss b/collects/parser-tools/lex.ss index e0a1e28..7cad6c5 100644 --- a/collects/parser-tools/lex.ss +++ b/collects/parser-tools/lex.ss @@ -149,7 +149,7 @@ (identifier? (syntax name)) (syntax/loc stx (define-syntax name - (make-lex-abbrev (quote-syntax re))))) + (make-lex-abbrev (lambda () (quote-syntax re)))))) (_ (raise-syntax-error #f diff --git a/collects/parser-tools/private-lex/stx.ss b/collects/parser-tools/private-lex/stx.ss index e894801..e1211aa 100644 --- a/collects/parser-tools/private-lex/stx.ss +++ b/collects/parser-tools/private-lex/stx.ss @@ -47,7 +47,7 @@ "undefined abbreviation" stx)) (set-box! disappeared-uses (cons stx (unbox disappeared-uses))) - (parse (lex-abbrev-abbrev expansion)))) + (parse ((lex-abbrev-get-abbrev expansion))))) (_ (or (char? (syntax-e stx)) (string? (syntax-e stx))) (syntax-e stx)) diff --git a/collects/parser-tools/private-lex/util.ss b/collects/parser-tools/private-lex/util.ss index 903fdeb..045e2ad 100644 --- a/collects/parser-tools/private-lex/util.ss +++ b/collects/parser-tools/private-lex/util.ss @@ -5,7 +5,7 @@ (define max-char-num #x10FFFF) - (define-struct lex-abbrev (abbrev)) + (define-struct lex-abbrev (get-abbrev)) (define-struct lex-trans (f)) #;(define-syntax test-block diff --git a/collects/parser-tools/private-yacc/lr0.ss b/collects/parser-tools/private-yacc/lr0.ss index 6667459..07f82f6 100644 --- a/collects/parser-tools/private-yacc/lr0.ss +++ b/collects/parser-tools/private-yacc/lr0.ss @@ -343,7 +343,7 @@ (make-object lr0% automaton-term automaton-non-term - (list->vector (reverse! seen-kernels)) + (list->vector (reverse seen-kernels)) epsilons)) ((null? old-kernels) (loop (deq! new-kernels) seen-kernels)) @@ -358,15 +358,15 @@ (make-q null null)) (define (enq! q i) (if (empty-queue? q) - (let ((i (list i))) + (let ((i (mcons i null))) (set-q-l! q i) (set-q-f! q i)) (begin - (set-cdr! (q-l q) (list i)) - (set-q-l! q (cdr (q-l q)))))) + (set-mcdr! (q-l q) (mcons i null)) + (set-q-l! q (mcdr (q-l q)))))) (define (deq! q) (begin0 - (car (q-f q)) - (set-q-f! q (cdr (q-f q))))) + (mcar (q-f q)) + (set-q-f! q (mcdr (q-f q))))) )