From a25ddaae5415636cae622aea73f4755c35d7bf42 Mon Sep 17 00:00:00 2001 From: Kevin Tew Date: Fri, 2 Oct 2009 14:31:45 +0000 Subject: [PATCH] kernstruct.ss in scheme/private, makeexn generates kernstruct.ss svn: r16215 --- collects/scheme/mzscheme.ss | 2 + collects/scheme/private/kernstruct.ss | 261 ++++++++++++++++++++++++++ collects/scheme/private/pre-base.ss | 3 +- src/mzscheme/Makefile.in | 8 +- src/mzscheme/include/mzscheme.exp | 1 - src/mzscheme/include/mzscheme3m.exp | 1 - src/mzscheme/include/mzwin.def | 1 - src/mzscheme/include/mzwin3m.def | 1 - src/mzscheme/src/cstartup.inc | 220 +++++++++++----------- src/mzscheme/src/env.c | 11 -- src/mzscheme/src/error.c | 8 +- src/mzscheme/src/exnsrc.ss | 56 ------ src/mzscheme/src/makeexn | 189 +++++++++++-------- src/mzscheme/src/schemef.h | 5 - src/mzscheme/src/schemex.h | 4 - src/mzscheme/src/schemex.inc | 1 - src/mzscheme/src/schemexm.h | 1 - src/mzscheme/src/schexn.h | 22 +-- src/mzscheme/src/schvers.h | 4 +- src/mzscheme/src/struct.c | 134 +------------ src/mzscheme/src/stxobj.c | 1 - src/mzscheme/src/stypes.h | 251 ++++++++++++------------- src/mzscheme/src/type.c | 2 - 23 files changed, 633 insertions(+), 554 deletions(-) create mode 100644 collects/scheme/private/kernstruct.ss delete mode 100644 src/mzscheme/src/exnsrc.ss diff --git a/collects/scheme/mzscheme.ss b/collects/scheme/mzscheme.ss index 2ea2b9999f..a5d78c657f 100644 --- a/collects/scheme/mzscheme.ss +++ b/collects/scheme/mzscheme.ss @@ -15,6 +15,7 @@ "private/old-if.ss" "private/old-procs.ss" "private/map.ss" ; shadows #%kernel bindings + "private/kernstruct.ss" "promise.ss" (only "private/cond.ss" old-cond) "tcp.ss" @@ -37,6 +38,7 @@ identifier? ;; from "private/stx.ss" (all-from "private/qqstx.ss") (all-from "private/define.ss") + (all-from "private/kernstruct.ss") force delay promise? (all-from-except '#%kernel #%module-begin #%datum if make-empty-namespace diff --git a/collects/scheme/private/kernstruct.ss b/collects/scheme/private/kernstruct.ss new file mode 100644 index 0000000000..ad51cbab2a --- /dev/null +++ b/collects/scheme/private/kernstruct.ss @@ -0,0 +1,261 @@ +;; This file was generated by makeexn +;;---------------------------------------------------------------------- +;; record for static info produced by structs defined in c +(module kernstruct '#%kernel + (#%require (for-syntax '#%kernel)) + (#%require "define.ss") + (#%require (for-syntax "struct-info.ss")) + (#%provide (all-defined)) + (define-syntax exn + (make-struct-info + (λ () + (list + (quote-syntax struct:exn) + (quote-syntax make-exn) + (quote-syntax exn?) + (list (quote-syntax exn-continuation-marks) (quote-syntax exn-message)) + '(#f #f) + #t)))) + (define-syntax exn:fail + (make-struct-info + (λ () + (list + (quote-syntax struct:exn:fail) + (quote-syntax make-exn:fail) + (quote-syntax exn:fail?) + (list (quote-syntax exn-continuation-marks) (quote-syntax exn-message)) + '(#f #f) + (quote-syntax exn))))) + (define-syntax exn:fail:contract + (make-struct-info + (λ () + (list + (quote-syntax struct:exn:fail:contract) + (quote-syntax make-exn:fail:contract) + (quote-syntax exn:fail:contract?) + (list (quote-syntax exn-continuation-marks) (quote-syntax exn-message)) + '(#f #f) + (quote-syntax exn:fail))))) + (define-syntax exn:fail:contract:arity + (make-struct-info + (λ () + (list + (quote-syntax struct:exn:fail:contract:arity) + (quote-syntax make-exn:fail:contract:arity) + (quote-syntax exn:fail:contract:arity?) + (list (quote-syntax exn-continuation-marks) (quote-syntax exn-message)) + '(#f #f) + (quote-syntax exn:fail:contract))))) + (define-syntax exn:fail:contract:divide-by-zero + (make-struct-info + (λ () + (list + (quote-syntax struct:exn:fail:contract:divide-by-zero) + (quote-syntax make-exn:fail:contract:divide-by-zero) + (quote-syntax exn:fail:contract:divide-by-zero?) + (list (quote-syntax exn-continuation-marks) (quote-syntax exn-message)) + '(#f #f) + (quote-syntax exn:fail:contract))))) + (define-syntax exn:fail:contract:continuation + (make-struct-info + (λ () + (list + (quote-syntax struct:exn:fail:contract:continuation) + (quote-syntax make-exn:fail:contract:continuation) + (quote-syntax exn:fail:contract:continuation?) + (list (quote-syntax exn-continuation-marks) (quote-syntax exn-message)) + '(#f #f) + (quote-syntax exn:fail:contract))))) + (define-syntax exn:fail:contract:variable + (make-struct-info + (λ () + (list + (quote-syntax struct:exn:fail:contract:variable) + (quote-syntax make-exn:fail:contract:variable) + (quote-syntax exn:fail:contract:variable?) + (list + (quote-syntax exn:fail:contract:variable-id) + (quote-syntax exn-continuation-marks) + (quote-syntax exn-message)) + '(#f #f #f) + (quote-syntax exn:fail:contract))))) + (define-syntax exn:fail:syntax + (make-struct-info + (λ () + (list + (quote-syntax struct:exn:fail:syntax) + (quote-syntax make-exn:fail:syntax) + (quote-syntax exn:fail:syntax?) + (list + (quote-syntax exn:fail:syntax-exprs) + (quote-syntax exn-continuation-marks) + (quote-syntax exn-message)) + '(#f #f #f) + (quote-syntax exn:fail))))) + (define-syntax exn:fail:read + (make-struct-info + (λ () + (list + (quote-syntax struct:exn:fail:read) + (quote-syntax make-exn:fail:read) + (quote-syntax exn:fail:read?) + (list + (quote-syntax exn:fail:read-srclocs) + (quote-syntax exn-continuation-marks) + (quote-syntax exn-message)) + '(#f #f #f) + (quote-syntax exn:fail))))) + (define-syntax exn:fail:read:eof + (make-struct-info + (λ () + (list + (quote-syntax struct:exn:fail:read:eof) + (quote-syntax make-exn:fail:read:eof) + (quote-syntax exn:fail:read:eof?) + (list + (quote-syntax exn:fail:read-srclocs) + (quote-syntax exn-continuation-marks) + (quote-syntax exn-message)) + '(#f #f #f) + (quote-syntax exn:fail:read))))) + (define-syntax exn:fail:read:non-char + (make-struct-info + (λ () + (list + (quote-syntax struct:exn:fail:read:non-char) + (quote-syntax make-exn:fail:read:non-char) + (quote-syntax exn:fail:read:non-char?) + (list + (quote-syntax exn:fail:read-srclocs) + (quote-syntax exn-continuation-marks) + (quote-syntax exn-message)) + '(#f #f #f) + (quote-syntax exn:fail:read))))) + (define-syntax exn:fail:filesystem + (make-struct-info + (λ () + (list + (quote-syntax struct:exn:fail:filesystem) + (quote-syntax make-exn:fail:filesystem) + (quote-syntax exn:fail:filesystem?) + (list (quote-syntax exn-continuation-marks) (quote-syntax exn-message)) + '(#f #f) + (quote-syntax exn:fail))))) + (define-syntax exn:fail:filesystem:exists + (make-struct-info + (λ () + (list + (quote-syntax struct:exn:fail:filesystem:exists) + (quote-syntax make-exn:fail:filesystem:exists) + (quote-syntax exn:fail:filesystem:exists?) + (list (quote-syntax exn-continuation-marks) (quote-syntax exn-message)) + '(#f #f) + (quote-syntax exn:fail:filesystem))))) + (define-syntax exn:fail:filesystem:version + (make-struct-info + (λ () + (list + (quote-syntax struct:exn:fail:filesystem:version) + (quote-syntax make-exn:fail:filesystem:version) + (quote-syntax exn:fail:filesystem:version?) + (list (quote-syntax exn-continuation-marks) (quote-syntax exn-message)) + '(#f #f) + (quote-syntax exn:fail:filesystem))))) + (define-syntax exn:fail:network + (make-struct-info + (λ () + (list + (quote-syntax struct:exn:fail:network) + (quote-syntax make-exn:fail:network) + (quote-syntax exn:fail:network?) + (list (quote-syntax exn-continuation-marks) (quote-syntax exn-message)) + '(#f #f) + (quote-syntax exn:fail))))) + (define-syntax exn:fail:out-of-memory + (make-struct-info + (λ () + (list + (quote-syntax struct:exn:fail:out-of-memory) + (quote-syntax make-exn:fail:out-of-memory) + (quote-syntax exn:fail:out-of-memory?) + (list (quote-syntax exn-continuation-marks) (quote-syntax exn-message)) + '(#f #f) + (quote-syntax exn:fail))))) + (define-syntax exn:fail:unsupported + (make-struct-info + (λ () + (list + (quote-syntax struct:exn:fail:unsupported) + (quote-syntax make-exn:fail:unsupported) + (quote-syntax exn:fail:unsupported?) + (list (quote-syntax exn-continuation-marks) (quote-syntax exn-message)) + '(#f #f) + (quote-syntax exn:fail))))) + (define-syntax exn:fail:user + (make-struct-info + (λ () + (list + (quote-syntax struct:exn:fail:user) + (quote-syntax make-exn:fail:user) + (quote-syntax exn:fail:user?) + (list (quote-syntax exn-continuation-marks) (quote-syntax exn-message)) + '(#f #f) + (quote-syntax exn:fail))))) + (define-syntax exn:break + (make-struct-info + (λ () + (list + (quote-syntax struct:exn:break) + (quote-syntax make-exn:break) + (quote-syntax exn:break?) + (list + (quote-syntax exn:break-continuation) + (quote-syntax exn-continuation-marks) + (quote-syntax exn-message)) + '(#f #f #f) + (quote-syntax exn))))) + (define-syntax arity-at-least + (make-struct-info + (λ () + (list + (quote-syntax struct:arity-at-least) + (quote-syntax make-arity-at-least) + (quote-syntax arity-at-least?) + (list (quote-syntax arity-at-least-value)) + '(#f) + #t)))) + (define-syntax date + (make-struct-info + (λ () + (list + (quote-syntax struct:date) + (quote-syntax make-date) + (quote-syntax date?) + (list + (quote-syntax time-zone-offset) + (quote-syntax dst?) + (quote-syntax year-day) + (quote-syntax week-day) + (quote-syntax year) + (quote-syntax month) + (quote-syntax day) + (quote-syntax hour) + (quote-syntax minute) + (quote-syntax second)) + '(#f #f #f #f #f #f #f #f #f #f) + #t)))) + (define-syntax srcloc + (make-struct-info + (λ () + (list + (quote-syntax struct:srcloc) + (quote-syntax make-srcloc) + (quote-syntax srcloc?) + (list + (quote-syntax span) + (quote-syntax position) + (quote-syntax column) + (quote-syntax line) + (quote-syntax source)) + '(#f #f #f #f #f) + #t))))) diff --git a/collects/scheme/private/pre-base.ss b/collects/scheme/private/pre-base.ss index dfa2cd6da0..d7b01b5cbb 100644 --- a/collects/scheme/private/pre-base.ss +++ b/collects/scheme/private/pre-base.ss @@ -13,7 +13,7 @@ "modbeg.ss" "for.ss" "map.ss" ; shadows #%kernel bindings - + "kernstruct.ss" '#%builtin) ; so it's attached (define-syntaxes (#%top-interaction) @@ -73,6 +73,7 @@ (all-from-except '#%kernel lambda λ #%app #%module-begin apply prop:procedure) (all-from "reqprov.ss") (all-from "for.ss") + (all-from "kernstruct.ss") #%top-interaction map for-each andmap ormap diff --git a/src/mzscheme/Makefile.in b/src/mzscheme/Makefile.in index ea6da5b6b8..11347bc334 100644 --- a/src/mzscheme/Makefile.in +++ b/src/mzscheme/Makefile.in @@ -191,7 +191,8 @@ starter: mzstart.exe exn: $(MAKE) $(srcdir)/src/schexn.h - + $(MAKE) $(collectsdir)/scheme/private/kernstruct.ss + CSTARTUPDEST = cstartup.inc startup: @@ -214,7 +215,10 @@ headers: ./mzscheme@CGC@ -cqu $(srcdir)/mkincludes.ss "$(DESTDIR)$(includepltdir)" "$(srcdir)" . $(srcdir)/src/schexn.h: $(srcdir)/src/exnsrc.ss $(srcdir)/src/makeexn - ./mzscheme@CGC@ -gqr $(srcdir)/src/makeexn < $(srcdir)/src/exnsrc.ss > $(srcdir)/src/schexn.h + ./mzscheme@CGC@ -um $(srcdir)/src/makeexn > $(srcdir)/src/schexn.h +$(collectsdir)/scheme/private/kernstruct.ss: $(srcdir)/src/exnsrc.ss $(srcdir)/src/makeexn + ./mzscheme@CGC@ -um $(srcdir)/src/makeexn kernstruct $(collectsdir)/scheme/private/kernstruct.ss + $(srcdir)/src/$(CSTARTUPDEST): $(srcdir)/src/startup.ss $(srcdir)/src/schvers.h $(srcdir)/src/schminc.h ./mzscheme@CGC@ -cqu $(srcdir)/src/sstoinc.ss $(CSTARTUPEXTRA) < $(srcdir)/src/startup.ss > $(srcdir)/src/$(CSTARTUPDEST) diff --git a/src/mzscheme/include/mzscheme.exp b/src/mzscheme/include/mzscheme.exp index 2991fba33f..4745180d0c 100644 --- a/src/mzscheme/include/mzscheme.exp +++ b/src/mzscheme/include/mzscheme.exp @@ -514,7 +514,6 @@ scheme_make_struct_values scheme_make_struct_names scheme_make_struct_type scheme_make_struct_instance -scheme_make_struct_exptime scheme_is_struct_instance scheme_struct_ref scheme_struct_set diff --git a/src/mzscheme/include/mzscheme3m.exp b/src/mzscheme/include/mzscheme3m.exp index 0e26372d56..0f982d8640 100644 --- a/src/mzscheme/include/mzscheme3m.exp +++ b/src/mzscheme/include/mzscheme3m.exp @@ -525,7 +525,6 @@ scheme_make_struct_values scheme_make_struct_names scheme_make_struct_type scheme_make_struct_instance -scheme_make_struct_exptime scheme_is_struct_instance scheme_struct_ref scheme_struct_set diff --git a/src/mzscheme/include/mzwin.def b/src/mzscheme/include/mzwin.def index a7a2b7c580..8d6213a4c1 100644 --- a/src/mzscheme/include/mzwin.def +++ b/src/mzscheme/include/mzwin.def @@ -502,7 +502,6 @@ EXPORTS scheme_make_struct_names scheme_make_struct_type scheme_make_struct_instance - scheme_make_struct_exptime scheme_is_struct_instance scheme_struct_ref scheme_struct_set diff --git a/src/mzscheme/include/mzwin3m.def b/src/mzscheme/include/mzwin3m.def index c3682926c5..3ac5c900c2 100644 --- a/src/mzscheme/include/mzwin3m.def +++ b/src/mzscheme/include/mzwin3m.def @@ -517,7 +517,6 @@ EXPORTS scheme_make_struct_names scheme_make_struct_type scheme_make_struct_instance - scheme_make_struct_exptime scheme_is_struct_instance scheme_struct_ref scheme_struct_set diff --git a/src/mzscheme/src/cstartup.inc b/src/mzscheme/src/cstartup.inc index 5ffd9930e4..c515e3d6ff 100644 --- a/src/mzscheme/src/cstartup.inc +++ b/src/mzscheme/src/cstartup.inc @@ -1,104 +1,105 @@ { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,52,46,50,46,49,46,56,50,0,0,0,1,0,0,3,0,12,0, -19,0,23,0,28,0,31,0,36,0,49,0,56,0,63,0,67,0,72,0,78, + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,52,46,50,46,50,46,50,50,0,0,0,1,0,0,3,0,12,0, +16,0,21,0,28,0,41,0,44,0,48,0,53,0,60,0,67,0,72,0,78, 0,92,0,106,0,109,0,115,0,119,0,121,0,132,0,134,0,148,0,155,0, -177,0,179,0,193,0,1,1,27,1,35,1,43,1,53,1,89,1,122,1,155, -1,214,1,24,2,102,2,168,2,173,2,193,2,84,3,104,3,155,3,221,3, -106,4,248,4,44,5,67,5,146,5,0,0,93,7,0,0,29,11,11,68,104, -101,114,101,45,115,116,120,66,100,101,102,105,110,101,63,97,110,100,64,108,101, -116,42,62,111,114,64,99,111,110,100,72,112,97,114,97,109,101,116,101,114,105, -122,101,66,108,101,116,114,101,99,66,117,110,108,101,115,115,63,108,101,116,64, +177,0,179,0,193,0,4,1,33,1,44,1,55,1,65,1,101,1,134,1,167, +1,226,1,36,2,114,2,180,2,185,2,205,2,96,3,116,3,167,3,233,3, +118,4,4,5,56,5,79,5,158,5,0,0,105,7,0,0,29,11,11,68,104, +101,114,101,45,115,116,120,63,97,110,100,64,99,111,110,100,66,100,101,102,105, +110,101,72,112,97,114,97,109,101,116,101,114,105,122,101,62,111,114,63,108,101, +116,64,108,101,116,42,66,117,110,108,101,115,115,66,108,101,116,114,101,99,64, 119,104,101,110,65,113,117,111,116,101,29,94,2,13,68,35,37,107,101,114,110, 101,108,11,29,94,2,13,68,35,37,112,97,114,97,109,122,11,62,105,102,65, 98,101,103,105,110,63,115,116,120,61,115,70,108,101,116,45,118,97,108,117,101, 115,61,120,73,108,101,116,114,101,99,45,118,97,108,117,101,115,66,108,97,109, 98,100,97,1,20,112,97,114,97,109,101,116,101,114,105,122,97,116,105,111,110, 45,107,101,121,61,118,73,100,101,102,105,110,101,45,118,97,108,117,101,115,97, -35,11,8,162,246,95,159,2,15,35,35,159,2,14,35,35,159,2,14,35,35, -16,20,2,3,2,1,2,6,2,1,2,4,2,1,2,5,2,1,2,9,2, -1,2,7,2,1,2,8,2,1,2,10,2,1,2,11,2,1,2,12,2,1, -97,36,11,8,162,246,93,159,2,14,35,36,16,2,2,2,161,2,1,36,2, -2,2,1,2,2,96,11,11,8,162,246,16,0,96,37,11,8,162,246,16,0, -13,16,4,35,29,11,11,2,1,11,18,16,2,99,64,104,101,114,101,8,31, -8,30,8,29,8,28,8,27,93,8,224,169,61,0,0,95,9,8,224,169,61, -0,0,2,1,27,248,22,137,4,195,249,22,130,4,80,158,38,35,251,22,77, -2,16,248,22,92,199,12,249,22,67,2,17,248,22,94,201,27,248,22,137,4, -195,249,22,130,4,80,158,38,35,251,22,77,2,16,248,22,92,199,249,22,67, -2,17,248,22,94,201,12,27,248,22,69,248,22,137,4,196,28,248,22,75,193, -20,15,159,36,35,36,28,248,22,75,248,22,69,194,248,22,68,193,249,22,130, -4,80,158,38,35,251,22,77,2,16,248,22,68,199,249,22,67,2,4,248,22, -69,201,11,18,16,2,101,10,8,31,8,30,8,29,8,28,8,27,16,4,11, -11,2,18,3,1,8,101,110,118,49,48,52,49,54,16,4,11,11,2,19,3, -1,8,101,110,118,49,48,52,49,55,93,8,224,170,61,0,0,95,9,8,224, -170,61,0,0,2,1,27,248,22,69,248,22,137,4,196,28,248,22,75,193,20, -15,159,36,35,36,28,248,22,75,248,22,69,194,248,22,68,193,249,22,130,4, -80,158,38,35,250,22,77,2,20,248,22,77,249,22,77,248,22,77,2,21,248, -22,68,201,251,22,77,2,16,2,21,2,21,249,22,67,2,6,248,22,69,204, -18,16,2,101,11,8,31,8,30,8,29,8,28,8,27,16,4,11,11,2,18, -3,1,8,101,110,118,49,48,52,49,57,16,4,11,11,2,19,3,1,8,101, -110,118,49,48,52,50,48,93,8,224,171,61,0,0,95,9,8,224,171,61,0, -0,2,1,248,22,137,4,193,27,248,22,137,4,194,249,22,67,248,22,77,248, -22,68,196,248,22,69,195,27,248,22,69,248,22,137,4,23,197,1,249,22,130, -4,80,158,38,35,28,248,22,53,248,22,131,4,248,22,68,23,198,2,27,249, -22,2,32,0,89,162,8,44,36,42,9,222,33,39,248,22,137,4,248,22,92, -23,200,2,250,22,77,2,22,248,22,77,249,22,77,248,22,77,248,22,68,23, -204,2,250,22,78,2,23,249,22,2,22,68,23,204,2,248,22,94,23,206,2, -249,22,67,248,22,68,23,202,1,249,22,2,22,92,23,200,1,250,22,78,2, -20,249,22,2,32,0,89,162,8,44,36,46,9,222,33,40,248,22,137,4,248, -22,68,201,248,22,69,198,27,248,22,137,4,194,249,22,67,248,22,77,248,22, -68,196,248,22,69,195,27,248,22,69,248,22,137,4,23,197,1,249,22,130,4, -80,158,38,35,250,22,78,2,22,249,22,2,32,0,89,162,8,44,36,46,9, -222,33,42,248,22,137,4,248,22,68,201,248,22,69,198,27,248,22,69,248,22, -137,4,196,27,248,22,137,4,248,22,68,195,249,22,130,4,80,158,39,35,28, -248,22,75,195,250,22,78,2,20,9,248,22,69,199,250,22,77,2,11,248,22, -77,248,22,68,199,250,22,78,2,5,248,22,69,201,248,22,69,202,27,248,22, -69,248,22,137,4,23,197,1,27,249,22,1,22,81,249,22,2,22,137,4,248, -22,137,4,248,22,68,199,249,22,130,4,80,158,39,35,251,22,77,1,22,119, -105,116,104,45,99,111,110,116,105,110,117,97,116,105,111,110,45,109,97,114,107, -2,24,250,22,78,1,23,101,120,116,101,110,100,45,112,97,114,97,109,101,116, -101,114,105,122,97,116,105,111,110,21,95,1,27,99,111,110,116,105,110,117,97, -116,105,111,110,45,109,97,114,107,45,115,101,116,45,102,105,114,115,116,11,2, -24,201,250,22,78,2,20,9,248,22,69,203,27,248,22,69,248,22,137,4,196, -28,248,22,75,193,20,15,159,36,35,36,249,22,130,4,80,158,38,35,27,248, -22,137,4,248,22,68,197,28,249,22,167,8,62,61,62,248,22,131,4,248,22, -92,196,250,22,77,2,20,248,22,77,249,22,77,21,93,2,25,248,22,68,199, -250,22,78,2,7,249,22,77,2,25,249,22,77,248,22,101,203,2,25,248,22, -69,202,251,22,77,2,16,28,249,22,167,8,248,22,131,4,248,22,68,200,64, -101,108,115,101,10,248,22,68,197,250,22,78,2,20,9,248,22,69,200,249,22, -67,2,7,248,22,69,202,100,8,31,8,30,8,29,8,28,8,27,16,4,11, -11,2,18,3,1,8,101,110,118,49,48,52,52,50,16,4,11,11,2,19,3, -1,8,101,110,118,49,48,52,52,51,93,8,224,172,61,0,0,18,16,2,158, -94,10,64,118,111,105,100,8,47,95,9,8,224,172,61,0,0,2,1,27,248, -22,69,248,22,137,4,196,249,22,130,4,80,158,38,35,28,248,22,53,248,22, -131,4,248,22,68,197,250,22,77,2,26,248,22,77,248,22,68,199,248,22,92, -198,27,248,22,131,4,248,22,68,197,250,22,77,2,26,248,22,77,248,22,68, -197,250,22,78,2,23,248,22,69,199,248,22,69,202,159,35,20,103,159,35,16, -1,11,16,0,83,158,41,20,100,144,69,35,37,109,105,110,45,115,116,120,2, -1,11,11,11,10,35,80,158,35,35,20,103,159,35,16,0,16,0,16,1,2, -2,36,16,0,35,16,0,35,11,11,38,35,11,11,11,16,10,2,3,2,4, -2,5,2,6,2,7,2,8,2,9,2,10,2,11,2,12,16,10,11,11,11, -11,11,11,11,11,11,11,16,10,2,3,2,4,2,5,2,6,2,7,2,8, -2,9,2,10,2,11,2,12,35,45,36,11,11,11,16,0,16,0,16,0,35, -35,11,11,11,11,16,0,16,0,16,0,35,35,16,11,16,5,2,2,20,15, -159,35,35,35,35,20,103,159,35,16,0,16,1,33,32,10,16,5,2,10,89, -162,8,44,36,52,9,223,0,33,33,35,20,103,159,35,16,1,2,2,16,0, -11,16,5,2,12,89,162,8,44,36,52,9,223,0,33,34,35,20,103,159,35, -16,1,2,2,16,0,11,16,5,2,4,89,162,8,44,36,52,9,223,0,33, -35,35,20,103,159,35,16,1,2,2,16,1,33,36,11,16,5,2,6,89,162, -8,44,36,55,9,223,0,33,37,35,20,103,159,35,16,1,2,2,16,1,33, -38,11,16,5,2,11,89,162,8,44,36,57,9,223,0,33,41,35,20,103,159, -35,16,1,2,2,16,0,11,16,5,2,9,89,162,8,44,36,52,9,223,0, -33,43,35,20,103,159,35,16,1,2,2,16,0,11,16,5,2,5,89,162,8, -44,36,53,9,223,0,33,44,35,20,103,159,35,16,1,2,2,16,0,11,16, -5,2,8,89,162,8,44,36,54,9,223,0,33,45,35,20,103,159,35,16,1, -2,2,16,0,11,16,5,2,7,89,162,8,44,36,57,9,223,0,33,46,35, -20,103,159,35,16,1,2,2,16,1,33,48,11,16,5,2,3,89,162,8,44, -36,53,9,223,0,33,49,35,20,103,159,35,16,1,2,2,16,0,11,16,0, -94,2,14,2,15,93,2,14,9,9,35,0}; - EVAL_ONE_SIZED_STR((char *)expr, 2006); +35,11,8,240,207,68,0,0,95,159,2,15,35,35,159,2,14,35,35,159,2, +14,35,35,16,20,2,3,2,1,2,4,2,1,2,5,2,1,2,6,2,1, +2,7,2,1,2,8,2,1,2,9,2,1,2,10,2,1,2,11,2,1,2, +12,2,1,97,36,11,8,240,207,68,0,0,93,159,2,14,35,36,16,2,2, +2,161,2,1,36,2,2,2,1,2,2,96,11,11,8,240,207,68,0,0,16, +0,96,37,11,8,240,207,68,0,0,16,0,13,16,4,35,29,11,11,2,1, +11,18,16,2,99,64,104,101,114,101,8,31,8,30,8,29,8,28,8,27,93, +8,224,214,68,0,0,95,9,8,224,214,68,0,0,2,1,27,248,22,137,4, +195,249,22,130,4,80,158,38,35,251,22,77,2,16,248,22,92,199,12,249,22, +67,2,17,248,22,94,201,27,248,22,137,4,195,249,22,130,4,80,158,38,35, +251,22,77,2,16,248,22,92,199,249,22,67,2,17,248,22,94,201,12,27,248, +22,69,248,22,137,4,196,28,248,22,75,193,20,15,159,36,35,36,28,248,22, +75,248,22,69,194,248,22,68,193,249,22,130,4,80,158,38,35,251,22,77,2, +16,248,22,68,199,249,22,67,2,3,248,22,69,201,11,18,16,2,101,10,8, +31,8,30,8,29,8,28,8,27,16,4,11,11,2,18,3,1,8,101,110,118, +49,48,57,50,50,16,4,11,11,2,19,3,1,8,101,110,118,49,48,57,50, +51,93,8,224,215,68,0,0,95,9,8,224,215,68,0,0,2,1,27,248,22, +69,248,22,137,4,196,28,248,22,75,193,20,15,159,36,35,36,28,248,22,75, +248,22,69,194,248,22,68,193,249,22,130,4,80,158,38,35,250,22,77,2,20, +248,22,77,249,22,77,248,22,77,2,21,248,22,68,201,251,22,77,2,16,2, +21,2,21,249,22,67,2,7,248,22,69,204,18,16,2,101,11,8,31,8,30, +8,29,8,28,8,27,16,4,11,11,2,18,3,1,8,101,110,118,49,48,57, +50,53,16,4,11,11,2,19,3,1,8,101,110,118,49,48,57,50,54,93,8, +224,216,68,0,0,95,9,8,224,216,68,0,0,2,1,248,22,137,4,193,27, +248,22,137,4,194,249,22,67,248,22,77,248,22,68,196,248,22,69,195,27,248, +22,69,248,22,137,4,23,197,1,249,22,130,4,80,158,38,35,28,248,22,53, +248,22,131,4,248,22,68,23,198,2,27,249,22,2,32,0,89,162,8,44,36, +42,9,222,33,39,248,22,137,4,248,22,92,23,200,2,250,22,77,2,22,248, +22,77,249,22,77,248,22,77,248,22,68,23,204,2,250,22,78,2,23,249,22, +2,22,68,23,204,2,248,22,94,23,206,2,249,22,67,248,22,68,23,202,1, +249,22,2,22,92,23,200,1,250,22,78,2,20,249,22,2,32,0,89,162,8, +44,36,46,9,222,33,40,248,22,137,4,248,22,68,201,248,22,69,198,27,248, +22,137,4,194,249,22,67,248,22,77,248,22,68,196,248,22,69,195,27,248,22, +69,248,22,137,4,23,197,1,249,22,130,4,80,158,38,35,250,22,78,2,22, +249,22,2,32,0,89,162,8,44,36,46,9,222,33,42,248,22,137,4,248,22, +68,201,248,22,69,198,27,248,22,69,248,22,137,4,196,27,248,22,137,4,248, +22,68,195,249,22,130,4,80,158,39,35,28,248,22,75,195,250,22,78,2,20, +9,248,22,69,199,250,22,77,2,8,248,22,77,248,22,68,199,250,22,78,2, +9,248,22,69,201,248,22,69,202,27,248,22,69,248,22,137,4,23,197,1,27, +249,22,1,22,81,249,22,2,22,137,4,248,22,137,4,248,22,68,199,249,22, +130,4,80,158,39,35,251,22,77,1,22,119,105,116,104,45,99,111,110,116,105, +110,117,97,116,105,111,110,45,109,97,114,107,2,24,250,22,78,1,23,101,120, +116,101,110,100,45,112,97,114,97,109,101,116,101,114,105,122,97,116,105,111,110, +21,95,1,27,99,111,110,116,105,110,117,97,116,105,111,110,45,109,97,114,107, +45,115,101,116,45,102,105,114,115,116,11,2,24,201,250,22,78,2,20,9,248, +22,69,203,27,248,22,69,248,22,137,4,196,28,248,22,75,193,20,15,159,36, +35,36,249,22,130,4,80,158,38,35,27,248,22,137,4,248,22,68,197,28,249, +22,167,8,62,61,62,248,22,131,4,248,22,92,196,250,22,77,2,20,248,22, +77,249,22,77,21,93,2,25,248,22,68,199,250,22,78,2,4,249,22,77,2, +25,249,22,77,248,22,101,203,2,25,248,22,69,202,251,22,77,2,16,28,249, +22,167,8,248,22,131,4,248,22,68,200,64,101,108,115,101,10,248,22,68,197, +250,22,78,2,20,9,248,22,69,200,249,22,67,2,4,248,22,69,202,100,8, +31,8,30,8,29,8,28,8,27,16,4,11,11,2,18,3,1,8,101,110,118, +49,48,57,52,56,16,4,11,11,2,19,3,1,8,101,110,118,49,48,57,52, +57,93,8,224,217,68,0,0,18,16,2,158,94,10,64,118,111,105,100,8,47, +95,9,8,224,217,68,0,0,2,1,27,248,22,69,248,22,137,4,196,249,22, +130,4,80,158,38,35,28,248,22,53,248,22,131,4,248,22,68,197,250,22,77, +2,26,248,22,77,248,22,68,199,248,22,92,198,27,248,22,131,4,248,22,68, +197,250,22,77,2,26,248,22,77,248,22,68,197,250,22,78,2,23,248,22,69, +199,248,22,69,202,159,35,20,102,159,35,16,1,11,16,0,83,158,41,20,100, +144,69,35,37,109,105,110,45,115,116,120,2,1,11,11,11,10,35,80,158,35, +35,20,102,159,35,16,0,16,0,16,1,2,2,36,16,0,35,16,0,35,11, +11,38,35,11,11,11,16,10,2,3,2,4,2,5,2,6,2,7,2,8,2, +9,2,10,2,11,2,12,16,10,11,11,11,11,11,11,11,11,11,11,16,10, +2,3,2,4,2,5,2,6,2,7,2,8,2,9,2,10,2,11,2,12,35, +45,36,11,11,11,16,0,16,0,16,0,35,35,11,11,11,11,16,0,16,0, +16,0,35,35,16,11,16,5,2,2,20,15,159,35,35,35,35,20,102,159,35, +16,0,16,1,33,32,10,16,5,2,10,89,162,8,44,36,52,9,223,0,33, +33,35,20,102,159,35,16,1,2,2,16,0,11,16,5,2,12,89,162,8,44, +36,52,9,223,0,33,34,35,20,102,159,35,16,1,2,2,16,0,11,16,5, +2,3,89,162,8,44,36,52,9,223,0,33,35,35,20,102,159,35,16,1,2, +2,16,1,33,36,11,16,5,2,7,89,162,8,44,36,55,9,223,0,33,37, +35,20,102,159,35,16,1,2,2,16,1,33,38,11,16,5,2,8,89,162,8, +44,36,57,9,223,0,33,41,35,20,102,159,35,16,1,2,2,16,0,11,16, +5,2,11,89,162,8,44,36,52,9,223,0,33,43,35,20,102,159,35,16,1, +2,2,16,0,11,16,5,2,9,89,162,8,44,36,53,9,223,0,33,44,35, +20,102,159,35,16,1,2,2,16,0,11,16,5,2,6,89,162,8,44,36,54, +9,223,0,33,45,35,20,102,159,35,16,1,2,2,16,0,11,16,5,2,4, +89,162,8,44,36,57,9,223,0,33,46,35,20,102,159,35,16,1,2,2,16, +1,33,48,11,16,5,2,5,89,162,8,44,36,53,9,223,0,33,49,35,20, +102,159,35,16,1,2,2,16,0,11,16,0,94,2,14,2,15,93,2,14,9, +9,35,0}; + EVAL_ONE_SIZED_STR((char *)expr, 2018); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,52,46,50,46,49,46,56,59,0,0,0,1,0,0,13,0,18,0, + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,52,46,50,46,50,46,50,59,0,0,0,1,0,0,13,0,18,0, 35,0,50,0,68,0,84,0,94,0,112,0,132,0,148,0,166,0,197,0,226, 0,248,0,6,1,12,1,26,1,31,1,41,1,49,1,77,1,109,1,154,1, 199,1,223,1,6,2,8,2,65,2,155,3,196,3,31,5,135,5,239,5,100, @@ -300,9 +301,9 @@ 248,22,177,3,23,200,1,28,192,192,35,27,27,248,22,177,3,23,202,1,28, 192,192,35,249,22,156,5,23,197,1,83,158,39,20,97,95,89,162,8,44,35, 47,9,224,3,2,33,57,23,195,1,23,196,1,27,248,22,141,5,23,195,1, -248,80,159,38,53,36,193,159,35,20,103,159,35,16,1,11,16,0,83,158,41, +248,80,159,38,53,36,193,159,35,20,102,159,35,16,1,11,16,0,83,158,41, 20,100,144,67,35,37,117,116,105,108,115,29,11,11,11,11,11,10,42,80,158, -35,35,20,103,159,37,16,17,2,1,2,2,2,3,2,4,2,5,2,6,2, +35,35,20,102,159,37,16,17,2,1,2,2,2,3,2,4,2,5,2,6,2, 7,2,8,2,9,2,10,2,11,2,12,2,13,2,14,2,15,30,2,17,1, 20,112,97,114,97,109,101,116,101,114,105,122,97,116,105,111,110,45,107,101,121, 4,30,2,17,1,23,101,120,116,101,110,100,45,112,97,114,97,109,101,116,101, @@ -340,25 +341,26 @@ EVAL_ONE_SIZED_STR((char *)expr, 5006); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,52,46,50,46,49,46,56,8,0,0,0,1,0,0,6,0,19,0, -34,0,48,0,62,0,76,0,115,0,0,0,20,1,0,0,65,113,117,111,116, + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,52,46,50,46,50,46,50,8,0,0,0,1,0,0,6,0,19,0, +34,0,48,0,62,0,76,0,118,0,0,0,23,1,0,0,65,113,117,111,116, 101,29,94,2,1,67,35,37,117,116,105,108,115,11,29,94,2,1,69,35,37, 110,101,116,119,111,114,107,11,29,94,2,1,68,35,37,112,97,114,97,109,122, 11,29,94,2,1,68,35,37,101,120,112,111,98,115,11,29,94,2,1,68,35, -37,107,101,114,110,101,108,11,97,35,11,8,168,248,98,159,2,2,35,35,159, -2,3,35,35,159,2,4,35,35,159,2,5,35,35,159,2,6,35,35,159,2, -6,35,35,16,0,159,35,20,103,159,35,16,1,11,16,0,83,158,41,20,100, -144,69,35,37,98,117,105,108,116,105,110,29,11,11,11,11,11,18,96,11,42, -42,42,35,80,158,35,35,20,103,159,35,16,0,16,0,16,0,35,16,0,35, -16,0,35,11,11,38,35,11,11,11,16,0,16,0,16,0,35,35,36,11,11, -11,16,0,16,0,16,0,35,35,11,11,11,11,16,0,16,0,16,0,35,35, -16,0,16,0,100,2,6,2,5,29,94,2,1,69,35,37,102,111,114,101,105, -103,110,11,29,94,2,1,68,35,37,117,110,115,97,102,101,11,2,4,2,3, -2,2,29,94,2,1,67,35,37,112,108,97,99,101,11,9,9,9,35,0}; - EVAL_ONE_SIZED_STR((char *)expr, 313); +37,107,101,114,110,101,108,11,97,35,11,8,240,85,69,0,0,98,159,2,2, +35,35,159,2,3,35,35,159,2,4,35,35,159,2,5,35,35,159,2,6,35, +35,159,2,6,35,35,16,0,159,35,20,102,159,35,16,1,11,16,0,83,158, +41,20,100,144,69,35,37,98,117,105,108,116,105,110,29,11,11,11,11,11,18, +96,11,42,42,42,35,80,158,35,35,20,102,159,35,16,0,16,0,16,0,35, +16,0,35,16,0,35,11,11,38,35,11,11,11,16,0,16,0,16,0,35,35, +36,11,11,11,16,0,16,0,16,0,35,35,11,11,11,11,16,0,16,0,16, +0,35,35,16,0,16,0,100,2,6,2,5,29,94,2,1,69,35,37,102,111, +114,101,105,103,110,11,29,94,2,1,68,35,37,117,110,115,97,102,101,11,2, +4,2,3,2,2,29,94,2,1,67,35,37,112,108,97,99,101,11,9,9,9, +35,0}; + EVAL_ONE_SIZED_STR((char *)expr, 316); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,52,46,50,46,49,46,56,56,0,0,0,1,0,0,11,0,38,0, + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,52,46,50,46,50,46,50,56,0,0,0,1,0,0,11,0,38,0, 44,0,57,0,66,0,73,0,95,0,117,0,143,0,155,0,173,0,193,0,205, 0,221,0,244,0,0,1,31,1,38,1,43,1,48,1,53,1,58,1,67,1, 72,1,76,1,84,1,93,1,101,1,204,1,249,1,13,2,42,2,73,2,129, @@ -521,9 +523,9 @@ 12,193,87,96,83,160,37,11,80,158,35,49,248,80,158,36,57,249,22,27,11, 80,158,38,51,248,22,155,4,80,159,36,50,37,248,22,129,5,80,159,36,36, 36,248,22,184,12,80,159,36,41,36,83,160,37,11,80,158,35,49,248,80,158, -36,57,249,22,27,11,80,158,38,51,159,35,20,103,159,35,16,1,11,16,0, +36,57,249,22,27,11,80,158,38,51,159,35,20,102,159,35,16,1,11,16,0, 83,158,41,20,100,144,66,35,37,98,111,111,116,29,11,11,11,11,11,10,37, -80,158,35,35,20,103,159,39,16,23,2,1,2,2,30,2,4,72,112,97,116, +80,158,35,35,20,102,159,39,16,23,2,1,2,2,30,2,4,72,112,97,116, 104,45,115,116,114,105,110,103,63,10,30,2,4,75,112,97,116,104,45,97,100, 100,45,115,117,102,102,105,120,7,30,2,6,2,7,4,30,2,6,1,23,101, 120,116,101,110,100,45,112,97,114,97,109,101,116,101,114,105,122,97,116,105,111, diff --git a/src/mzscheme/src/env.c b/src/mzscheme/src/env.c index d12a47047f..7d8497c851 100644 --- a/src/mzscheme/src/env.c +++ b/src/mzscheme/src/env.c @@ -1859,13 +1859,6 @@ Scheme_Object *scheme_make_local(Scheme_Type type, int pos, int flags) return v; } -static Scheme_Object *force_lazy_macro(Scheme_Object *val, long phase) -{ - Lazy_Macro_Fun f = (Lazy_Macro_Fun)SCHEME_PTR1_VAL(val); - Scheme_Object *data = SCHEME_PTR2_VAL(val); - return f(data, phase); -} - static Scheme_Local *get_frame_loc(Scheme_Comp_Env *frame, int i, int j, int p, int flags) /* Generates a Scheme_Local record for a static distance coodinate, and also @@ -2777,8 +2770,6 @@ scheme_lookup_binding(Scheme_Object *find_id, Scheme_Comp_Env *env, int flags, if (!(flags & SCHEME_ENV_CONSTANTS_OK)) { if (SAME_TYPE(SCHEME_TYPE(val), scheme_macro_type)) return val; - else if (SAME_TYPE(SCHEME_TYPE(val), scheme_lazy_macro_type)) - return force_lazy_macro(val, phase); else scheme_wrong_syntax(scheme_set_stx_string, NULL, find_id, "local syntax identifier cannot be mutated"); @@ -2895,8 +2886,6 @@ scheme_lookup_binding(Scheme_Object *find_id, Scheme_Comp_Env *env, int flags, } if (val) { - if (SAME_TYPE(SCHEME_TYPE(val), scheme_lazy_macro_type)) - return force_lazy_macro(val, phase); return val; } diff --git a/src/mzscheme/src/error.c b/src/mzscheme/src/error.c index f1c73a0c2e..1bb6fa88e2 100644 --- a/src/mzscheme/src/error.c +++ b/src/mzscheme/src/error.c @@ -3465,7 +3465,7 @@ void scheme_init_exn(Scheme_Env *env) for (i = 0; i < MZEXN_OTHER; i++) { if (exn_table[i].count) { - Scheme_Object **values, *et; + Scheme_Object **values; int sp; values = scheme_make_struct_values(exn_table[i].type, @@ -3479,12 +3479,6 @@ void scheme_init_exn(Scheme_Env *env) } sp = exn_table[i].super_pos; - et = scheme_make_struct_exptime(exn_table[i].names, exn_table[i].count, - (sp >= 0) ? exn_table[sp].names[exn_table[sp].count - 1] : NULL, - (sp >= 0) ? exn_table[sp].exptime : NULL, - EXN_FLAGS); - exn_table[i].exptime = et; - scheme_add_global_keyword_symbol(exn_table[i].names[exn_table[i].count - 1], et, env); } } diff --git a/src/mzscheme/src/exnsrc.ss b/src/mzscheme/src/exnsrc.ss deleted file mode 100644 index 2742ce6ea2..0000000000 --- a/src/mzscheme/src/exnsrc.ss +++ /dev/null @@ -1,56 +0,0 @@ -#lang scheme - -#| - -Initial symbols are struct types. A non-initial symbol is a struct -type without fields or subtypes. Square brackets are struct fields and -propeties (the latter in curly braces), strings are contracts/comments. - -|# - -(provide info) -(define info ' - -(exn [exn_field_check - (message "immutable string" "error message") - (continuation-marks "mark set" - "value returned by \\scmfirst{current-continuation-marks} immediately before the exception is raised")] - - - (fail [] "exceptions that represent errors" - (contract [] "inappropriate run-time use of a function or syntactic form" - (arity [] - "application with the wrong number of arguments") - (divide-by-zero [] "divide by zero") - (continuation [] "attempt to cross a continuation barrier") - (variable [variable_field_check - (id "symbol" "the variable's identifier")] - "unbound/not-yet-defined global or module variable")) - (syntax [syntax_field_check - (exprs "immutable list of syntax objects" "illegal expression(s)") - {exn:source scheme_source_property |scheme_make_prim(extract_syntax_locations)|}] - "syntax error, but not a \\scmfirst{read} error") - (read [read_field_check - (srclocs "immutable list of \\scmk{srcloc}s (see \\SecRef{linecol})" "source location(s) of error") - {exn:source scheme_source_property |scheme_make_prim(extract_read_locations)|}] - "\\rawscm{read} parsing error" - (eof [] "unexpected end-of-file") - (non-char [] "unexpected non-character")) - (filesystem [] "error manipulating a filesystem object" - (exists [] "attempt to create a file that exists already") - (version [] "version mismatch loading an extension")) - (network [] "TCP and UDP errors") - (out-of-memory [] "out of memory") - (unsupported [] "unsupported feature") - (user [] "for end users")) - - (break [break_field_check - (continuation "escape continuation" "resumes from the break")] - "asynchronous break signal")) - -) - -#| -Not an exception in the above sense: - (special-comment [width "non-negative exact integer" "width of the special comment in port positions"] - "raised by a custom input port's special-reading procedure") -|# diff --git a/src/mzscheme/src/makeexn b/src/mzscheme/src/makeexn index c1149e1e0f..1c7ccba9ac 100755 --- a/src/mzscheme/src/makeexn +++ b/src/mzscheme/src/makeexn @@ -10,10 +10,66 @@ fi #lang at-exp scheme (provide main) -(define (main [arg #f]) - (if (equal? arg "doc") (print-doc) (print-header))) +(define (main [arg #f] [filename #f]) + (if (equal? arg "kernstruct") + (gen-kernstruct filename) + (print-header))) -(require "exnsrc.ss" scribble/text) +(require scribble/text) + +#| + +Initial symbols are struct types. A non-initial symbol is a struct +type without fields or subtypes. Square brackets are struct fields and +propeties (the latter in curly braces), strings are contracts/comments. + +|# + +(define info ' + +(exn [exn_field_check + (message "immutable string" "error message") + (continuation-marks "mark set" + "value returned by \\scmfirst{current-continuation-marks} immediately before the exception is raised")] + - + (fail [] "exceptions that represent errors" + (contract [] "inappropriate run-time use of a function or syntactic form" + (arity [] + "application with the wrong number of arguments") + (divide-by-zero [] "divide by zero") + (continuation [] "attempt to cross a continuation barrier") + (variable [variable_field_check + (id "symbol" "the variable's identifier")] + "unbound/not-yet-defined global or module variable")) + (syntax [syntax_field_check + (exprs "immutable list of syntax objects" "illegal expression(s)") + {exn:source scheme_source_property |scheme_make_prim(extract_syntax_locations)|}] + "syntax error, but not a \\scmfirst{read} error") + (read [read_field_check + (srclocs "immutable list of \\scmk{srcloc}s (see \\SecRef{linecol})" "source location(s) of error") + {exn:source scheme_source_property |scheme_make_prim(extract_read_locations)|}] + "\\rawscm{read} parsing error" + (eof [] "unexpected end-of-file") + (non-char [] "unexpected non-character")) + (filesystem [] "error manipulating a filesystem object" + (exists [] "attempt to create a file that exists already") + (version [] "version mismatch loading an extension")) + (network [] "TCP and UDP errors") + (out-of-memory [] "out of memory") + (unsupported [] "unsupported feature") + (user [] "for end users")) + + (break [break_field_check + (continuation "escape continuation" "resumes from the break")] + "asynchronous break signal")) + +) + +#| +Not an exception in the above sense: + (special-comment [width "non-negative exact integer" "width of the special comment in port positions"] + "raised by a custom input port's special-reading procedure") +|# (define l info) @@ -111,80 +167,61 @@ fi (set! l (make-struct-list l #f #f "" 0 0)) -(define (symbol-length s) - (string-length (symbol->string s))) -(define (clean-help-desk-type type) - (regexp-replace* "or-{\\\\scmfalse}" - (regexp-replace* " " type "-") - "or-#f")) - -(define (print-doc) - (printf "% This file was generated by makeexn~n") - (display "\\begin{exntable}\n") - (for-each - (lambda (e) - (let ([tab - (lambda (pre) - (let loop ([d (ex-depth e)]) - (cond - [(zero? d) ""] - [(= d 1) (format "\\exn~ainset{}" pre)] - [else - (string-append (format "\\exn~atab{}" pre) - (loop (sub1 d)))])))]) - (display (tab "")) - (printf "\\exntype{~a}{~a}{~a}{~a} " - (ex-base e) - (ex-string e) - (case (ex-mark e) - ((#f) "$\\bullet$") - ((#\+) "$\\bullet$") - ((#\*) "$\\bullet$")) - (let ([make-var (lambda (f) - (let ([type (let ([s (fld-type f)]) - (if (string=? s "value") - "v" - s))] - [name (fld-name f)]) - (cond - [(eq? name 'value) "v"] - [(regexp-match "port" type) type] - [else (format "~a-~a" name (clean-help-desk-type type))])))]) - (let loop ([e e][s #f]) - (let* ([p (ex-parent e)] - [s (if p (loop p s) s)]) - (let loop ([l (ex-args e)][s s]) - (cond - [(null? l) s] - [s (loop (cdr l) (string-append s " " (make-var (car l))))] - [else (loop (cdr l) (make-var (car l)))])))))) - - (if (eq? (ex-doc e) '-) - (printf "\\exnusenone{~a} " (tab "")) - (printf "\\exnuse{~a}{~a}{~a} " (tab "") (ex-doc e) - (- 6.3 (* 0.08 (symbol-length (ex-base e))) (* 0.25 (ex-depth e))))) - - (let ([args (ex-args e)] - [print-one - (lambda (f) - (printf "\\exnfield{~a}{~a}{~s}{~a}{~a} " - (fld-name f) (ex-string e) - (- 5.4 (* 0.08 (symbol-length (fld-name f))) (* 0.25 (ex-depth e))) (fld-doc f) - (fld-type f)))]) - (unless (null? args) - (printf "\\exnbeginfields{~a} " (tab "")) - (print-one (car args)) - (for-each (lambda (f) - (printf "\\exnnextfield{~a}" (tab "")) - (print-one f)) - (cdr args)) - (printf "\\exnendfields{~a}" (tab "")))) - (printf "\\exnendline{}") - (display (tab "close")) - (newline))) - l) - (display "\\end{exntable}\n")) +(define (gen-kernstruct filename) + (define preamble '(module kernstruct '#%kernel + (#%require (for-syntax '#%kernel)) + (#%require "define.ss") + (#%require (for-syntax "struct-info.ss")) + + (#%provide (all-defined)))) + + (define (sss . args) + (string->symbol (apply string-append (map (λ (x) (if (symbol? x) (symbol->string x) x)) args)))) + + (define (non-parent x) + (or (equal? #f x) (equal? #t x))) + + (define (gen-ds name-string fields parent) + (let* ([name (sss name-string)] + [sn (sss "struct:" name)] + [mn (sss "make-" name)] + [pn (sss name "?")] + [fds `(list ,@(map (λ (x) `(quote-syntax ,x)) fields))] + [fdsset! `'(,@(map (λ (x) #f) fields))] + [prnt (if (non-parent parent) #t `(quote-syntax ,parent))]) + `(define-syntax ,name (make-struct-info (λ () (list (quote-syntax ,sn) + (quote-syntax ,mn) + (quote-syntax ,pn) + ,fds + ,fdsset! ,prnt)))))) + + (define (parent-sym x) + (let ([parent (ex-parent x)]) + (if (non-parent parent) + parent + (string->symbol (ex-string parent))))) + + (define (fields exn) + (define (field-name exn fld) + (sss (ex-string exn) "-" (fld-name fld))) + (if (non-parent exn) + null + (append (reverse (map (λ (field) (field-name exn field)) (ex-args exn))) (fields (ex-parent exn))))) + + + (define exceptions (map (λ (x) (gen-ds (ex-string x) (fields x) (parent-sym x))) l)) + (define structs (map (λ (x) (apply gen-ds x)) + '((arity-at-least (arity-at-least-value) #t) + (date (time-zone-offset dst? year-day week-day year month day hour minute second) #t) + (srcloc (span position column line source) #t)))) + + (with-output-to-file filename #:exists 'replace + (λ () + (printf ";; This file was generated by makeexn~n") + (printf ";;----------------------------------------------------------------------~n") + (printf ";; record for static info produced by structs defined in c~n") + (pretty-print (append preamble exceptions structs))))) (define (print-header) @(compose output list){ diff --git a/src/mzscheme/src/schemef.h b/src/mzscheme/src/schemef.h index ea8bc90762..1f37b63ddf 100644 --- a/src/mzscheme/src/schemef.h +++ b/src/mzscheme/src/schemef.h @@ -988,11 +988,6 @@ MZ_EXTERN Scheme_Object *scheme_make_struct_instance(Scheme_Object *stype, int argc, Scheme_Object **argv); -MZ_EXTERN Scheme_Object *scheme_make_struct_exptime(Scheme_Object **names, int count, - Scheme_Object *super_sym, - Scheme_Object *super_exptime, - int flags); - XFORM_NONGCING MZ_EXTERN int scheme_is_struct_instance(Scheme_Object *type, Scheme_Object *v); MZ_EXTERN Scheme_Object *scheme_struct_ref(Scheme_Object *s, int pos); MZ_EXTERN void scheme_struct_set(Scheme_Object *s, int pos, Scheme_Object *v); diff --git a/src/mzscheme/src/schemex.h b/src/mzscheme/src/schemex.h index 4d3c284a9d..9d564c9491 100644 --- a/src/mzscheme/src/schemex.h +++ b/src/mzscheme/src/schemex.h @@ -821,10 +821,6 @@ Scheme_Object *(*scheme_make_struct_type)(Scheme_Object *base, Scheme_Object *(*scheme_make_struct_instance)(Scheme_Object *stype, int argc, Scheme_Object **argv); -Scheme_Object *(*scheme_make_struct_exptime)(Scheme_Object **names, int count, - Scheme_Object *super_sym, - Scheme_Object *super_exptime, - int flags); int (*scheme_is_struct_instance)(Scheme_Object *type, Scheme_Object *v); Scheme_Object *(*scheme_struct_ref)(Scheme_Object *s, int pos); void (*scheme_struct_set)(Scheme_Object *s, int pos, Scheme_Object *v); diff --git a/src/mzscheme/src/schemex.inc b/src/mzscheme/src/schemex.inc index 9eb0a9a06b..fb3178ebe7 100644 --- a/src/mzscheme/src/schemex.inc +++ b/src/mzscheme/src/schemex.inc @@ -569,7 +569,6 @@ scheme_extension_table->scheme_make_struct_names = scheme_make_struct_names; scheme_extension_table->scheme_make_struct_type = scheme_make_struct_type; scheme_extension_table->scheme_make_struct_instance = scheme_make_struct_instance; - scheme_extension_table->scheme_make_struct_exptime = scheme_make_struct_exptime; scheme_extension_table->scheme_is_struct_instance = scheme_is_struct_instance; scheme_extension_table->scheme_struct_ref = scheme_struct_ref; scheme_extension_table->scheme_struct_set = scheme_struct_set; diff --git a/src/mzscheme/src/schemexm.h b/src/mzscheme/src/schemexm.h index 06a6637b13..c39addb2d0 100644 --- a/src/mzscheme/src/schemexm.h +++ b/src/mzscheme/src/schemexm.h @@ -569,7 +569,6 @@ #define scheme_make_struct_names (scheme_extension_table->scheme_make_struct_names) #define scheme_make_struct_type (scheme_extension_table->scheme_make_struct_type) #define scheme_make_struct_instance (scheme_extension_table->scheme_make_struct_instance) -#define scheme_make_struct_exptime (scheme_extension_table->scheme_make_struct_exptime) #define scheme_is_struct_instance (scheme_extension_table->scheme_is_struct_instance) #define scheme_struct_ref (scheme_extension_table->scheme_struct_ref) #define scheme_struct_set (scheme_extension_table->scheme_struct_set) diff --git a/src/mzscheme/src/schexn.h b/src/mzscheme/src/schexn.h index 24e4f392c4..284ab1bd03 100644 --- a/src/mzscheme/src/schexn.h +++ b/src/mzscheme/src/schexn.h @@ -1,7 +1,6 @@ /* This file was generated by makeexn */ #ifndef _MZEXN_DEFINES #define _MZEXN_DEFINES - enum { MZEXN, MZEXN_FAIL, @@ -24,7 +23,6 @@ enum { MZEXN_BREAK, MZEXN_OTHER }; - #endif #ifdef _MZEXN_TABLE @@ -87,24 +85,19 @@ static exn_rec *exn_table; #endif #ifdef _MZEXN_DECL_FIELDS - -static const char *MZEXN_FIELDS[2] = { "message", "continuation-marks" }; -static const char *MZEXN_FAIL_CONTRACT_VARIABLE_FIELDS[1] = { "id" }; -static const char *MZEXN_FAIL_SYNTAX_FIELDS[1] = { "exprs" }; -static const char *MZEXN_FAIL_READ_FIELDS[1] = { "srclocs" }; -static const char *MZEXN_BREAK_FIELDS[1] = { "continuation" }; - + static const char *MZEXN_FIELDS[2] = { "message", "continuation-marks" }; + static const char *MZEXN_FAIL_CONTRACT_VARIABLE_FIELDS[1] = { "id" }; + static const char *MZEXN_FAIL_SYNTAX_FIELDS[1] = { "exprs" }; + static const char *MZEXN_FAIL_READ_FIELDS[1] = { "srclocs" }; + static const char *MZEXN_BREAK_FIELDS[1] = { "continuation" }; #endif #ifdef _MZEXN_DECL_PROPS - -#define MZEXN_FAIL_SYNTAX_PROPS scheme_make_pair(scheme_make_pair(scheme_source_property, scheme_make_prim(extract_syntax_locations)), scheme_null) -#define MZEXN_FAIL_READ_PROPS scheme_make_pair(scheme_make_pair(scheme_source_property, scheme_make_prim(extract_read_locations)), scheme_null) - +# define MZEXN_FAIL_SYNTAX_PROPS scheme_make_pair(scheme_make_pair(scheme_source_property, scheme_make_prim(extract_syntax_locations)), scheme_null) +# define MZEXN_FAIL_READ_PROPS scheme_make_pair(scheme_make_pair(scheme_source_property, scheme_make_prim(extract_read_locations)), scheme_null) #endif #ifdef _MZEXN_SETUP - SETUP_STRUCT(MZEXN, NULL, "exn", 2, MZEXN_FIELDS, scheme_null, scheme_make_prim(exn_field_check)) SETUP_STRUCT(MZEXN_FAIL, EXN_PARENT(MZEXN), "exn:fail", 0, NULL, scheme_null, NULL) SETUP_STRUCT(MZEXN_FAIL_CONTRACT, EXN_PARENT(MZEXN_FAIL), "exn:fail:contract", 0, NULL, scheme_null, NULL) @@ -124,5 +117,4 @@ static const char *MZEXN_BREAK_FIELDS[1] = { "continuation" }; SETUP_STRUCT(MZEXN_FAIL_UNSUPPORTED, EXN_PARENT(MZEXN_FAIL), "exn:fail:unsupported", 0, NULL, scheme_null, NULL) SETUP_STRUCT(MZEXN_FAIL_USER, EXN_PARENT(MZEXN_FAIL), "exn:fail:user", 0, NULL, scheme_null, NULL) SETUP_STRUCT(MZEXN_BREAK, EXN_PARENT(MZEXN), "exn:break", 1, MZEXN_BREAK_FIELDS, scheme_null, scheme_make_prim(break_field_check)) - #endif diff --git a/src/mzscheme/src/schvers.h b/src/mzscheme/src/schvers.h index be1a6933b1..e2ad4abe51 100644 --- a/src/mzscheme/src/schvers.h +++ b/src/mzscheme/src/schvers.h @@ -13,12 +13,12 @@ consistently.) */ -#define MZSCHEME_VERSION "4.2.2.1" +#define MZSCHEME_VERSION "4.2.2.2" #define MZSCHEME_VERSION_X 4 #define MZSCHEME_VERSION_Y 2 #define MZSCHEME_VERSION_Z 2 -#define MZSCHEME_VERSION_W 1 +#define MZSCHEME_VERSION_W 2 #define MZSCHEME_VERSION_MAJOR ((MZSCHEME_VERSION_X * 100) + MZSCHEME_VERSION_Y) #define MZSCHEME_VERSION_MINOR ((MZSCHEME_VERSION_Z * 1000) + MZSCHEME_VERSION_W) diff --git a/src/mzscheme/src/struct.c b/src/mzscheme/src/struct.c index ac4cb1b1e2..0b6a040b3d 100644 --- a/src/mzscheme/src/struct.c +++ b/src/mzscheme/src/struct.c @@ -175,15 +175,15 @@ void scheme_init_struct (Scheme_Env *env) { Scheme_Object **as_names; - Scheme_Object **as_values, *as_et; + Scheme_Object **as_values; int as_count; #ifdef TIME_SYNTAX Scheme_Object **ts_names; - Scheme_Object **ts_values, *ts_et; + Scheme_Object **ts_values; int ts_count; #endif Scheme_Object **loc_names; - Scheme_Object **loc_values, *loc_et; + Scheme_Object **loc_values; int loc_count; int i; Scheme_Object *guard; @@ -217,9 +217,6 @@ scheme_init_struct (Scheme_Env *env) env); } - as_et = scheme_make_struct_exptime(as_names, as_count, NULL, NULL, BUILTIN_STRUCT_FLAGS); - scheme_add_global_keyword_symbol(as_names[as_count - 1], as_et, env); - #ifdef TIME_SYNTAX /* Add date structure: */ REGISTER_SO(scheme_date); @@ -237,8 +234,6 @@ scheme_init_struct (Scheme_Env *env) env); } - ts_et = scheme_make_struct_exptime(ts_names, ts_count, NULL, NULL, BUILTIN_STRUCT_FLAGS); - scheme_add_global_keyword_symbol(ts_names[ts_count - 1], ts_et, env); #endif /* Add location structure: */ @@ -257,9 +252,6 @@ scheme_init_struct (Scheme_Env *env) env); } - loc_et = scheme_make_struct_exptime(loc_names, loc_count, NULL, NULL, LOC_STRUCT_FLAGS); - scheme_add_global_keyword_symbol(loc_names[loc_count - 1], loc_et, env); - REGISTER_SO(write_property); { Scheme_Object *a[2], *pred, *access; @@ -2834,126 +2826,6 @@ static Scheme_Object *make_name(const char *pre, const char *tn, int ltn, return (Scheme_Object *)name; } -static Scheme_Object *get_phase_ids(Scheme_Object *_v, int phase) -{ - Scheme_Object **v = (Scheme_Object **)_v; - Scheme_Object *l, **names, *tp, *cns, *prd, *super_exptime, *w, *macro; - Scheme_Hash_Table *ht; - int count, i, flags; - - ht = (Scheme_Hash_Table *)v[3]; - - if (!ht) { - ht = scheme_make_hash_table(SCHEME_hash_ptr); - v[3] = (Scheme_Object *)ht; - } - - l = scheme_hash_get(ht, scheme_make_integer(phase)); - if (l) - return l; - - names = (Scheme_Object **)v[0]; - count = SCHEME_INT_VAL(v[1]); - super_exptime = v[2]; - - w = scheme_sys_wraps((Scheme_Comp_Env *)(scheme_make_integer(phase))); - - tp = names[0]; - cns = names[1]; - prd = names[2]; - - tp = scheme_datum_to_syntax(tp, scheme_false, w, 0, 0); - cns = scheme_datum_to_syntax(cns, scheme_false, w, 0, 0); - prd = scheme_datum_to_syntax(prd, scheme_false, w, 0, 0); - - if (super_exptime) { - super_exptime = get_phase_ids(SCHEME_PTR2_VAL(super_exptime), phase); - super_exptime = SCHEME_PTR_VAL(super_exptime); - l = scheme_make_pair(scheme_datum_to_syntax(v[4], scheme_false, w, 0, 0), scheme_null); - super_exptime = SCHEME_CDR(SCHEME_CDR(SCHEME_CDR(super_exptime))); - } else { - l = scheme_make_pair(scheme_true, scheme_null); - } - - if (count > 3) { - Scheme_Object *n, *gets, *sets; - - if (super_exptime) { - gets = SCHEME_CAR(super_exptime); - sets = SCHEME_CADR(super_exptime); - } else { - gets = scheme_null; - sets = scheme_null; - } - - flags = SCHEME_INT_VAL(v[5]); - - for (i = 3; i < count - 1; i++) { - n = names[i]; - n = scheme_datum_to_syntax(n, scheme_false, w, 0, 0); - gets = scheme_make_pair(n, gets); - - if (!(flags & SCHEME_STRUCT_NO_SET)) { - i++; - n = names[i]; - n = scheme_datum_to_syntax(n, scheme_false, w, 0, 0); - sets = scheme_make_pair(n, sets); - } else - sets = scheme_make_pair(scheme_false, sets); - } - - l = scheme_make_pair(gets, scheme_make_pair(sets, l)); - } else { - if (super_exptime) - l = icons(SCHEME_CAR(super_exptime), - icons(SCHEME_CADR(super_exptime), - l)); - else - l = scheme_make_pair(scheme_null, scheme_make_pair(scheme_null, l)); - } - - l = scheme_make_pair(prd, l); - l = scheme_make_pair(cns, l); - l = scheme_make_pair(tp, l); - - macro = scheme_alloc_small_object(); - macro->type = scheme_macro_type; - SCHEME_PTR_VAL(macro) = l; - - scheme_hash_set(ht, scheme_make_integer(phase), macro); - - return macro; -} - -Scheme_Object *scheme_make_struct_exptime(Scheme_Object **names, int count, - Scheme_Object *super_sym, - Scheme_Object *super_exptime, - int flags) -{ - Scheme_Object *macro; - Scheme_Object **v; - - if (!(flags & SCHEME_STRUCT_EXPTIME)) { - scheme_signal_error("struct exptime needs SCHEME_STRUCT_EXPTIME"); - return NULL; - } - - v = MALLOC_N(Scheme_Object*, 6); - v[0] = (Scheme_Object *)names; - v[1] = scheme_make_integer(count); - v[2] = super_exptime; - v[3] = NULL; /* hash table, filled in by get_phase_ids */ - v[4] = super_sym; - v[5] = scheme_make_integer(flags); - - macro = scheme_alloc_object(); - macro->type = scheme_lazy_macro_type; - SCHEME_PTR1_VAL(macro) = (Scheme_Object *)get_phase_ids; - SCHEME_PTR2_VAL(macro) = (Scheme_Object *)v; - - return macro; -} - /*========================================================================*/ /* struct type */ /*========================================================================*/ diff --git a/src/mzscheme/src/stxobj.c b/src/mzscheme/src/stxobj.c index a3aeda1b03..8bec65a15b 100644 --- a/src/mzscheme/src/stxobj.c +++ b/src/mzscheme/src/stxobj.c @@ -3814,7 +3814,6 @@ static Scheme_Object *search_shared_pes(Scheme_Object *shared_pes, { Scheme_Object *pr, *idx, *pos, *src, *best_match = NULL; Scheme_Module_Phase_Exports *pt; - Scheme_Hash_Table *ht; int i, phase, best_match_len = -1, skip = 0; Scheme_Object *marks_cache = NULL; diff --git a/src/mzscheme/src/stypes.h b/src/mzscheme/src/stypes.h index 1220ff31f2..dfd293cf26 100644 --- a/src/mzscheme/src/stypes.h +++ b/src/mzscheme/src/stypes.h @@ -117,138 +117,137 @@ enum { scheme_rename_table_set_type, /* 99 */ scheme_module_type, /* 100 */ scheme_svector_type, /* 101 */ - scheme_lazy_macro_type, /* 102 */ - scheme_resolve_prefix_type, /* 103 */ - scheme_security_guard_type, /* 104 */ - scheme_indent_type, /* 105 */ - scheme_udp_type, /* 106 */ - scheme_udp_evt_type, /* 107 */ - scheme_tcp_accept_evt_type, /* 108 */ - scheme_id_macro_type, /* 109 */ - scheme_evt_set_type, /* 110 */ - scheme_wrap_evt_type, /* 111 */ - scheme_handle_evt_type, /* 112 */ - scheme_nack_guard_evt_type, /* 113 */ - scheme_semaphore_repost_type, /* 114 */ - scheme_channel_type, /* 115 */ - scheme_channel_put_type, /* 116 */ - scheme_thread_resume_type, /* 117 */ - scheme_thread_suspend_type, /* 118 */ - scheme_thread_dead_type, /* 119 */ - scheme_poll_evt_type, /* 120 */ - scheme_nack_evt_type, /* 121 */ - scheme_module_registry_type, /* 122 */ - scheme_thread_set_type, /* 123 */ - scheme_string_converter_type, /* 124 */ - scheme_alarm_type, /* 125 */ - scheme_thread_recv_evt_type, /* 126 */ - scheme_thread_cell_type, /* 127 */ - scheme_channel_syncer_type, /* 128 */ - scheme_special_comment_type, /* 129 */ - scheme_write_evt_type, /* 130 */ - scheme_always_evt_type, /* 131 */ - scheme_never_evt_type, /* 132 */ - scheme_progress_evt_type, /* 133 */ - scheme_certifications_type, /* 134 */ - scheme_already_comp_type, /* 135 */ - scheme_readtable_type, /* 136 */ - scheme_intdef_context_type, /* 137 */ - scheme_lexical_rib_type, /* 138 */ - scheme_thread_cell_values_type, /* 139 */ - scheme_global_ref_type, /* 140 */ - scheme_cont_mark_chain_type, /* 141 */ - scheme_raw_pair_type, /* 142 */ - scheme_prompt_type, /* 143 */ - scheme_prompt_tag_type, /* 144 */ - scheme_expanded_syntax_type, /* 145 */ - scheme_delay_syntax_type, /* 146 */ - scheme_cust_box_type, /* 147 */ - scheme_resolved_module_path_type, /* 148 */ - scheme_module_phase_exports_type, /* 149 */ - scheme_logger_type, /* 150 */ - scheme_log_reader_type, /* 151 */ - scheme_free_id_info_type, /* 152 */ - scheme_rib_delimiter_type, /* 153 */ - scheme_noninline_proc_type, /* 154 */ - scheme_prune_context_type, /* 155 */ + scheme_resolve_prefix_type, /* 102 */ + scheme_security_guard_type, /* 103 */ + scheme_indent_type, /* 104 */ + scheme_udp_type, /* 105 */ + scheme_udp_evt_type, /* 106 */ + scheme_tcp_accept_evt_type, /* 107 */ + scheme_id_macro_type, /* 108 */ + scheme_evt_set_type, /* 109 */ + scheme_wrap_evt_type, /* 110 */ + scheme_handle_evt_type, /* 111 */ + scheme_nack_guard_evt_type, /* 112 */ + scheme_semaphore_repost_type, /* 113 */ + scheme_channel_type, /* 114 */ + scheme_channel_put_type, /* 115 */ + scheme_thread_resume_type, /* 116 */ + scheme_thread_suspend_type, /* 117 */ + scheme_thread_dead_type, /* 118 */ + scheme_poll_evt_type, /* 119 */ + scheme_nack_evt_type, /* 120 */ + scheme_module_registry_type, /* 121 */ + scheme_thread_set_type, /* 122 */ + scheme_string_converter_type, /* 123 */ + scheme_alarm_type, /* 124 */ + scheme_thread_recv_evt_type, /* 125 */ + scheme_thread_cell_type, /* 126 */ + scheme_channel_syncer_type, /* 127 */ + scheme_special_comment_type, /* 128 */ + scheme_write_evt_type, /* 129 */ + scheme_always_evt_type, /* 130 */ + scheme_never_evt_type, /* 131 */ + scheme_progress_evt_type, /* 132 */ + scheme_certifications_type, /* 133 */ + scheme_already_comp_type, /* 134 */ + scheme_readtable_type, /* 135 */ + scheme_intdef_context_type, /* 136 */ + scheme_lexical_rib_type, /* 137 */ + scheme_thread_cell_values_type, /* 138 */ + scheme_global_ref_type, /* 139 */ + scheme_cont_mark_chain_type, /* 140 */ + scheme_raw_pair_type, /* 141 */ + scheme_prompt_type, /* 142 */ + scheme_prompt_tag_type, /* 143 */ + scheme_expanded_syntax_type, /* 144 */ + scheme_delay_syntax_type, /* 145 */ + scheme_cust_box_type, /* 146 */ + scheme_resolved_module_path_type, /* 147 */ + scheme_module_phase_exports_type, /* 148 */ + scheme_logger_type, /* 149 */ + scheme_log_reader_type, /* 150 */ + scheme_free_id_info_type, /* 151 */ + scheme_rib_delimiter_type, /* 152 */ + scheme_noninline_proc_type, /* 153 */ + scheme_prune_context_type, /* 154 */ #ifdef MZTAG_REQUIRED - _scheme_last_normal_type_, /* 156 */ + _scheme_last_normal_type_, /* 155 */ - scheme_rt_weak_array, /* 157 */ + scheme_rt_weak_array, /* 156 */ - scheme_rt_comp_env, /* 158 */ - scheme_rt_constant_binding, /* 159 */ - scheme_rt_resolve_info, /* 160 */ - scheme_rt_optimize_info, /* 161 */ - scheme_rt_compile_info, /* 162 */ - scheme_rt_cont_mark, /* 163 */ - scheme_rt_saved_stack, /* 164 */ - scheme_rt_reply_item, /* 165 */ - scheme_rt_closure_info, /* 166 */ - scheme_rt_overflow, /* 167 */ - scheme_rt_overflow_jmp, /* 168 */ - scheme_rt_meta_cont, /* 169 */ - scheme_rt_dyn_wind_cell, /* 170 */ - scheme_rt_dyn_wind_info, /* 171 */ - scheme_rt_dyn_wind, /* 172 */ - scheme_rt_dup_check, /* 173 */ - scheme_rt_thread_memory, /* 174 */ - scheme_rt_input_file, /* 175 */ - scheme_rt_input_fd, /* 176 */ - scheme_rt_oskit_console_input, /* 177 */ - scheme_rt_tested_input_file, /* 178 */ - scheme_rt_tested_output_file, /* 179 */ - scheme_rt_indexed_string, /* 180 */ - scheme_rt_output_file, /* 181 */ - scheme_rt_load_handler_data, /* 182 */ - scheme_rt_pipe, /* 183 */ - scheme_rt_beos_process, /* 184 */ - scheme_rt_system_child, /* 185 */ - scheme_rt_tcp, /* 186 */ - scheme_rt_write_data, /* 187 */ - scheme_rt_tcp_select_info, /* 188 */ - scheme_rt_namespace_option, /* 189 */ - scheme_rt_param_data, /* 190 */ - scheme_rt_will, /* 191 */ - scheme_rt_struct_proc_info, /* 192 */ - scheme_rt_linker_name, /* 193 */ - scheme_rt_param_map, /* 194 */ - scheme_rt_finalization, /* 195 */ - scheme_rt_finalizations, /* 196 */ - scheme_rt_cpp_object, /* 197 */ - scheme_rt_cpp_array_object, /* 198 */ - scheme_rt_stack_object, /* 199 */ - scheme_rt_preallocated_object, /* 200 */ - scheme_thread_hop_type, /* 201 */ - scheme_rt_srcloc, /* 202 */ - scheme_rt_evt, /* 203 */ - scheme_rt_syncing, /* 204 */ - scheme_rt_comp_prefix, /* 205 */ - scheme_rt_user_input, /* 206 */ - scheme_rt_user_output, /* 207 */ - scheme_rt_compact_port, /* 208 */ - scheme_rt_read_special_dw, /* 209 */ - scheme_rt_regwork, /* 210 */ - scheme_rt_buf_holder, /* 211 */ - scheme_rt_parameterization, /* 212 */ - scheme_rt_print_params, /* 213 */ - scheme_rt_read_params, /* 214 */ - scheme_rt_native_code, /* 215 */ - scheme_rt_native_code_plus_case, /* 216 */ - scheme_rt_jitter_data, /* 217 */ - scheme_rt_module_exports, /* 218 */ - scheme_rt_delay_load_info, /* 219 */ - scheme_rt_marshal_info, /* 220 */ - scheme_rt_unmarshal_info, /* 221 */ - scheme_rt_runstack, /* 222 */ - scheme_rt_sfs_info, /* 223 */ - scheme_rt_validate_clearing, /* 224 */ - scheme_rt_rb_node, /* 225 */ + scheme_rt_comp_env, /* 157 */ + scheme_rt_constant_binding, /* 158 */ + scheme_rt_resolve_info, /* 159 */ + scheme_rt_optimize_info, /* 160 */ + scheme_rt_compile_info, /* 161 */ + scheme_rt_cont_mark, /* 162 */ + scheme_rt_saved_stack, /* 163 */ + scheme_rt_reply_item, /* 164 */ + scheme_rt_closure_info, /* 165 */ + scheme_rt_overflow, /* 166 */ + scheme_rt_overflow_jmp, /* 167 */ + scheme_rt_meta_cont, /* 168 */ + scheme_rt_dyn_wind_cell, /* 169 */ + scheme_rt_dyn_wind_info, /* 170 */ + scheme_rt_dyn_wind, /* 171 */ + scheme_rt_dup_check, /* 172 */ + scheme_rt_thread_memory, /* 173 */ + scheme_rt_input_file, /* 174 */ + scheme_rt_input_fd, /* 175 */ + scheme_rt_oskit_console_input, /* 176 */ + scheme_rt_tested_input_file, /* 177 */ + scheme_rt_tested_output_file, /* 178 */ + scheme_rt_indexed_string, /* 179 */ + scheme_rt_output_file, /* 180 */ + scheme_rt_load_handler_data, /* 181 */ + scheme_rt_pipe, /* 182 */ + scheme_rt_beos_process, /* 183 */ + scheme_rt_system_child, /* 184 */ + scheme_rt_tcp, /* 185 */ + scheme_rt_write_data, /* 186 */ + scheme_rt_tcp_select_info, /* 187 */ + scheme_rt_namespace_option, /* 188 */ + scheme_rt_param_data, /* 189 */ + scheme_rt_will, /* 190 */ + scheme_rt_struct_proc_info, /* 191 */ + scheme_rt_linker_name, /* 192 */ + scheme_rt_param_map, /* 193 */ + scheme_rt_finalization, /* 194 */ + scheme_rt_finalizations, /* 195 */ + scheme_rt_cpp_object, /* 196 */ + scheme_rt_cpp_array_object, /* 197 */ + scheme_rt_stack_object, /* 198 */ + scheme_rt_preallocated_object, /* 199 */ + scheme_thread_hop_type, /* 200 */ + scheme_rt_srcloc, /* 201 */ + scheme_rt_evt, /* 202 */ + scheme_rt_syncing, /* 203 */ + scheme_rt_comp_prefix, /* 204 */ + scheme_rt_user_input, /* 205 */ + scheme_rt_user_output, /* 206 */ + scheme_rt_compact_port, /* 207 */ + scheme_rt_read_special_dw, /* 208 */ + scheme_rt_regwork, /* 209 */ + scheme_rt_buf_holder, /* 210 */ + scheme_rt_parameterization, /* 211 */ + scheme_rt_print_params, /* 212 */ + scheme_rt_read_params, /* 213 */ + scheme_rt_native_code, /* 214 */ + scheme_rt_native_code_plus_case, /* 215 */ + scheme_rt_jitter_data, /* 216 */ + scheme_rt_module_exports, /* 217 */ + scheme_rt_delay_load_info, /* 218 */ + scheme_rt_marshal_info, /* 219 */ + scheme_rt_unmarshal_info, /* 220 */ + scheme_rt_runstack, /* 221 */ + scheme_rt_sfs_info, /* 222 */ + scheme_rt_validate_clearing, /* 223 */ + scheme_rt_rb_node, /* 224 */ #endif - scheme_place_type, /* 226 */ - scheme_engine_type, /* 227 */ + scheme_place_type, /* 225 */ + scheme_engine_type, /* 226 */ _scheme_last_type_ }; diff --git a/src/mzscheme/src/type.c b/src/mzscheme/src/type.c index 9ec85a27d5..acc68f8551 100644 --- a/src/mzscheme/src/type.c +++ b/src/mzscheme/src/type.c @@ -160,7 +160,6 @@ scheme_init_type () set_name(scheme_keyword_type, ""); set_name(scheme_syntax_compiler_type, ""); set_name(scheme_macro_type, ""); - set_name(scheme_lazy_macro_type, ""); set_name(scheme_vector_type, ""); set_name(scheme_bignum_type, ""); set_name(scheme_escaping_cont_type, ""); @@ -552,7 +551,6 @@ void scheme_register_traversers(void) GC_REG_TRAV(scheme_void_type, char_obj); /* small */ GC_REG_TRAV(scheme_syntax_compiler_type, syntax_compiler); GC_REG_TRAV(scheme_macro_type, small_object); - GC_REG_TRAV(scheme_lazy_macro_type, second_of_cons); GC_REG_TRAV(scheme_box_type, small_object); GC_REG_TRAV(scheme_thread_type, thread_val); GC_REG_TRAV(scheme_prompt_type, prompt_val);