diff --git a/collects/compiler/decompile.rkt b/collects/compiler/decompile.rkt index fdf1904256..ac8808a940 100644 --- a/collects/compiler/decompile.rkt +++ b/collects/compiler/decompile.rkt @@ -161,7 +161,8 @@ (define (mpi->string modidx) (cond [(symbol? modidx) modidx] - [else (collapse-module-path-index modidx (current-directory))])) + [else + (collapse-module-path-index modidx (current-directory))])) (define (decompile-module mod-form orig-stack stx-ht mod-name) (match mod-form diff --git a/collects/compiler/zo-marshal.rkt b/collects/compiler/zo-marshal.rkt index c2c6754cd4..a05194725d 100644 --- a/collects/compiler/zo-marshal.rkt +++ b/collects/compiler/zo-marshal.rkt @@ -895,7 +895,9 @@ (out-byte CPT_MODULE_INDEX out) (let-values ([(name base) (module-path-index-split v)]) (out-anything name out) - (out-anything base out))] + (out-anything base out) + (unless (or name base) + (out-anything (module-path-index-submodule v) out)))] [(stx encoded) (out-byte CPT_STX out) (out-anything encoded out)] diff --git a/collects/compiler/zo-parse.rkt b/collects/compiler/zo-parse.rkt index 56c81345ed..4ddf836aab 100644 --- a/collects/compiler/zo-parse.rkt +++ b/collects/compiler/zo-parse.rkt @@ -840,7 +840,12 @@ (eq? cpt-tag 'let-one-unused))] [(branch) (make-branch (read-compact cp) (read-compact cp) (read-compact cp))] - [(module-index) (module-path-index-join (read-compact cp) (read-compact cp))] + [(module-index) + (define name (read-compact cp)) + (define base (read-compact cp)) + (if (or name base) + (module-path-index-join name base) + (module-path-index-join #f #f (read-compact cp)))] [(module-var) (let ([mod (read-compact cp)] [var (read-compact cp)] diff --git a/src/racket/src/cstartup.inc b/src/racket/src/cstartup.inc index fcb0f4e3ae..e0e0213692 100644 --- a/src/racket/src/cstartup.inc +++ b/src/racket/src/cstartup.inc @@ -1,105 +1,105 @@ { - SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,53,46,51,46,48,46,51,84,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,51,0,0,0,1,0,0,10,0,13,0, -20,0,24,0,37,0,41,0,48,0,53,0,60,0,65,0,68,0,73,0,82, -0,85,0,91,0,105,0,119,0,122,0,128,0,132,0,134,0,145,0,147,0, -161,0,168,0,190,0,192,0,206,0,17,1,46,1,57,1,68,1,93,1,126, -1,159,1,218,1,17,2,95,2,150,2,155,2,175,2,68,3,88,3,140,3, -206,3,95,4,237,4,34,5,45,5,124,5,0,0,86,7,0,0,69,35,37, -109,105,110,45,115,116,120,29,11,11,66,100,101,102,105,110,101,63,97,110,100, -72,112,97,114,97,109,101,116,101,114,105,122,101,63,108,101,116,66,117,110,108, -101,115,115,64,99,111,110,100,66,108,101,116,114,101,99,64,108,101,116,42,62, -111,114,64,119,104,101,110,68,104,101,114,101,45,115,116,120,29,11,11,65,113, -117,111,116,101,29,94,2,15,68,35,37,107,101,114,110,101,108,11,29,94,2, -15,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,36,11,8,240,249,81, -0,0,95,159,2,17,36,36,159,2,16,36,36,159,2,16,36,36,16,20,2, -3,2,2,2,4,2,2,2,5,2,2,2,6,2,2,2,7,2,2,2,10, -2,2,2,8,2,2,2,9,2,2,2,11,2,2,2,12,2,2,97,37,11, -8,240,249,81,0,0,93,159,2,16,36,37,16,2,2,13,161,2,2,37,2, -13,2,2,2,13,96,38,11,8,240,249,81,0,0,16,0,96,11,11,8,240, -249,81,0,0,16,0,18,98,64,104,101,114,101,13,16,5,36,2,14,2,2, -11,11,8,32,8,31,8,30,8,29,27,248,22,156,4,195,249,22,149,4,80, -158,39,36,251,22,83,2,18,248,22,98,199,12,249,22,73,2,19,248,22,100, -201,27,248,22,156,4,195,249,22,149,4,80,158,39,36,251,22,83,2,18,248, -22,98,199,249,22,73,2,19,248,22,100,201,12,27,248,22,75,248,22,156,4, -196,28,248,22,81,193,20,14,159,37,36,37,28,248,22,81,248,22,75,194,248, -22,74,193,249,22,149,4,80,158,39,36,251,22,83,2,18,248,22,74,199,249, -22,73,2,4,248,22,75,201,11,18,100,10,13,16,5,36,2,14,2,2,11, -11,8,32,8,31,8,30,8,29,16,4,11,11,2,20,3,1,8,101,110,118, -49,53,53,52,52,16,4,11,11,2,21,3,1,8,101,110,118,49,53,53,52, -53,27,248,22,75,248,22,156,4,196,28,248,22,81,193,20,14,159,37,36,37, -28,248,22,81,248,22,75,194,248,22,74,193,249,22,149,4,80,158,39,36,250, -22,83,2,22,248,22,83,249,22,83,248,22,83,2,23,248,22,74,201,251,22, -83,2,18,2,23,2,23,249,22,73,2,11,248,22,75,204,18,100,11,13,16, -5,36,2,14,2,2,11,11,8,32,8,31,8,30,8,29,16,4,11,11,2, -20,3,1,8,101,110,118,49,53,53,52,55,16,4,11,11,2,21,3,1,8, -101,110,118,49,53,53,52,56,248,22,156,4,193,27,248,22,156,4,194,249,22, -73,248,22,83,248,22,74,196,248,22,75,195,27,248,22,75,248,22,156,4,23, -197,1,249,22,149,4,80,158,39,36,28,248,22,58,248,22,150,4,248,22,74, -23,198,2,27,249,22,2,32,0,88,163,8,36,37,43,11,9,222,33,40,248, -22,156,4,248,22,98,23,200,2,250,22,83,2,24,248,22,83,249,22,83,248, -22,83,248,22,74,23,204,2,250,22,84,2,25,249,22,2,22,74,23,204,2, -248,22,100,23,206,2,249,22,73,248,22,74,23,202,1,249,22,2,22,98,23, -200,1,250,22,84,2,22,249,22,2,32,0,88,163,8,36,37,47,11,9,222, -33,41,248,22,156,4,248,22,74,201,248,22,75,198,27,248,22,156,4,194,249, -22,73,248,22,83,248,22,74,196,248,22,75,195,27,248,22,75,248,22,156,4, -23,197,1,249,22,149,4,80,158,39,36,250,22,84,2,24,249,22,2,32,0, -88,163,8,36,37,47,11,9,222,33,43,248,22,156,4,248,22,74,201,248,22, -75,198,27,248,22,75,248,22,156,4,196,27,248,22,156,4,248,22,74,195,249, -22,149,4,80,158,40,36,28,248,22,81,195,250,22,84,2,22,9,248,22,75, -199,250,22,83,2,6,248,22,83,248,22,74,199,250,22,84,2,10,248,22,75, -201,248,22,75,202,27,248,22,75,248,22,156,4,23,197,1,27,249,22,1,22, -87,249,22,2,22,156,4,248,22,156,4,248,22,74,199,248,22,176,4,249,22, -149,4,80,158,41,36,251,22,83,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,26,250,22,84,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,26,202,250,22,84,2,22,9,248, -22,75,204,27,248,22,75,248,22,156,4,196,28,248,22,81,193,20,14,159,37, -36,37,249,22,149,4,80,158,39,36,27,248,22,156,4,248,22,74,197,28,249, -22,143,9,62,61,62,248,22,150,4,248,22,98,196,250,22,83,2,22,248,22, -83,249,22,83,21,93,2,27,248,22,74,199,250,22,84,2,8,249,22,83,2, -27,249,22,83,248,22,107,203,2,27,248,22,75,202,251,22,83,2,18,28,249, -22,143,9,248,22,150,4,248,22,74,200,64,101,108,115,101,10,248,22,74,197, -250,22,84,2,22,9,248,22,75,200,249,22,73,2,8,248,22,75,202,99,13, -16,5,36,2,14,2,2,11,11,8,32,8,31,8,30,8,29,16,4,11,11, -2,20,3,1,8,101,110,118,49,53,53,55,48,16,4,11,11,2,21,3,1, -8,101,110,118,49,53,53,55,49,18,158,94,10,64,118,111,105,100,8,48,27, -248,22,75,248,22,156,4,196,249,22,149,4,80,158,39,36,28,248,22,58,248, -22,150,4,248,22,74,197,250,22,83,2,28,248,22,83,248,22,74,199,248,22, -98,198,27,248,22,150,4,248,22,74,197,250,22,83,2,28,248,22,83,248,22, -74,197,250,22,84,2,25,248,22,75,199,248,22,75,202,159,36,20,113,159,36, -16,1,11,16,0,20,26,149,9,2,1,2,1,2,2,9,9,11,11,11,10, -36,80,158,36,36,20,113,159,36,16,0,16,0,38,39,36,16,0,36,16,0, -36,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,36,46,37, -16,0,36,16,1,2,13,37,11,11,11,16,0,16,0,16,0,36,36,11,12, -11,11,16,0,16,0,16,0,36,36,16,11,16,5,11,20,15,16,2,20,14, -159,36,36,37,80,158,36,36,36,20,113,159,36,16,1,2,13,16,1,33,33, -10,16,5,2,7,88,163,8,36,37,53,37,9,223,0,33,34,36,20,113,159, -36,16,1,2,13,16,0,11,16,5,2,12,88,163,8,36,37,53,37,9,223, -0,33,35,36,20,113,159,36,16,1,2,13,16,0,11,16,5,2,4,88,163, -8,36,37,53,37,9,223,0,33,36,36,20,113,159,36,16,1,2,13,16,1, -33,37,11,16,5,2,11,88,163,8,36,37,56,37,9,223,0,33,38,36,20, -113,159,36,16,1,2,13,16,1,33,39,11,16,5,2,6,88,163,8,36,37, -58,37,9,223,0,33,42,36,20,113,159,36,16,1,2,13,16,0,11,16,5, -2,9,88,163,8,36,37,53,37,9,223,0,33,44,36,20,113,159,36,16,1, -2,13,16,0,11,16,5,2,10,88,163,8,36,37,54,37,9,223,0,33,45, -36,20,113,159,36,16,1,2,13,16,0,11,16,5,2,5,88,163,8,36,37, -56,37,9,223,0,33,46,36,20,113,159,36,16,1,2,13,16,0,11,16,5, -2,8,88,163,8,36,37,58,37,9,223,0,33,47,36,20,113,159,36,16,1, -2,13,16,1,33,49,11,16,5,2,3,88,163,8,36,37,54,37,9,223,0, -33,50,36,20,113,159,36,16,1,2,13,16,0,11,16,0,94,2,16,2,17, -93,2,16,9,9,36,0}; - EVAL_ONE_SIZED_STR((char *)expr, 2022); + SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,53,46,51,46,48,46,52,84,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,51,0,0,0,1,0,0,10,0,14,0, +21,0,25,0,38,0,42,0,49,0,54,0,61,0,66,0,69,0,74,0,83, +0,87,0,93,0,107,0,121,0,124,0,130,0,134,0,136,0,147,0,149,0, +163,0,170,0,192,0,194,0,208,0,19,1,48,1,59,1,70,1,95,1,128, +1,161,1,220,1,19,2,97,2,152,2,157,2,177,2,70,3,90,3,142,3, +208,3,97,4,239,4,36,5,47,5,126,5,0,0,88,7,0,0,69,35,37, +109,105,110,45,115,116,120,29,11,11,11,66,100,101,102,105,110,101,63,97,110, +100,72,112,97,114,97,109,101,116,101,114,105,122,101,63,108,101,116,66,117,110, +108,101,115,115,64,99,111,110,100,66,108,101,116,114,101,99,64,108,101,116,42, +62,111,114,64,119,104,101,110,68,104,101,114,101,45,115,116,120,29,11,11,11, +65,113,117,111,116,101,29,94,2,15,68,35,37,107,101,114,110,101,108,11,29, +94,2,15,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,36,11,8,240, +249,81,0,0,95,159,2,17,36,36,159,2,16,36,36,159,2,16,36,36,16, +20,2,3,2,2,2,4,2,2,2,5,2,2,2,6,2,2,2,7,2,2, +2,10,2,2,2,8,2,2,2,9,2,2,2,11,2,2,2,12,2,2,97, +37,11,8,240,249,81,0,0,93,159,2,16,36,37,16,2,2,13,161,2,2, +37,2,13,2,2,2,13,96,38,11,8,240,249,81,0,0,16,0,96,11,11, +8,240,249,81,0,0,16,0,18,98,64,104,101,114,101,13,16,5,36,2,14, +2,2,11,11,8,32,8,31,8,30,8,29,27,248,22,156,4,195,249,22,149, +4,80,158,39,36,251,22,83,2,18,248,22,98,199,12,249,22,73,2,19,248, +22,100,201,27,248,22,156,4,195,249,22,149,4,80,158,39,36,251,22,83,2, +18,248,22,98,199,249,22,73,2,19,248,22,100,201,12,27,248,22,75,248,22, +156,4,196,28,248,22,81,193,20,14,159,37,36,37,28,248,22,81,248,22,75, +194,248,22,74,193,249,22,149,4,80,158,39,36,251,22,83,2,18,248,22,74, +199,249,22,73,2,4,248,22,75,201,11,18,100,10,13,16,5,36,2,14,2, +2,11,11,8,32,8,31,8,30,8,29,16,4,11,11,2,20,3,1,8,101, +110,118,49,53,53,52,52,16,4,11,11,2,21,3,1,8,101,110,118,49,53, +53,52,53,27,248,22,75,248,22,156,4,196,28,248,22,81,193,20,14,159,37, +36,37,28,248,22,81,248,22,75,194,248,22,74,193,249,22,149,4,80,158,39, +36,250,22,83,2,22,248,22,83,249,22,83,248,22,83,2,23,248,22,74,201, +251,22,83,2,18,2,23,2,23,249,22,73,2,11,248,22,75,204,18,100,11, +13,16,5,36,2,14,2,2,11,11,8,32,8,31,8,30,8,29,16,4,11, +11,2,20,3,1,8,101,110,118,49,53,53,52,55,16,4,11,11,2,21,3, +1,8,101,110,118,49,53,53,52,56,248,22,156,4,193,27,248,22,156,4,194, +249,22,73,248,22,83,248,22,74,196,248,22,75,195,27,248,22,75,248,22,156, +4,23,197,1,249,22,149,4,80,158,39,36,28,248,22,58,248,22,150,4,248, +22,74,23,198,2,27,249,22,2,32,0,88,163,8,36,37,43,11,9,222,33, +40,248,22,156,4,248,22,98,23,200,2,250,22,83,2,24,248,22,83,249,22, +83,248,22,83,248,22,74,23,204,2,250,22,84,2,25,249,22,2,22,74,23, +204,2,248,22,100,23,206,2,249,22,73,248,22,74,23,202,1,249,22,2,22, +98,23,200,1,250,22,84,2,22,249,22,2,32,0,88,163,8,36,37,47,11, +9,222,33,41,248,22,156,4,248,22,74,201,248,22,75,198,27,248,22,156,4, +194,249,22,73,248,22,83,248,22,74,196,248,22,75,195,27,248,22,75,248,22, +156,4,23,197,1,249,22,149,4,80,158,39,36,250,22,84,2,24,249,22,2, +32,0,88,163,8,36,37,47,11,9,222,33,43,248,22,156,4,248,22,74,201, +248,22,75,198,27,248,22,75,248,22,156,4,196,27,248,22,156,4,248,22,74, +195,249,22,149,4,80,158,40,36,28,248,22,81,195,250,22,84,2,22,9,248, +22,75,199,250,22,83,2,6,248,22,83,248,22,74,199,250,22,84,2,10,248, +22,75,201,248,22,75,202,27,248,22,75,248,22,156,4,23,197,1,27,249,22, +1,22,87,249,22,2,22,156,4,248,22,156,4,248,22,74,199,248,22,176,4, +249,22,149,4,80,158,41,36,251,22,83,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,26,250,22,84,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,26,202,250,22,84,2,22, +9,248,22,75,204,27,248,22,75,248,22,156,4,196,28,248,22,81,193,20,14, +159,37,36,37,249,22,149,4,80,158,39,36,27,248,22,156,4,248,22,74,197, +28,249,22,143,9,62,61,62,248,22,150,4,248,22,98,196,250,22,83,2,22, +248,22,83,249,22,83,21,93,2,27,248,22,74,199,250,22,84,2,8,249,22, +83,2,27,249,22,83,248,22,107,203,2,27,248,22,75,202,251,22,83,2,18, +28,249,22,143,9,248,22,150,4,248,22,74,200,64,101,108,115,101,10,248,22, +74,197,250,22,84,2,22,9,248,22,75,200,249,22,73,2,8,248,22,75,202, +99,13,16,5,36,2,14,2,2,11,11,8,32,8,31,8,30,8,29,16,4, +11,11,2,20,3,1,8,101,110,118,49,53,53,55,48,16,4,11,11,2,21, +3,1,8,101,110,118,49,53,53,55,49,18,158,94,10,64,118,111,105,100,8, +48,27,248,22,75,248,22,156,4,196,249,22,149,4,80,158,39,36,28,248,22, +58,248,22,150,4,248,22,74,197,250,22,83,2,28,248,22,83,248,22,74,199, +248,22,98,198,27,248,22,150,4,248,22,74,197,250,22,83,2,28,248,22,83, +248,22,74,197,250,22,84,2,25,248,22,75,199,248,22,75,202,159,36,20,113, +159,36,16,1,11,16,0,20,26,149,9,2,1,2,1,2,2,9,9,11,11, +11,10,36,80,158,36,36,20,113,159,36,16,0,16,0,38,39,36,16,0,36, +16,0,36,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,36, +46,37,16,0,36,16,1,2,13,37,11,11,11,16,0,16,0,16,0,36,36, +11,12,11,11,16,0,16,0,16,0,36,36,16,11,16,5,11,20,15,16,2, +20,14,159,36,36,37,80,158,36,36,36,20,113,159,36,16,1,2,13,16,1, +33,33,10,16,5,2,7,88,163,8,36,37,53,37,9,223,0,33,34,36,20, +113,159,36,16,1,2,13,16,0,11,16,5,2,12,88,163,8,36,37,53,37, +9,223,0,33,35,36,20,113,159,36,16,1,2,13,16,0,11,16,5,2,4, +88,163,8,36,37,53,37,9,223,0,33,36,36,20,113,159,36,16,1,2,13, +16,1,33,37,11,16,5,2,11,88,163,8,36,37,56,37,9,223,0,33,38, +36,20,113,159,36,16,1,2,13,16,1,33,39,11,16,5,2,6,88,163,8, +36,37,58,37,9,223,0,33,42,36,20,113,159,36,16,1,2,13,16,0,11, +16,5,2,9,88,163,8,36,37,53,37,9,223,0,33,44,36,20,113,159,36, +16,1,2,13,16,0,11,16,5,2,10,88,163,8,36,37,54,37,9,223,0, +33,45,36,20,113,159,36,16,1,2,13,16,0,11,16,5,2,5,88,163,8, +36,37,56,37,9,223,0,33,46,36,20,113,159,36,16,1,2,13,16,0,11, +16,5,2,8,88,163,8,36,37,58,37,9,223,0,33,47,36,20,113,159,36, +16,1,2,13,16,1,33,49,11,16,5,2,3,88,163,8,36,37,54,37,9, +223,0,33,50,36,20,113,159,36,16,1,2,13,16,0,11,16,0,94,2,16, +2,17,93,2,16,9,9,36,0}; + EVAL_ONE_SIZED_STR((char *)expr, 2024); } { - SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,53,46,51,46,48,46,51,84,0,0,0,0,0,0,0,0,0,0, + SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,53,46,51,46,48,46,52,84,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,109,0,0,0,1,0,0,8,0,21,0, 26,0,43,0,65,0,94,0,109,0,127,0,139,0,155,0,169,0,191,0,207, 0,224,0,246,0,1,1,7,1,16,1,23,1,30,1,42,1,58,1,82,1, @@ -111,7 +111,7 @@ 16,253,16,103,17,166,17,168,17,24,18,84,18,89,18,212,18,223,18,103,19, 113,19,39,21,61,21,70,21,63,22,81,22,95,22,54,23,73,23,11,26,125, 30,36,31,181,31,166,32,148,33,155,33,162,33,243,33,70,34,155,34,181,34, -54,35,0,0,193,39,0,0,67,35,37,117,116,105,108,115,72,112,97,116,104, +54,35,0,0,194,39,0,0,67,35,37,117,116,105,108,115,72,112,97,116,104, 45,115,116,114,105,110,103,63,64,98,115,98,115,76,110,111,114,109,97,108,45, 99,97,115,101,45,112,97,116,104,1,20,102,105,110,100,45,101,120,101,99,117, 116,97,98,108,101,45,112,97,116,104,1,27,112,97,116,104,45,108,105,115,116, @@ -541,68 +541,68 @@ 2,23,194,1,86,94,23,194,1,36,249,22,191,5,23,199,1,20,20,95,88, 163,8,36,36,48,11,9,224,4,2,33,107,23,195,1,23,197,1,27,248,22, 176,5,23,195,1,248,80,159,39,8,32,39,193,159,36,20,113,159,36,16,1, -11,16,0,20,26,144,9,2,1,2,1,29,11,11,9,9,11,11,11,10,43, -80,158,36,36,20,113,159,40,16,29,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,2,16,30,2, -19,76,102,105,110,100,45,108,105,110,107,115,45,112,97,116,104,33,4,30,2, -20,1,20,112,97,114,97,109,101,116,101,114,105,122,97,116,105,111,110,45,107, -101,121,6,30,2,20,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,3,2,21,2,22,2,23,30,2,19,1, -21,101,120,99,101,112,116,105,111,110,45,104,97,110,100,108,101,114,45,107,101, -121,2,2,24,2,25,2,26,2,27,2,28,2,29,2,30,16,0,37,39,36, -16,0,36,16,13,2,8,2,9,2,7,2,3,2,25,2,23,2,21,2,16, -2,22,2,24,2,14,2,13,2,15,49,11,11,11,16,12,2,12,2,10,2, -30,2,11,2,5,2,29,2,28,2,4,2,27,2,6,2,26,2,2,16,12, -11,11,11,11,11,11,11,11,11,11,11,11,16,12,2,12,2,10,2,30,2, -11,2,5,2,29,2,28,2,4,2,27,2,6,2,26,2,2,48,48,37,12, -11,11,16,0,16,0,16,0,36,36,11,12,11,11,16,0,16,0,16,0,36, -36,16,29,20,15,16,2,88,163,8,36,37,51,16,4,36,39,37,36,2,31, -223,0,33,50,80,159,36,8,32,39,20,15,16,2,88,163,8,36,37,56,16, -2,44,8,240,0,128,0,0,2,31,223,0,33,51,80,159,36,8,31,39,20, -15,16,2,88,163,8,36,37,51,16,2,44,8,240,0,64,0,0,2,31,223, -0,33,52,80,159,36,8,30,39,20,15,16,2,88,163,8,36,37,51,16,2, -44,8,128,128,2,31,223,0,33,53,80,159,36,8,29,39,20,15,16,2,32, -0,88,163,36,37,45,11,2,2,222,33,54,80,159,36,36,37,20,15,16,2, -249,22,135,7,7,92,7,92,80,159,36,37,37,20,15,16,2,88,163,36,37, -54,38,2,4,223,0,33,55,80,159,36,38,37,20,15,16,2,20,25,96,2, -5,88,163,8,36,39,8,25,52,9,223,0,33,62,88,163,36,38,47,44,9, -223,0,33,63,88,163,36,37,46,44,9,223,0,33,64,80,159,36,39,37,20, -15,16,2,27,248,22,144,15,248,22,147,8,27,28,249,22,143,9,247,22,155, -8,2,34,6,1,1,59,6,1,1,58,250,22,181,7,6,14,14,40,91,94, -126,97,93,42,41,126,97,40,46,42,41,23,196,2,23,196,1,88,163,8,36, -38,48,11,2,6,223,0,33,68,80,159,36,40,37,20,15,16,2,32,0,88, -163,8,36,38,50,11,2,7,222,33,69,80,159,36,41,37,20,15,16,2,32, -0,88,163,8,36,39,51,11,2,8,222,33,71,80,159,36,42,37,20,15,16, -2,32,0,88,163,8,36,38,46,11,2,9,222,33,72,80,159,36,43,37,20, -15,16,2,88,163,45,39,52,8,128,8,2,10,223,0,33,74,80,159,36,44, -37,20,15,16,2,88,163,45,40,53,8,128,8,2,12,223,0,33,76,80,159, -36,46,37,20,15,16,2,248,22,136,15,70,108,105,110,107,115,45,102,105,108, -101,80,159,36,47,37,20,15,16,2,247,22,133,2,80,158,36,48,20,15,16, -2,2,77,80,158,36,49,20,15,16,2,248,80,159,37,51,37,88,163,36,36, -49,8,240,8,0,3,0,9,223,1,33,78,80,159,36,50,37,20,15,16,2, -247,22,133,2,80,158,36,54,20,15,16,2,2,77,80,158,36,55,20,15,16, -2,88,163,36,37,44,8,240,0,120,47,0,2,23,223,0,33,89,80,159,36, -56,37,20,15,16,2,88,163,36,38,56,8,240,0,0,64,0,2,24,223,0, -33,91,80,159,36,58,37,20,15,16,2,88,163,36,40,59,8,240,0,64,80, -0,2,11,223,0,33,98,80,159,36,45,37,20,15,16,2,32,0,88,163,36, -39,50,11,2,25,222,33,99,80,159,36,59,37,20,15,16,2,32,0,88,163, -36,38,53,11,2,26,222,33,100,80,159,36,8,24,37,20,15,16,2,32,0, -88,163,36,38,54,11,2,27,222,33,101,80,159,36,8,25,37,20,15,16,2, -20,27,158,32,0,88,163,36,37,44,11,2,28,222,33,102,32,0,88,163,36, -37,44,11,2,28,222,33,103,80,159,36,8,26,37,20,15,16,2,20,25,96, -2,29,88,163,36,36,53,16,2,52,8,128,128,9,223,0,33,104,88,163,36, -37,54,16,2,52,8,240,0,64,0,0,9,223,0,33,105,88,163,36,38,55, -16,2,52,8,240,0,128,0,0,9,223,0,33,106,80,159,36,8,27,37,20, -15,16,2,88,163,8,36,39,54,16,4,44,36,37,36,2,30,223,0,33,108, -80,159,36,8,28,37,95,29,94,2,17,68,35,37,107,101,114,110,101,108,11, -29,94,2,17,69,35,37,109,105,110,45,115,116,120,11,2,19,9,9,9,36, -0}; - EVAL_ONE_SIZED_STR((char *)expr, 10437); +11,16,0,20,26,144,9,2,1,2,1,29,11,11,11,9,9,11,11,11,10, +43,80,158,36,36,20,113,159,40,16,29,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,2,16,30, +2,19,76,102,105,110,100,45,108,105,110,107,115,45,112,97,116,104,33,4,30, +2,20,1,20,112,97,114,97,109,101,116,101,114,105,122,97,116,105,111,110,45, +107,101,121,6,30,2,20,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,3,2,21,2,22,2,23,30,2,19, +1,21,101,120,99,101,112,116,105,111,110,45,104,97,110,100,108,101,114,45,107, +101,121,2,2,24,2,25,2,26,2,27,2,28,2,29,2,30,16,0,37,39, +36,16,0,36,16,13,2,8,2,9,2,7,2,3,2,25,2,23,2,21,2, +16,2,22,2,24,2,14,2,13,2,15,49,11,11,11,16,12,2,12,2,10, +2,30,2,11,2,5,2,29,2,28,2,4,2,27,2,6,2,26,2,2,16, +12,11,11,11,11,11,11,11,11,11,11,11,11,16,12,2,12,2,10,2,30, +2,11,2,5,2,29,2,28,2,4,2,27,2,6,2,26,2,2,48,48,37, +12,11,11,16,0,16,0,16,0,36,36,11,12,11,11,16,0,16,0,16,0, +36,36,16,29,20,15,16,2,88,163,8,36,37,51,16,4,36,39,37,36,2, +31,223,0,33,50,80,159,36,8,32,39,20,15,16,2,88,163,8,36,37,56, +16,2,44,8,240,0,128,0,0,2,31,223,0,33,51,80,159,36,8,31,39, +20,15,16,2,88,163,8,36,37,51,16,2,44,8,240,0,64,0,0,2,31, +223,0,33,52,80,159,36,8,30,39,20,15,16,2,88,163,8,36,37,51,16, +2,44,8,128,128,2,31,223,0,33,53,80,159,36,8,29,39,20,15,16,2, +32,0,88,163,36,37,45,11,2,2,222,33,54,80,159,36,36,37,20,15,16, +2,249,22,135,7,7,92,7,92,80,159,36,37,37,20,15,16,2,88,163,36, +37,54,38,2,4,223,0,33,55,80,159,36,38,37,20,15,16,2,20,25,96, +2,5,88,163,8,36,39,8,25,52,9,223,0,33,62,88,163,36,38,47,44, +9,223,0,33,63,88,163,36,37,46,44,9,223,0,33,64,80,159,36,39,37, +20,15,16,2,27,248,22,144,15,248,22,147,8,27,28,249,22,143,9,247,22, +155,8,2,34,6,1,1,59,6,1,1,58,250,22,181,7,6,14,14,40,91, +94,126,97,93,42,41,126,97,40,46,42,41,23,196,2,23,196,1,88,163,8, +36,38,48,11,2,6,223,0,33,68,80,159,36,40,37,20,15,16,2,32,0, +88,163,8,36,38,50,11,2,7,222,33,69,80,159,36,41,37,20,15,16,2, +32,0,88,163,8,36,39,51,11,2,8,222,33,71,80,159,36,42,37,20,15, +16,2,32,0,88,163,8,36,38,46,11,2,9,222,33,72,80,159,36,43,37, +20,15,16,2,88,163,45,39,52,8,128,8,2,10,223,0,33,74,80,159,36, +44,37,20,15,16,2,88,163,45,40,53,8,128,8,2,12,223,0,33,76,80, +159,36,46,37,20,15,16,2,248,22,136,15,70,108,105,110,107,115,45,102,105, +108,101,80,159,36,47,37,20,15,16,2,247,22,133,2,80,158,36,48,20,15, +16,2,2,77,80,158,36,49,20,15,16,2,248,80,159,37,51,37,88,163,36, +36,49,8,240,8,0,3,0,9,223,1,33,78,80,159,36,50,37,20,15,16, +2,247,22,133,2,80,158,36,54,20,15,16,2,2,77,80,158,36,55,20,15, +16,2,88,163,36,37,44,8,240,0,120,47,0,2,23,223,0,33,89,80,159, +36,56,37,20,15,16,2,88,163,36,38,56,8,240,0,0,64,0,2,24,223, +0,33,91,80,159,36,58,37,20,15,16,2,88,163,36,40,59,8,240,0,64, +80,0,2,11,223,0,33,98,80,159,36,45,37,20,15,16,2,32,0,88,163, +36,39,50,11,2,25,222,33,99,80,159,36,59,37,20,15,16,2,32,0,88, +163,36,38,53,11,2,26,222,33,100,80,159,36,8,24,37,20,15,16,2,32, +0,88,163,36,38,54,11,2,27,222,33,101,80,159,36,8,25,37,20,15,16, +2,20,27,158,32,0,88,163,36,37,44,11,2,28,222,33,102,32,0,88,163, +36,37,44,11,2,28,222,33,103,80,159,36,8,26,37,20,15,16,2,20,25, +96,2,29,88,163,36,36,53,16,2,52,8,128,128,9,223,0,33,104,88,163, +36,37,54,16,2,52,8,240,0,64,0,0,9,223,0,33,105,88,163,36,38, +55,16,2,52,8,240,0,128,0,0,9,223,0,33,106,80,159,36,8,27,37, +20,15,16,2,88,163,8,36,39,54,16,4,44,36,37,36,2,30,223,0,33, +108,80,159,36,8,28,37,95,29,94,2,17,68,35,37,107,101,114,110,101,108, +11,29,94,2,17,69,35,37,109,105,110,45,115,116,120,11,2,19,9,9,9, +36,0}; + EVAL_ONE_SIZED_STR((char *)expr, 10438); } { - SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,53,46,51,46,48,46,51,84,0,0,0,0,0,0,0,0,0,0, + SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,53,46,51,46,48,46,52,84,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,15,0,40,0, -57,0,75,0,97,0,120,0,140,0,162,0,169,0,176,0,183,0,0,0,178, +57,0,75,0,97,0,120,0,140,0,162,0,169,0,176,0,183,0,0,0,179, 1,0,0,74,35,37,112,108,97,99,101,45,115,116,114,117,99,116,1,23,115, 116,114,117,99,116,58,84,72,45,112,108,97,99,101,45,99,104,97,110,110,101, 108,76,84,72,45,112,108,97,99,101,45,99,104,97,110,110,101,108,77,84,72, @@ -612,22 +612,22 @@ 45,112,108,97,99,101,45,99,104,97,110,110,101,108,45,105,110,1,20,84,72, 45,112,108,97,99,101,45,99,104,97,110,110,101,108,45,111,117,116,249,80,158, 38,39,195,36,249,80,158,38,39,195,36,249,80,158,38,39,195,37,159,36,20, -113,159,36,16,1,11,16,0,20,26,144,9,2,1,2,1,29,11,11,9,9, -11,11,11,10,45,80,158,36,36,20,113,159,36,16,7,2,2,2,3,2,4, -2,5,2,6,2,7,2,8,16,0,37,39,36,16,0,36,16,2,2,5,2, -6,38,11,11,11,16,5,2,3,2,7,2,8,2,4,2,2,16,5,11,11, -11,11,11,16,5,2,3,2,7,2,8,2,4,2,2,41,41,37,12,11,11, -16,0,16,0,16,0,36,36,11,12,11,11,16,0,16,0,16,0,36,36,16, -2,20,15,16,6,253,22,185,10,2,3,11,38,36,11,248,22,83,249,22,73, -22,173,10,88,163,36,37,45,44,9,223,9,33,9,80,159,36,36,37,80,159, -36,37,37,80,159,36,38,37,80,159,36,39,37,80,159,36,40,37,20,15,16, -3,249,22,7,88,163,36,37,45,44,9,223,2,33,10,88,163,36,37,45,44, -9,223,2,33,11,80,159,36,41,37,80,159,36,42,37,93,29,94,65,113,117, -111,116,101,68,35,37,107,101,114,110,101,108,11,9,9,9,36,0}; - EVAL_ONE_SIZED_STR((char *)expr, 500); +113,159,36,16,1,11,16,0,20,26,144,9,2,1,2,1,29,11,11,11,9, +9,11,11,11,10,45,80,158,36,36,20,113,159,36,16,7,2,2,2,3,2, +4,2,5,2,6,2,7,2,8,16,0,37,39,36,16,0,36,16,2,2,5, +2,6,38,11,11,11,16,5,2,3,2,7,2,8,2,4,2,2,16,5,11, +11,11,11,11,16,5,2,3,2,7,2,8,2,4,2,2,41,41,37,12,11, +11,16,0,16,0,16,0,36,36,11,12,11,11,16,0,16,0,16,0,36,36, +16,2,20,15,16,6,253,22,185,10,2,3,11,38,36,11,248,22,83,249,22, +73,22,173,10,88,163,36,37,45,44,9,223,9,33,9,80,159,36,36,37,80, +159,36,37,37,80,159,36,38,37,80,159,36,39,37,80,159,36,40,37,20,15, +16,3,249,22,7,88,163,36,37,45,44,9,223,2,33,10,88,163,36,37,45, +44,9,223,2,33,11,80,159,36,41,37,80,159,36,42,37,93,29,94,65,113, +117,111,116,101,68,35,37,107,101,114,110,101,108,11,9,9,9,36,0}; + EVAL_ONE_SIZED_STR((char *)expr, 501); } { - SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,53,46,51,46,48,46,51,84,0,0,0,0,0,0,0,0,0,0, + SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,53,46,51,46,48,46,52,84,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,81,0,0,0,1,0,0,7,0,18,0, 45,0,51,0,64,0,73,0,80,0,102,0,124,0,150,0,158,0,170,0,185, 0,201,0,219,0,239,0,251,0,11,1,34,1,46,1,77,1,84,1,89,1, @@ -636,7 +636,7 @@ 223,2,244,2,9,3,39,3,69,3,127,3,185,3,234,3,27,4,131,10,182, 10,245,10,8,11,22,11,180,11,193,11,71,12,113,13,236,13,242,13,14,14, 27,14,189,14,196,14,250,14,16,15,36,15,91,15,101,15,188,15,190,15,37, -16,20,24,73,24,97,24,121,24,0,0,48,28,0,0,66,35,37,98,111,111, +16,20,24,73,24,97,24,121,24,0,0,49,28,0,0,66,35,37,98,111,111, 116,70,100,108,108,45,115,117,102,102,105,120,1,25,100,101,102,97,117,108,116, 45,108,111,97,100,47,117,115,101,45,99,111,109,112,105,108,101,100,65,113,117, 111,116,101,29,94,2,4,67,35,37,117,116,105,108,115,11,68,35,37,112,97, @@ -936,57 +936,57 @@ 158,36,53,248,80,159,37,8,25,37,249,22,27,11,80,159,39,55,37,20,18, 159,11,80,158,36,53,248,80,159,37,8,25,37,249,22,27,11,80,159,39,55, 37,159,36,20,113,159,36,16,1,11,16,0,20,26,144,9,2,1,2,1,29, -11,11,9,9,11,11,11,10,38,80,158,36,36,20,113,159,41,16,26,2,2, -2,3,30,2,5,72,112,97,116,104,45,115,116,114,105,110,103,63,11,30,2, -5,75,112,97,116,104,45,97,100,100,45,115,117,102,102,105,120,8,30,2,7, -2,8,6,30,2,7,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,3,2,9,2,10,2,11,2,12,2,13, -2,14,2,15,2,16,2,17,2,18,2,19,2,20,2,21,30,2,22,2,8, -6,30,2,5,79,112,97,116,104,45,114,101,112,108,97,99,101,45,115,117,102, -102,105,120,10,30,2,5,73,102,105,110,100,45,99,111,108,45,102,105,108,101, -3,30,2,5,76,110,111,114,109,97,108,45,99,97,115,101,45,112,97,116,104, -7,2,23,2,24,30,2,22,74,114,101,112,97,114,97,109,101,116,101,114,105, -122,101,7,16,0,37,39,36,16,0,36,16,14,2,15,2,16,2,10,2,12, -2,17,2,18,2,11,2,3,2,9,2,2,2,13,2,14,2,19,2,21,50, -11,11,11,16,3,2,23,2,20,2,24,16,3,11,11,11,16,3,2,23,2, -20,2,24,39,39,37,12,11,11,16,0,16,0,16,0,36,36,11,12,11,11, -16,0,16,0,16,0,36,36,16,22,20,15,16,2,88,163,36,37,45,8,128, -128,9,223,0,33,41,80,159,36,8,30,39,20,15,16,2,88,163,8,36,37, -45,8,240,0,0,1,0,9,223,0,33,42,80,159,36,8,29,39,20,15,16, -2,88,163,36,37,49,8,240,0,0,16,0,72,112,97,116,104,45,115,115,45, -62,114,107,116,223,0,33,43,80,159,36,8,28,39,20,15,16,2,88,163,36, -37,50,8,240,0,192,0,0,67,103,101,116,45,100,105,114,223,0,33,44,80, -159,36,8,27,39,20,15,16,2,88,164,8,34,37,45,8,240,0,0,10,0, -1,21,112,114,101,112,45,112,108,97,110,101,116,45,114,101,115,111,108,118,101, -114,33,37,224,1,0,33,45,80,159,36,8,26,39,20,15,16,2,248,22,155, -8,69,115,111,45,115,117,102,102,105,120,80,159,36,36,37,20,15,16,2,88, -163,36,38,8,38,8,61,2,3,223,0,33,54,80,159,36,37,37,20,15,16, -2,20,27,158,32,0,88,163,8,36,37,42,11,2,9,222,192,32,0,88,163, -8,36,37,42,11,2,9,222,192,80,159,36,42,37,20,15,16,2,247,22,136, -2,80,159,36,43,37,20,15,16,2,8,128,8,80,159,36,44,37,20,15,16, -2,249,22,159,8,8,128,8,11,80,159,36,45,37,20,15,16,2,88,163,8, -36,37,50,8,128,8,2,13,223,0,33,55,80,159,36,46,37,20,15,16,2, -88,163,8,36,38,55,8,128,8,2,14,223,0,33,56,80,159,36,47,37,20, -15,16,2,247,22,69,80,159,36,48,37,20,15,16,2,248,22,18,74,109,111, -100,117,108,101,45,108,111,97,100,105,110,103,80,159,36,49,37,20,15,16,2, -11,80,158,36,50,20,15,16,2,11,80,158,36,51,20,15,16,2,32,0,88, -163,36,38,8,25,11,2,19,222,33,62,80,159,36,52,37,20,15,16,2,11, -80,158,36,53,20,15,16,2,27,11,20,19,158,36,90,159,37,10,89,161,37, -36,10,20,25,96,2,21,88,163,8,36,37,51,8,128,2,9,224,2,1,33, -63,88,163,36,39,49,11,9,223,0,33,64,88,163,36,40,8,32,16,2,8, -176,242,8,240,115,124,0,0,9,224,2,1,33,77,207,80,159,36,54,37,20, -15,16,2,88,163,36,36,45,8,240,66,0,14,2,2,23,223,0,33,78,80, -159,36,59,37,20,15,16,2,20,27,158,88,163,8,36,36,45,8,240,0,0, -10,2,2,24,223,0,33,79,88,163,8,36,36,45,8,240,0,0,10,2,2, -24,223,0,33,80,80,159,36,8,24,37,96,29,94,2,4,68,35,37,107,101, -114,110,101,108,11,29,94,2,4,69,35,37,109,105,110,45,115,116,120,11,2, -5,2,22,9,9,9,36,0}; - EVAL_ONE_SIZED_STR((char *)expr, 7420); +11,11,11,9,9,11,11,11,10,38,80,158,36,36,20,113,159,41,16,26,2, +2,2,3,30,2,5,72,112,97,116,104,45,115,116,114,105,110,103,63,11,30, +2,5,75,112,97,116,104,45,97,100,100,45,115,117,102,102,105,120,8,30,2, +7,2,8,6,30,2,7,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,3,2,9,2,10,2,11,2,12,2, +13,2,14,2,15,2,16,2,17,2,18,2,19,2,20,2,21,30,2,22,2, +8,6,30,2,5,79,112,97,116,104,45,114,101,112,108,97,99,101,45,115,117, +102,102,105,120,10,30,2,5,73,102,105,110,100,45,99,111,108,45,102,105,108, +101,3,30,2,5,76,110,111,114,109,97,108,45,99,97,115,101,45,112,97,116, +104,7,2,23,2,24,30,2,22,74,114,101,112,97,114,97,109,101,116,101,114, +105,122,101,7,16,0,37,39,36,16,0,36,16,14,2,15,2,16,2,10,2, +12,2,17,2,18,2,11,2,3,2,9,2,2,2,13,2,14,2,19,2,21, +50,11,11,11,16,3,2,23,2,20,2,24,16,3,11,11,11,16,3,2,23, +2,20,2,24,39,39,37,12,11,11,16,0,16,0,16,0,36,36,11,12,11, +11,16,0,16,0,16,0,36,36,16,22,20,15,16,2,88,163,36,37,45,8, +128,128,9,223,0,33,41,80,159,36,8,30,39,20,15,16,2,88,163,8,36, +37,45,8,240,0,0,1,0,9,223,0,33,42,80,159,36,8,29,39,20,15, +16,2,88,163,36,37,49,8,240,0,0,16,0,72,112,97,116,104,45,115,115, +45,62,114,107,116,223,0,33,43,80,159,36,8,28,39,20,15,16,2,88,163, +36,37,50,8,240,0,192,0,0,67,103,101,116,45,100,105,114,223,0,33,44, +80,159,36,8,27,39,20,15,16,2,88,164,8,34,37,45,8,240,0,0,10, +0,1,21,112,114,101,112,45,112,108,97,110,101,116,45,114,101,115,111,108,118, +101,114,33,37,224,1,0,33,45,80,159,36,8,26,39,20,15,16,2,248,22, +155,8,69,115,111,45,115,117,102,102,105,120,80,159,36,36,37,20,15,16,2, +88,163,36,38,8,38,8,61,2,3,223,0,33,54,80,159,36,37,37,20,15, +16,2,20,27,158,32,0,88,163,8,36,37,42,11,2,9,222,192,32,0,88, +163,8,36,37,42,11,2,9,222,192,80,159,36,42,37,20,15,16,2,247,22, +136,2,80,159,36,43,37,20,15,16,2,8,128,8,80,159,36,44,37,20,15, +16,2,249,22,159,8,8,128,8,11,80,159,36,45,37,20,15,16,2,88,163, +8,36,37,50,8,128,8,2,13,223,0,33,55,80,159,36,46,37,20,15,16, +2,88,163,8,36,38,55,8,128,8,2,14,223,0,33,56,80,159,36,47,37, +20,15,16,2,247,22,69,80,159,36,48,37,20,15,16,2,248,22,18,74,109, +111,100,117,108,101,45,108,111,97,100,105,110,103,80,159,36,49,37,20,15,16, +2,11,80,158,36,50,20,15,16,2,11,80,158,36,51,20,15,16,2,32,0, +88,163,36,38,8,25,11,2,19,222,33,62,80,159,36,52,37,20,15,16,2, +11,80,158,36,53,20,15,16,2,27,11,20,19,158,36,90,159,37,10,89,161, +37,36,10,20,25,96,2,21,88,163,8,36,37,51,8,128,2,9,224,2,1, +33,63,88,163,36,39,49,11,9,223,0,33,64,88,163,36,40,8,32,16,2, +8,176,242,8,240,115,124,0,0,9,224,2,1,33,77,207,80,159,36,54,37, +20,15,16,2,88,163,36,36,45,8,240,66,0,14,2,2,23,223,0,33,78, +80,159,36,59,37,20,15,16,2,20,27,158,88,163,8,36,36,45,8,240,0, +0,10,2,2,24,223,0,33,79,88,163,8,36,36,45,8,240,0,0,10,2, +2,24,223,0,33,80,80,159,36,8,24,37,96,29,94,2,4,68,35,37,107, +101,114,110,101,108,11,29,94,2,4,69,35,37,109,105,110,45,115,116,120,11, +2,5,2,22,9,9,9,36,0}; + EVAL_ONE_SIZED_STR((char *)expr, 7421); } { - SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,53,46,51,46,48,46,51,84,0,0,0,0,0,0,0,0,0,0, + SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,53,46,51,46,48,46,52,84,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,11,0,0,0,1,0,0,10,0,16,0, -29,0,44,0,58,0,78,0,90,0,104,0,118,0,170,0,0,0,97,1,0, +29,0,44,0,58,0,78,0,90,0,104,0,118,0,170,0,0,0,98,1,0, 0,69,35,37,98,117,105,108,116,105,110,65,113,117,111,116,101,29,94,2,2, 67,35,37,117,116,105,108,115,11,29,94,2,2,69,35,37,110,101,116,119,111, 114,107,11,29,94,2,2,68,35,37,112,97,114,97,109,122,11,29,94,2,2, @@ -996,13 +996,13 @@ 0,0,100,159,2,3,36,36,159,2,4,36,36,159,2,5,36,36,159,2,6, 36,36,159,2,7,36,36,159,2,8,36,36,159,2,9,36,36,159,2,9,36, 36,16,0,159,36,20,113,159,36,16,1,11,16,0,20,26,144,9,2,1,2, -1,29,11,11,9,9,11,11,11,18,96,11,46,46,46,36,80,158,36,36,20, -113,159,36,16,0,16,0,37,39,36,16,0,36,16,0,36,11,11,11,16,0, -16,0,16,0,36,36,37,12,11,11,16,0,16,0,16,0,36,36,11,12,11, -11,16,0,16,0,16,0,36,36,16,0,104,2,9,2,8,29,94,2,2,69, -35,37,102,111,114,101,105,103,110,11,29,94,2,2,68,35,37,117,110,115,97, -102,101,11,29,94,2,2,69,35,37,102,108,102,120,110,117,109,11,2,7,2, -6,2,5,2,4,2,3,29,94,2,2,67,35,37,112,108,97,99,101,11,29, -94,2,2,69,35,37,102,117,116,117,114,101,115,11,9,9,9,36,0}; - EVAL_ONE_SIZED_STR((char *)expr, 417); +1,29,11,11,11,9,9,11,11,11,18,96,11,46,46,46,36,80,158,36,36, +20,113,159,36,16,0,16,0,37,39,36,16,0,36,16,0,36,11,11,11,16, +0,16,0,16,0,36,36,37,12,11,11,16,0,16,0,16,0,36,36,11,12, +11,11,16,0,16,0,16,0,36,36,16,0,104,2,9,2,8,29,94,2,2, +69,35,37,102,111,114,101,105,103,110,11,29,94,2,2,68,35,37,117,110,115, +97,102,101,11,29,94,2,2,69,35,37,102,108,102,120,110,117,109,11,2,7, +2,6,2,5,2,4,2,3,29,94,2,2,67,35,37,112,108,97,99,101,11, +29,94,2,2,69,35,37,102,117,116,117,114,101,115,11,9,9,9,36,0}; + EVAL_ONE_SIZED_STR((char *)expr, 418); } diff --git a/src/racket/src/module.c b/src/racket/src/module.c index f3efa3391e..fb4d7f31c9 100644 --- a/src/racket/src/module.c +++ b/src/racket/src/module.c @@ -323,8 +323,6 @@ static void qsort_provides(Scheme_Object **exs, Scheme_Object **exsns, Scheme_Ob Scheme_Object **exsnoms, int start, int count, int do_uninterned); -static Scheme_Object *get_submodule_empty_self_modidx(Scheme_Object *submodule_path); - #define MODCHAIN_TABLE(p) ((Scheme_Hash_Table *)(SCHEME_VEC_ELS(p)[0])) #define MODCHAIN_AVAIL(p, n) (SCHEME_VEC_ELS(p)[3+n]) @@ -3318,7 +3316,7 @@ static Scheme_Object *module_path_index_join(int argc, Scheme_Object *argv[]) scheme_arg_mismatch("module-path-index-join", "first or second non-#f argument results a #f third argument, given: ", argv[2]); - return get_submodule_empty_self_modidx(argv[2]); + return scheme_get_submodule_empty_self_modidx(argv[2]); } } @@ -3327,13 +3325,19 @@ static Scheme_Object *module_path_index_join(int argc, Scheme_Object *argv[]) static Scheme_Object *module_path_index_submodule(int argc, Scheme_Object *argv[]) { - Scheme_Modidx *modidx; - Scheme_Object *a; if (!SAME_TYPE(SCHEME_TYPE(argv[0]), scheme_module_index_type)) scheme_wrong_type("module-path-index-submodule", "module-path-index", 0, argc, argv); + + return scheme_modidx_submodule(argv[0]); +} - modidx = (Scheme_Modidx *)argv[0]; +Scheme_Object *scheme_modidx_submodule(Scheme_Object *_modidx) +{ + Scheme_Modidx *modidx; + Scheme_Object *a; + + modidx = (Scheme_Modidx *)_modidx; a = modidx->resolved; if (SCHEME_TRUEP(modidx->path) || SCHEME_TRUEP(modidx->base) @@ -3605,7 +3609,7 @@ int same_resolved_modidx(Scheme_Object *a, Scheme_Object *b) return scheme_equal(a, b); } -static Scheme_Object *get_submodule_empty_self_modidx(Scheme_Object *submodule_path) +Scheme_Object *scheme_get_submodule_empty_self_modidx(Scheme_Object *submodule_path) { Scheme_Bucket *b; @@ -6729,7 +6733,7 @@ static Scheme_Object *do_module(Scheme_Object *form, Scheme_Comp_Env *env, fm = scheme_stx_property(fm, module_name_symbol, scheme_resolved_module_path_value(rmp)); - this_empty_self_modidx = get_submodule_empty_self_modidx(submodule_path); + this_empty_self_modidx = scheme_get_submodule_empty_self_modidx(submodule_path); if (ii) { /* phase shift to replace self_modidx of previous expansion (if any): */ diff --git a/src/racket/src/print.c b/src/racket/src/print.c index 7d9c6416b1..443883686f 100644 --- a/src/racket/src/print.c +++ b/src/racket/src/print.c @@ -2840,6 +2840,9 @@ print(Scheme_Object *obj, int notdisplay, int compact, Scheme_Hash_Table *ht, print_compact(pp, CPT_MODULE_INDEX); print(((Scheme_Modidx *)obj)->path, notdisplay, 1, ht, mt, pp); print(((Scheme_Modidx *)obj)->base, notdisplay, 1, ht, mt, pp); + if (SCHEME_FALSEP(((Scheme_Modidx *)obj)->path) + && SCHEME_FALSEP(((Scheme_Modidx *)obj)->base)) + print(scheme_modidx_submodule(obj), notdisplay, 1, ht, mt, pp); symtab_set(pp, mt, obj); } } diff --git a/src/racket/src/read.c b/src/racket/src/read.c index 75711477e3..0ed466e1a5 100644 --- a/src/racket/src/read.c +++ b/src/racket/src/read.c @@ -4675,8 +4675,15 @@ static Scheme_Object *read_compact(CPort *port, int use_stack) path = read_compact(port, 0); base = read_compact(port, 0); - - return scheme_make_modidx(path, base, scheme_false); + if (SCHEME_FALSEP(path) + && SCHEME_FALSEP(base)) { + path = read_compact(port, 0); + if (SCHEME_FALSEP(path)) + return scheme_make_modidx(scheme_false, scheme_false, scheme_false); + else + return scheme_get_submodule_empty_self_modidx(path); + } else + return scheme_make_modidx(path, base, scheme_false); } break; case CPT_MODULE_VAR: diff --git a/src/racket/src/schminc.h b/src/racket/src/schminc.h index 0c8777d861..ec5b93b557 100644 --- a/src/racket/src/schminc.h +++ b/src/racket/src/schminc.h @@ -12,7 +12,7 @@ finally, set EXPECTED_PRIM_COUNT to the right value and USE_COMPILED_STARTUP to 1 and `make' again. */ -#define USE_COMPILED_STARTUP 1 +#define USE_COMPILED_STARTUP 0 #define EXPECTED_PRIM_COUNT 1046 #define EXPECTED_UNSAFE_COUNT 78 diff --git a/src/racket/src/schpriv.h b/src/racket/src/schpriv.h index b8a6d8e8e5..e47a921469 100644 --- a/src/racket/src/schpriv.h +++ b/src/racket/src/schpriv.h @@ -3234,6 +3234,9 @@ Scheme_Object *scheme_modidx_shift(Scheme_Object *modidx, Scheme_Object *shift_from_modidx, Scheme_Object *shift_to_modidx); +Scheme_Object *scheme_modidx_submodule(Scheme_Object *modidx); +Scheme_Object *scheme_get_submodule_empty_self_modidx(Scheme_Object *submodule_path); + #define SCHEME_RMPP(o) (SAME_TYPE(SCHEME_TYPE((o)), scheme_resolved_module_path_type)) #define SCHEME_MODNAMEP(obj) (SAME_TYPE(SCHEME_TYPE(obj), scheme_resolved_module_path_type)) diff --git a/src/racket/src/schvers.h b/src/racket/src/schvers.h index 12c401457d..c59a5d288f 100644 --- a/src/racket/src/schvers.h +++ b/src/racket/src/schvers.h @@ -13,12 +13,12 @@ consistently.) */ -#define MZSCHEME_VERSION "5.3.0.3" +#define MZSCHEME_VERSION "5.3.0.4" #define MZSCHEME_VERSION_X 5 #define MZSCHEME_VERSION_Y 3 #define MZSCHEME_VERSION_Z 0 -#define MZSCHEME_VERSION_W 3 +#define MZSCHEME_VERSION_W 4 #define MZSCHEME_VERSION_MAJOR ((MZSCHEME_VERSION_X * 100) + MZSCHEME_VERSION_Y) #define MZSCHEME_VERSION_MINOR ((MZSCHEME_VERSION_Z * 1000) + MZSCHEME_VERSION_W)