From a39ee070aa2484091dc0042c4a12214dd0bb2896 Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Mon, 22 Apr 2013 17:34:11 -0600 Subject: [PATCH] fix internal call to the module name resolver Also, check arguments in the default module name resolver. --- src/racket/src/cstartup.inc | 329 ++++++++++++++++++------------------ src/racket/src/module.c | 3 + src/racket/src/startup.inc | 10 +- src/racket/src/startup.rktl | 10 +- 4 files changed, 188 insertions(+), 164 deletions(-) diff --git a/src/racket/src/cstartup.inc b/src/racket/src/cstartup.inc index 0044d1996d..87d27b8ed0 100644 --- a/src/racket/src/cstartup.inc +++ b/src/racket/src/cstartup.inc @@ -16,12 +16,12 @@ 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, -192,91,0,0,95,159,2,17,36,36,159,2,16,36,36,159,2,16,36,36,16, +198,91,0,0,95,159,2,17,36,36,159,2,16,36,36,159,2,16,36,36,16, 20,2,10,2,2,2,7,2,2,2,5,2,2,2,6,2,2,2,3,2,2, 2,8,2,2,2,9,2,2,2,4,2,2,2,11,2,2,2,12,2,2,97, -37,11,8,240,192,91,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,192,91,0,0,16,0,96,11,11, -8,240,192,91,0,0,16,0,18,98,64,104,101,114,101,13,16,6,36,2,14, +37,11,8,240,198,91,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,198,91,0,0,16,0,96,11,11, +8,240,198,91,0,0,16,0,18,98,64,104,101,114,101,13,16,6,36,2,14, 2,2,11,11,11,8,32,8,31,8,30,8,29,27,248,22,164,4,195,249,22, 157,4,80,158,39,36,251,22,89,2,18,248,22,104,199,12,249,22,79,2,19, 248,22,106,201,27,248,22,164,4,195,249,22,157,4,80,158,39,36,251,22,89, @@ -30,14 +30,14 @@ 81,194,248,22,132,18,193,249,22,157,4,80,158,39,36,251,22,89,2,18,248, 22,132,18,199,249,22,79,2,8,248,22,133,18,201,11,18,100,10,13,16,6, 36,2,14,2,2,11,11,11,8,32,8,31,8,30,8,29,16,4,11,11,2, -20,3,1,8,101,110,118,49,55,52,54,48,16,4,11,11,2,21,3,1,8, -101,110,118,49,55,52,54,49,27,248,22,81,248,22,164,4,196,28,248,22,87, +20,3,1,8,101,110,118,49,55,52,54,50,16,4,11,11,2,21,3,1,8, +101,110,118,49,55,52,54,51,27,248,22,81,248,22,164,4,196,28,248,22,87, 193,20,14,159,37,36,37,28,248,22,87,248,22,81,194,248,22,132,18,193,249, 22,157,4,80,158,39,36,250,22,89,2,22,248,22,89,249,22,89,248,22,89, 2,23,248,22,132,18,201,251,22,89,2,18,2,23,2,23,249,22,79,2,5, 248,22,133,18,204,18,100,11,13,16,6,36,2,14,2,2,11,11,11,8,32, 8,31,8,30,8,29,16,4,11,11,2,20,3,1,8,101,110,118,49,55,52, -54,51,16,4,11,11,2,21,3,1,8,101,110,118,49,55,52,54,52,248,22, +54,53,16,4,11,11,2,21,3,1,8,101,110,118,49,55,52,54,54,248,22, 164,4,193,27,248,22,164,4,194,249,22,79,248,22,89,248,22,80,196,248,22, 133,18,195,27,248,22,81,248,22,164,4,23,197,1,249,22,157,4,80,158,39, 36,28,248,22,64,248,22,158,4,248,22,80,23,198,2,27,249,22,2,32,0, @@ -68,8 +68,8 @@ 9,248,22,158,4,248,22,80,200,64,101,108,115,101,10,248,22,132,18,197,250, 22,90,2,22,9,248,22,133,18,200,249,22,79,2,3,248,22,81,202,99,13, 16,6,36,2,14,2,2,11,11,11,8,32,8,31,8,30,8,29,16,4,11, -11,2,20,3,1,8,101,110,118,49,55,52,56,54,16,4,11,11,2,21,3, -1,8,101,110,118,49,55,52,56,55,18,158,94,10,64,118,111,105,100,8,48, +11,2,20,3,1,8,101,110,118,49,55,52,56,56,16,4,11,11,2,21,3, +1,8,101,110,118,49,55,52,56,57,18,158,94,10,64,118,111,105,100,8,48, 27,248,22,81,248,22,164,4,196,249,22,157,4,80,158,39,36,28,248,22,64, 248,22,158,4,248,22,80,197,250,22,89,2,28,248,22,89,248,22,132,18,199, 248,22,104,198,27,248,22,158,4,248,22,132,18,197,250,22,89,2,28,248,22, @@ -769,7 +769,7 @@ 85,14,169,14,90,15,106,15,190,15,204,16,96,17,180,17,101,18,114,18,11, 19,195,19,21,20,149,20,210,20,218,20,229,20,7,22,21,22,49,22,62,22, 1,23,14,23,147,23,169,23,189,23,251,23,5,24,19,24,56,24,155,24,159, -24,166,24,120,25,111,33,164,33,188,33,212,33,0,0,210,37,0,0,66,35, +24,166,24,120,25,215,33,12,34,36,34,60,34,0,0,58,38,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,68,35,37,112,97,114,97,109,122,29,94,2,4,2, @@ -1080,158 +1080,163 @@ 248,22,151,5,23,203,2,28,248,22,64,193,249,22,89,2,4,194,192,23,201, 2,249,247,22,174,5,23,200,1,27,248,22,67,248,22,156,15,23,201,1,28, 23,203,2,28,250,22,160,2,248,22,80,23,201,1,23,201,1,11,249,22,79, -11,204,249,22,79,194,204,192,86,94,28,248,22,159,5,23,196,2,12,28,23, -197,2,250,22,133,10,11,6,15,15,98,97,100,32,109,111,100,117,108,101,32, -112,97,116,104,23,200,2,250,22,135,10,2,22,2,34,23,198,2,28,28,248, -22,77,23,196,2,249,22,162,9,248,22,132,18,23,198,2,2,4,11,86,97, -23,198,1,23,197,1,23,196,1,23,193,1,248,22,150,5,248,22,104,23,197, -1,28,28,248,22,77,23,196,2,28,249,22,162,9,248,22,132,18,23,198,2, -2,35,28,248,22,77,248,22,104,23,197,2,249,22,162,9,248,22,108,23,198, -2,2,4,11,11,11,86,97,23,198,1,23,197,1,23,196,1,23,193,1,248, -22,150,5,249,2,85,248,22,121,23,199,2,248,22,106,23,199,1,28,28,248, -22,77,23,196,2,28,249,22,162,9,248,22,132,18,23,198,2,2,35,28,28, -249,22,164,9,248,22,104,23,198,2,2,37,10,249,22,164,9,248,22,104,23, -198,2,2,36,28,23,196,2,27,248,22,151,5,23,198,2,28,248,22,64,193, -10,28,248,22,77,193,248,22,64,248,22,132,18,194,11,11,11,11,11,86,96, -23,198,1,23,197,1,23,193,1,27,248,22,151,5,23,198,1,248,22,150,5, -249,2,85,28,248,22,77,23,197,2,248,22,132,18,23,197,2,23,196,2,27, -28,249,22,164,9,248,22,104,23,203,2,2,36,248,22,133,18,200,248,22,106, -200,28,248,22,77,23,198,2,249,22,93,248,22,133,18,199,194,192,28,28,248, -22,77,23,196,2,249,22,162,9,248,22,132,18,23,198,2,2,39,11,86,94, -248,80,159,38,8,28,39,23,194,2,253,24,199,1,23,201,1,23,202,1,23, -203,1,23,204,1,11,80,158,43,55,28,28,248,22,77,23,196,2,28,249,22, -162,9,248,22,132,18,23,198,2,2,35,28,248,22,77,248,22,104,23,197,2, -249,22,162,9,248,22,108,23,198,2,2,39,11,11,11,86,94,248,80,159,38, -8,28,39,23,194,2,253,24,199,1,248,22,104,23,202,2,23,202,1,23,203, -1,23,204,1,248,22,106,23,202,1,80,158,43,55,86,94,23,193,1,27,88, -163,8,36,37,52,11,79,115,104,111,119,45,99,111,108,108,101,99,116,105,111, -110,45,101,114,114,224,5,3,33,89,27,28,248,22,77,23,198,2,28,249,22, -162,9,2,35,248,22,132,18,23,200,2,27,248,22,104,23,199,2,28,28,249, -22,164,9,23,195,2,2,37,10,249,22,164,9,23,195,2,2,36,86,94,23, -193,1,28,23,199,2,27,248,22,151,5,23,201,2,28,248,22,77,193,248,22, -132,18,193,192,250,22,131,10,2,22,6,45,45,110,111,32,98,97,115,101,32, -112,97,116,104,32,102,111,114,32,114,101,108,97,116,105,118,101,32,115,117,98, -109,111,100,117,108,101,32,112,97,116,104,58,32,126,46,115,23,201,2,192,23, -197,2,23,197,2,27,28,248,22,77,23,199,2,28,249,22,162,9,2,35,248, -22,132,18,23,201,2,27,28,28,28,249,22,164,9,248,22,104,23,202,2,2, -37,10,249,22,164,9,248,22,104,23,202,2,2,36,23,200,2,11,27,248,22, -151,5,23,202,2,27,28,249,22,164,9,248,22,104,23,204,2,2,36,248,22, -133,18,23,202,1,248,22,106,23,202,1,28,248,22,77,23,195,2,249,2,85, -248,22,132,18,23,197,2,249,22,93,248,22,133,18,23,199,1,23,197,1,249, -2,85,23,196,1,23,195,1,249,2,85,2,37,28,249,22,164,9,248,22,104, -23,204,2,2,36,248,22,133,18,23,202,1,248,22,106,23,202,1,28,248,22, -77,193,248,22,133,18,193,11,11,11,27,28,248,22,64,23,196,2,27,248,80, +11,204,249,22,79,194,204,192,86,96,28,248,22,159,5,23,196,2,12,28,248, +22,155,4,23,198,2,250,22,133,10,11,6,15,15,98,97,100,32,109,111,100, +117,108,101,32,112,97,116,104,23,200,2,250,22,135,10,2,22,2,34,23,198, +2,28,28,23,196,2,248,22,149,5,23,197,2,10,12,250,22,135,10,2,22, +6,31,31,40,111,114,47,99,32,35,102,32,114,101,115,111,108,118,101,100,45, +109,111,100,117,108,101,45,112,97,116,104,63,41,23,199,2,28,28,23,197,2, +248,22,155,4,23,198,2,10,12,250,22,135,10,2,22,6,17,17,40,111,114, +47,99,32,35,102,32,115,121,110,116,97,120,63,41,23,200,2,28,28,248,22, +77,23,196,2,249,22,162,9,248,22,132,18,23,198,2,2,4,11,86,97,23, +198,1,23,197,1,23,196,1,23,193,1,248,22,150,5,248,22,104,23,197,1, +28,28,248,22,77,23,196,2,28,249,22,162,9,248,22,132,18,23,198,2,2, +35,28,248,22,77,248,22,104,23,197,2,249,22,162,9,248,22,108,23,198,2, +2,4,11,11,11,86,97,23,198,1,23,197,1,23,196,1,23,193,1,248,22, +150,5,249,2,85,248,22,121,23,199,2,248,22,106,23,199,1,28,28,248,22, +77,23,196,2,28,249,22,162,9,248,22,132,18,23,198,2,2,35,28,28,249, +22,164,9,248,22,104,23,198,2,2,37,10,249,22,164,9,248,22,104,23,198, +2,2,36,28,23,196,2,27,248,22,151,5,23,198,2,28,248,22,64,193,10, +28,248,22,77,193,248,22,64,248,22,132,18,194,11,11,11,11,11,86,96,23, +198,1,23,197,1,23,193,1,27,248,22,151,5,23,198,1,248,22,150,5,249, +2,85,28,248,22,77,23,197,2,248,22,132,18,23,197,2,23,196,2,27,28, +249,22,164,9,248,22,104,23,203,2,2,36,248,22,133,18,200,248,22,106,200, +28,248,22,77,23,198,2,249,22,93,248,22,133,18,199,194,192,28,28,248,22, +77,23,196,2,249,22,162,9,248,22,132,18,23,198,2,2,39,11,86,94,248, +80,159,38,8,28,39,23,194,2,253,24,199,1,23,201,1,23,202,1,23,203, +1,23,204,1,11,80,158,43,55,28,28,248,22,77,23,196,2,28,249,22,162, +9,248,22,132,18,23,198,2,2,35,28,248,22,77,248,22,104,23,197,2,249, +22,162,9,248,22,108,23,198,2,2,39,11,11,11,86,94,248,80,159,38,8, +28,39,23,194,2,253,24,199,1,248,22,104,23,202,2,23,202,1,23,203,1, +23,204,1,248,22,106,23,202,1,80,158,43,55,86,94,23,193,1,27,88,163, +8,36,37,52,11,79,115,104,111,119,45,99,111,108,108,101,99,116,105,111,110, +45,101,114,114,224,5,3,33,89,27,28,248,22,77,23,198,2,28,249,22,162, +9,2,35,248,22,132,18,23,200,2,27,248,22,104,23,199,2,28,28,249,22, +164,9,23,195,2,2,37,10,249,22,164,9,23,195,2,2,36,86,94,23,193, +1,28,23,199,2,27,248,22,151,5,23,201,2,28,248,22,77,193,248,22,132, +18,193,192,250,22,131,10,2,22,6,45,45,110,111,32,98,97,115,101,32,112, +97,116,104,32,102,111,114,32,114,101,108,97,116,105,118,101,32,115,117,98,109, +111,100,117,108,101,32,112,97,116,104,58,32,126,46,115,23,201,2,192,23,197, +2,23,197,2,27,28,248,22,77,23,199,2,28,249,22,162,9,2,35,248,22, +132,18,23,201,2,27,28,28,28,249,22,164,9,248,22,104,23,202,2,2,37, +10,249,22,164,9,248,22,104,23,202,2,2,36,23,200,2,11,27,248,22,151, +5,23,202,2,27,28,249,22,164,9,248,22,104,23,204,2,2,36,248,22,133, +18,23,202,1,248,22,106,23,202,1,28,248,22,77,23,195,2,249,2,85,248, +22,132,18,23,197,2,249,22,93,248,22,133,18,23,199,1,23,197,1,249,2, +85,23,196,1,23,195,1,249,2,85,2,37,28,249,22,164,9,248,22,104,23, +204,2,2,36,248,22,133,18,23,202,1,248,22,106,23,202,1,28,248,22,77, +193,248,22,133,18,193,11,11,11,27,28,248,22,64,23,196,2,27,248,80,159, +43,48,39,249,22,79,23,199,2,247,22,130,16,28,23,193,2,192,86,94,23, +193,1,90,159,38,11,89,161,38,36,11,249,80,159,46,54,39,248,22,70,23, +201,2,11,27,28,248,22,87,23,195,2,2,40,249,22,170,7,23,197,2,2, +41,251,80,159,49,59,39,23,204,1,28,248,22,87,23,199,2,23,199,1,86, +94,23,199,1,248,22,80,23,199,2,28,248,22,87,23,199,2,86,94,23,198, +1,9,248,22,133,18,23,199,1,23,197,1,28,248,22,147,7,23,196,2,86, +94,23,196,1,27,248,80,159,43,8,29,39,23,202,2,27,248,80,159,44,48, +39,249,22,79,23,200,2,23,197,2,28,23,193,2,192,86,94,23,193,1,90, +159,38,11,89,161,38,36,11,249,80,159,47,54,39,23,201,2,11,250,22,1, +22,170,15,23,199,1,249,22,93,249,22,2,32,0,88,163,8,36,37,44,11, +9,222,33,90,23,200,1,248,22,89,248,2,91,23,201,1,28,248,22,152,15, +23,196,2,86,94,23,196,1,248,80,159,42,8,30,39,248,22,179,15,28,248, +22,176,15,23,198,2,23,197,2,249,22,177,15,23,199,2,248,80,159,46,8, +29,39,23,205,2,28,249,22,162,9,248,22,80,23,198,2,2,33,27,248,80, 159,43,48,39,249,22,79,23,199,2,247,22,130,16,28,23,193,2,192,86,94, -23,193,1,90,159,38,11,89,161,38,36,11,249,80,159,46,54,39,248,22,70, -23,201,2,11,27,28,248,22,87,23,195,2,2,40,249,22,170,7,23,197,2, -2,41,251,80,159,49,59,39,23,204,1,28,248,22,87,23,199,2,23,199,1, -86,94,23,199,1,248,22,80,23,199,2,28,248,22,87,23,199,2,86,94,23, -198,1,9,248,22,133,18,23,199,1,23,197,1,28,248,22,147,7,23,196,2, -86,94,23,196,1,27,248,80,159,43,8,29,39,23,202,2,27,248,80,159,44, -48,39,249,22,79,23,200,2,23,197,2,28,23,193,2,192,86,94,23,193,1, -90,159,38,11,89,161,38,36,11,249,80,159,47,54,39,23,201,2,11,250,22, -1,22,170,15,23,199,1,249,22,93,249,22,2,32,0,88,163,8,36,37,44, -11,9,222,33,90,23,200,1,248,22,89,248,2,91,23,201,1,28,248,22,152, -15,23,196,2,86,94,23,196,1,248,80,159,42,8,30,39,248,22,179,15,28, -248,22,176,15,23,198,2,23,197,2,249,22,177,15,23,199,2,248,80,159,46, -8,29,39,23,205,2,28,249,22,162,9,248,22,80,23,198,2,2,33,27,248, -80,159,43,48,39,249,22,79,23,199,2,247,22,130,16,28,23,193,2,192,86, -94,23,193,1,90,159,39,11,89,161,38,36,11,249,80,159,47,54,39,248,22, -104,23,202,2,11,89,161,37,38,11,28,248,22,87,248,22,106,23,201,2,28, -248,22,87,23,194,2,249,22,145,16,2,93,23,196,2,11,10,27,28,23,196, -2,248,2,91,23,196,2,28,248,22,87,23,195,2,2,40,28,249,22,145,16, -2,93,23,197,2,248,2,91,23,196,2,249,22,170,7,23,197,2,2,41,27, -28,23,197,1,86,94,23,196,1,249,22,93,28,248,22,87,248,22,106,23,205, -2,21,93,6,5,5,109,122,108,105,98,249,22,1,22,93,249,22,2,80,159, -53,8,31,39,248,22,106,23,208,2,23,197,1,28,248,22,87,23,196,2,86, -94,23,195,1,248,22,89,23,197,1,86,94,23,196,1,23,195,1,251,80,159, -51,59,39,23,206,1,248,22,80,23,198,2,248,22,133,18,23,198,1,23,198, -1,28,249,22,162,9,248,22,132,18,23,198,2,2,38,248,80,159,42,8,30, -39,248,22,179,15,249,22,177,15,248,22,181,15,248,22,104,23,201,2,248,80, -159,46,8,29,39,23,205,2,12,86,94,28,28,248,22,152,15,23,194,2,10, -248,22,177,8,23,194,2,12,28,23,201,2,250,22,133,10,67,114,101,113,117, -105,114,101,249,22,131,8,6,17,17,98,97,100,32,109,111,100,117,108,101,32, -112,97,116,104,126,97,28,23,198,2,248,22,80,23,199,2,6,0,0,23,204, -2,250,22,135,10,2,22,2,34,23,198,2,27,28,248,22,177,8,23,195,2, -249,22,182,8,23,196,2,36,249,22,179,15,248,22,180,15,23,197,2,11,27, -28,248,22,177,8,23,196,2,249,22,182,8,23,197,2,37,248,80,159,44,8, -24,39,23,195,2,90,159,39,11,89,161,39,36,11,28,248,22,177,8,23,199, -2,250,22,7,2,42,249,22,182,8,23,203,2,38,2,42,248,22,173,15,23, -198,2,86,95,23,195,1,23,193,1,27,28,248,22,177,8,23,200,2,249,22, -182,8,23,201,2,39,249,80,159,49,58,39,23,197,2,5,0,27,28,248,22, -177,8,23,201,2,249,22,182,8,23,202,2,40,248,22,150,5,23,200,2,27, -250,22,160,2,80,159,52,41,38,248,22,166,16,247,22,188,13,11,27,28,23, -194,2,23,194,1,86,94,23,194,1,27,249,22,79,247,22,140,2,247,22,140, -2,86,94,250,22,158,2,80,159,54,41,38,248,22,166,16,247,22,188,13,195, -192,27,28,23,204,2,248,22,150,5,249,22,79,248,22,151,5,23,200,2,23, -207,2,23,196,2,86,95,28,23,212,1,27,250,22,160,2,248,22,80,23,199, -2,196,11,28,23,193,1,12,27,27,28,248,22,17,80,159,55,51,38,80,159, -54,51,38,247,22,19,251,22,33,11,80,159,58,50,38,9,23,197,1,27,248, -22,166,16,247,22,188,13,86,94,249,22,3,20,20,94,88,163,8,36,37,54, -11,9,226,14,13,2,3,33,96,23,195,1,23,196,2,248,28,248,22,17,80, -159,56,51,38,32,0,88,163,36,37,42,11,9,222,33,97,80,159,55,8,32, -39,20,20,97,88,163,36,36,8,24,8,240,12,64,0,0,9,232,19,22,15, -16,13,12,8,7,5,2,33,99,23,195,1,23,198,1,23,208,1,23,215,1, -12,28,28,248,22,177,8,23,204,1,11,28,248,22,147,7,23,206,2,10,28, -248,22,64,23,206,2,10,28,248,22,77,23,206,2,249,22,162,9,248,22,132, -18,23,208,2,2,33,11,249,80,159,53,49,39,28,248,22,147,7,23,208,2, -249,22,79,23,209,1,248,80,159,56,8,29,39,23,215,1,86,94,23,212,1, -249,22,79,23,209,1,247,22,130,16,252,22,179,8,23,209,1,23,208,1,23, -206,1,23,204,1,23,203,1,12,192,86,96,20,18,159,11,80,158,36,55,248, -80,159,37,8,27,37,249,22,33,11,80,159,39,57,37,248,22,188,4,80,159, -37,56,38,248,22,174,5,80,159,37,37,39,248,22,185,14,80,159,37,45,39, -20,18,159,11,80,158,36,55,248,80,159,37,8,27,37,249,22,33,11,80,159, -39,57,37,20,18,159,11,80,158,36,55,248,80,159,37,8,27,37,249,22,33, -11,80,159,39,57,37,159,36,20,114,159,36,16,1,11,16,0,20,26,145,9, -2,1,2,1,29,11,11,11,11,9,9,11,11,11,10,38,80,158,36,36,20, -114,159,41,16,28,2,2,2,3,30,2,6,2,7,11,6,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,110,11,3,30,2,8,72,112,97,116,104,45,115,116,114,105,110,103,63,38, -196,11,2,9,30,2,8,71,114,101,114,111,111,116,45,112,97,116,104,40,196, -12,30,2,8,75,112,97,116,104,45,97,100,100,45,115,117,102,102,105,120,40, -196,8,2,10,2,11,2,12,2,13,2,14,2,15,2,16,2,17,2,18,2, -19,2,20,2,21,2,22,30,2,23,2,7,11,6,30,2,8,79,112,97,116, -104,45,114,101,112,108,97,99,101,45,115,117,102,102,105,120,40,196,10,30,2, -8,73,102,105,110,100,45,99,111,108,45,102,105,108,101,44,196,3,30,2,8, -76,110,111,114,109,97,108,45,99,97,115,101,45,112,97,116,104,38,196,7,2, -24,2,25,30,2,23,74,114,101,112,97,114,97,109,101,116,101,114,105,122,101, -11,7,16,0,37,39,36,16,0,36,16,15,2,16,2,17,2,9,2,13,2, -18,2,19,2,12,2,3,2,11,2,2,2,14,2,15,2,10,2,20,2,22, -51,11,11,11,16,3,2,24,2,21,2,25,16,3,11,11,11,16,3,2,24, -2,21,2,25,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,23,20,15,16,2,248,22,174,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,43,8,189,3,2,3,223,0,33,55,80,159,36,37,37,20,15,16,2,32, -0,88,163,8,36,41,52,11,2,10,222,33,56,80,159,36,44,37,20,15,16, -2,20,27,158,32,0,88,163,8,36,37,42,11,2,11,222,192,32,0,88,163, -8,36,37,42,11,2,11,222,192,80,159,36,45,37,20,15,16,2,247,22,143, -2,80,159,36,41,37,20,15,16,2,8,128,8,80,159,36,46,37,20,15,16, -2,249,22,178,8,8,128,8,11,80,159,36,47,37,20,15,16,2,88,163,8, -36,37,50,8,128,32,2,14,223,0,33,57,80,159,36,48,37,20,15,16,2, -88,163,8,36,38,55,8,128,32,2,15,223,0,33,58,80,159,36,49,37,20, -15,16,2,247,22,75,80,159,36,50,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,51,37,20,15,16,2, -11,80,158,36,52,20,15,16,2,11,80,158,36,53,20,15,16,2,32,0,88, -163,36,38,57,11,2,20,222,33,77,80,159,36,54,37,20,15,16,2,11,80, -158,36,55,20,15,16,2,88,164,8,34,37,45,8,240,0,0,40,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,78,80,159,36,8,28,39,20,15,16,2,88,163,36,37,50, -8,240,0,0,3,0,67,103,101,116,45,100,105,114,223,0,33,79,80,159,36, -8,29,39,20,15,16,2,88,163,36,37,49,8,240,0,0,64,0,72,112,97, -116,104,45,115,115,45,62,114,107,116,223,0,33,80,80,159,36,8,30,39,20, -15,16,2,88,163,8,36,37,45,8,240,0,0,4,0,9,223,0,33,81,80, -159,36,8,31,39,20,15,16,2,88,163,36,37,45,8,240,0,128,0,0,9, -223,0,33,82,80,159,36,8,32,39,20,15,16,2,27,11,20,19,158,36,90, -159,37,10,89,161,37,36,10,20,25,96,2,22,88,163,8,36,38,54,8,32, -9,224,2,1,33,83,88,163,36,39,49,11,9,223,0,33,84,88,163,36,40, -8,32,16,4,8,240,44,240,0,0,8,240,204,241,0,0,37,36,9,224,2, -1,33,100,207,80,159,36,56,37,20,15,16,2,88,163,36,36,45,16,2,8, -130,8,8,184,32,2,24,223,0,33,101,80,159,36,8,25,37,20,15,16,2, -20,27,158,88,163,8,36,36,45,16,2,36,8,168,32,2,25,223,0,33,102, -88,163,8,36,36,45,16,2,36,8,168,32,2,25,223,0,33,103,80,159,36, -8,26,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,8,2,23,9,9,9,36,0}; - EVAL_ONE_SIZED_STR((char *)expr, 9932); +23,193,1,90,159,39,11,89,161,38,36,11,249,80,159,47,54,39,248,22,104, +23,202,2,11,89,161,37,38,11,28,248,22,87,248,22,106,23,201,2,28,248, +22,87,23,194,2,249,22,145,16,2,93,23,196,2,11,10,27,28,23,196,2, +248,2,91,23,196,2,28,248,22,87,23,195,2,2,40,28,249,22,145,16,2, +93,23,197,2,248,2,91,23,196,2,249,22,170,7,23,197,2,2,41,27,28, +23,197,1,86,94,23,196,1,249,22,93,28,248,22,87,248,22,106,23,205,2, +21,93,6,5,5,109,122,108,105,98,249,22,1,22,93,249,22,2,80,159,53, +8,31,39,248,22,106,23,208,2,23,197,1,28,248,22,87,23,196,2,86,94, +23,195,1,248,22,89,23,197,1,86,94,23,196,1,23,195,1,251,80,159,51, +59,39,23,206,1,248,22,80,23,198,2,248,22,133,18,23,198,1,23,198,1, +28,249,22,162,9,248,22,132,18,23,198,2,2,38,248,80,159,42,8,30,39, +248,22,179,15,249,22,177,15,248,22,181,15,248,22,104,23,201,2,248,80,159, +46,8,29,39,23,205,2,12,86,94,28,28,248,22,152,15,23,194,2,10,248, +22,177,8,23,194,2,12,28,23,201,2,250,22,133,10,67,114,101,113,117,105, +114,101,249,22,131,8,6,17,17,98,97,100,32,109,111,100,117,108,101,32,112, +97,116,104,126,97,28,23,198,2,248,22,80,23,199,2,6,0,0,23,204,2, +250,22,135,10,2,22,2,34,23,198,2,27,28,248,22,177,8,23,195,2,249, +22,182,8,23,196,2,36,249,22,179,15,248,22,180,15,23,197,2,11,27,28, +248,22,177,8,23,196,2,249,22,182,8,23,197,2,37,248,80,159,44,8,24, +39,23,195,2,90,159,39,11,89,161,39,36,11,28,248,22,177,8,23,199,2, +250,22,7,2,42,249,22,182,8,23,203,2,38,2,42,248,22,173,15,23,198, +2,86,95,23,195,1,23,193,1,27,28,248,22,177,8,23,200,2,249,22,182, +8,23,201,2,39,249,80,159,49,58,39,23,197,2,5,0,27,28,248,22,177, +8,23,201,2,249,22,182,8,23,202,2,40,248,22,150,5,23,200,2,27,250, +22,160,2,80,159,52,41,38,248,22,166,16,247,22,188,13,11,27,28,23,194, +2,23,194,1,86,94,23,194,1,27,249,22,79,247,22,140,2,247,22,140,2, +86,94,250,22,158,2,80,159,54,41,38,248,22,166,16,247,22,188,13,195,192, +27,28,23,204,2,248,22,150,5,249,22,79,248,22,151,5,23,200,2,23,207, +2,23,196,2,86,95,28,23,212,1,27,250,22,160,2,248,22,80,23,199,2, +196,11,28,23,193,1,12,27,27,28,248,22,17,80,159,55,51,38,80,159,54, +51,38,247,22,19,251,22,33,11,80,159,58,50,38,9,23,197,1,27,248,22, +166,16,247,22,188,13,86,94,249,22,3,20,20,94,88,163,8,36,37,54,11, +9,226,14,13,2,3,33,96,23,195,1,23,196,2,248,28,248,22,17,80,159, +56,51,38,32,0,88,163,36,37,42,11,9,222,33,97,80,159,55,8,32,39, +20,20,97,88,163,36,36,8,24,8,240,12,64,0,0,9,232,19,22,15,16, +13,12,8,7,5,2,33,99,23,195,1,23,198,1,23,208,1,23,215,1,12, +28,28,248,22,177,8,23,204,1,11,28,248,22,147,7,23,206,2,10,28,248, +22,64,23,206,2,10,28,248,22,77,23,206,2,249,22,162,9,248,22,132,18, +23,208,2,2,33,11,249,80,159,53,49,39,28,248,22,147,7,23,208,2,249, +22,79,23,209,1,248,80,159,56,8,29,39,23,215,1,86,94,23,212,1,249, +22,79,23,209,1,247,22,130,16,252,22,179,8,23,209,1,23,208,1,23,206, +1,23,204,1,23,203,1,12,192,86,96,20,18,159,11,80,158,36,55,248,80, +159,37,8,27,37,249,22,33,11,80,159,39,57,37,248,22,188,4,80,159,37, +56,38,248,22,174,5,80,159,37,37,39,248,22,185,14,80,159,37,45,39,20, +18,159,11,80,158,36,55,248,80,159,37,8,27,37,249,22,33,11,80,159,39, +57,37,20,18,159,11,80,158,36,55,248,80,159,37,8,27,37,249,22,33,11, +80,159,39,57,37,159,36,20,114,159,36,16,1,11,16,0,20,26,145,9,2, +1,2,1,29,11,11,11,11,9,9,11,11,11,10,38,80,158,36,36,20,114, +159,41,16,28,2,2,2,3,30,2,6,2,7,11,6,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, +110,11,3,30,2,8,72,112,97,116,104,45,115,116,114,105,110,103,63,38,196, +11,2,9,30,2,8,71,114,101,114,111,111,116,45,112,97,116,104,40,196,12, +30,2,8,75,112,97,116,104,45,97,100,100,45,115,117,102,102,105,120,40,196, +8,2,10,2,11,2,12,2,13,2,14,2,15,2,16,2,17,2,18,2,19, +2,20,2,21,2,22,30,2,23,2,7,11,6,30,2,8,79,112,97,116,104, +45,114,101,112,108,97,99,101,45,115,117,102,102,105,120,40,196,10,30,2,8, +73,102,105,110,100,45,99,111,108,45,102,105,108,101,44,196,3,30,2,8,76, +110,111,114,109,97,108,45,99,97,115,101,45,112,97,116,104,38,196,7,2,24, +2,25,30,2,23,74,114,101,112,97,114,97,109,101,116,101,114,105,122,101,11, +7,16,0,37,39,36,16,0,36,16,15,2,16,2,17,2,9,2,13,2,18, +2,19,2,12,2,3,2,11,2,2,2,14,2,15,2,10,2,20,2,22,51, +11,11,11,16,3,2,24,2,21,2,25,16,3,11,11,11,16,3,2,24,2, +21,2,25,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,23,20,15,16,2,248,22,174,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, +43,8,189,3,2,3,223,0,33,55,80,159,36,37,37,20,15,16,2,32,0, +88,163,8,36,41,52,11,2,10,222,33,56,80,159,36,44,37,20,15,16,2, +20,27,158,32,0,88,163,8,36,37,42,11,2,11,222,192,32,0,88,163,8, +36,37,42,11,2,11,222,192,80,159,36,45,37,20,15,16,2,247,22,143,2, +80,159,36,41,37,20,15,16,2,8,128,8,80,159,36,46,37,20,15,16,2, +249,22,178,8,8,128,8,11,80,159,36,47,37,20,15,16,2,88,163,8,36, +37,50,8,128,32,2,14,223,0,33,57,80,159,36,48,37,20,15,16,2,88, +163,8,36,38,55,8,128,32,2,15,223,0,33,58,80,159,36,49,37,20,15, +16,2,247,22,75,80,159,36,50,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,51,37,20,15,16,2,11, +80,158,36,52,20,15,16,2,11,80,158,36,53,20,15,16,2,32,0,88,163, +36,38,57,11,2,20,222,33,77,80,159,36,54,37,20,15,16,2,11,80,158, +36,55,20,15,16,2,88,164,8,34,37,45,8,240,0,0,40,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,78,80,159,36,8,28,39,20,15,16,2,88,163,36,37,50,8, +240,0,0,3,0,67,103,101,116,45,100,105,114,223,0,33,79,80,159,36,8, +29,39,20,15,16,2,88,163,36,37,49,8,240,0,0,64,0,72,112,97,116, +104,45,115,115,45,62,114,107,116,223,0,33,80,80,159,36,8,30,39,20,15, +16,2,88,163,8,36,37,45,8,240,0,0,4,0,9,223,0,33,81,80,159, +36,8,31,39,20,15,16,2,88,163,36,37,45,8,240,0,128,0,0,9,223, +0,33,82,80,159,36,8,32,39,20,15,16,2,27,11,20,19,158,36,90,159, +37,10,89,161,37,36,10,20,25,96,2,22,88,163,8,36,38,54,8,32,9, +224,2,1,33,83,88,163,36,39,49,11,9,223,0,33,84,88,163,36,40,8, +32,16,4,8,240,44,240,0,0,8,240,204,241,0,0,37,36,9,224,2,1, +33,100,207,80,159,36,56,37,20,15,16,2,88,163,36,36,45,16,2,8,130, +8,8,184,32,2,24,223,0,33,101,80,159,36,8,25,37,20,15,16,2,20, +27,158,88,163,8,36,36,45,16,2,36,8,168,32,2,25,223,0,33,102,88, +163,8,36,36,45,16,2,36,8,168,32,2,25,223,0,33,103,80,159,36,8, +26,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,8,2,23,9,9,9,36,0}; + EVAL_ONE_SIZED_STR((char *)expr, 10036); } { SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,7,53,46,51,46,52,46,52,84,0,0,0,0,0,0,0,0,0,0, @@ -1242,7 +1247,7 @@ 114,107,11,29,94,2,2,68,35,37,112,97,114,97,109,122,11,29,94,2,2, 74,35,37,112,108,97,99,101,45,115,116,114,117,99,116,11,29,94,2,2,66, 35,37,98,111,111,116,11,29,94,2,2,68,35,37,101,120,112,111,98,115,11, -29,94,2,2,68,35,37,107,101,114,110,101,108,11,97,36,11,8,240,231,93, +29,94,2,2,68,35,37,107,101,114,110,101,108,11,97,36,11,8,240,243,93, 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,114,159,36,16,1,11,16,0,20,26,145,9,2,1,2, diff --git a/src/racket/src/module.c b/src/racket/src/module.c index 262eb28446..0c09a4d116 100644 --- a/src/racket/src/module.c +++ b/src/racket/src/module.c @@ -3912,6 +3912,9 @@ static Scheme_Object *_module_resolve(Scheme_Object *modidx, Scheme_Object *stx, if (SCHEME_SYMBOLP(base)) base = scheme_false; + if (stx && !SCHEME_FALSEP(stx) && !SCHEME_STXP(stx)) + stx = NULL; + a[0] = ((Scheme_Modidx *)modidx)->path; a[1] = base; a[2] = (stx ? stx : scheme_false); diff --git a/src/racket/src/startup.inc b/src/racket/src/startup.inc index c77b67a863..8285f218e8 100644 --- a/src/racket/src/startup.inc +++ b/src/racket/src/startup.inc @@ -940,13 +940,21 @@ "(standard-module-name-resolver s relto stx #t)) " "((s relto stx load?)" "(unless(module-path? s)" -"(if stx" +"(if(syntax? stx)" "(raise-syntax-error #f" " \"bad module path\"" " stx)" "(raise-argument-error 'standard-module-name-resolver" " \"module-path?\"" " s)))" +"(unless(or(not relto)(resolved-module-path? relto))" +"(raise-argument-error 'standard-module-name-resolver" +" \"(or/c #f resolved-module-path?)\"" +" relto))" +"(unless(or(not stx)(syntax? stx))" +"(raise-argument-error 'standard-module-name-resolver" +" \"(or/c #f syntax?)\"" +" stx))" "(define(flatten-sub-path base orig-l)" "(let loop((a null)(l orig-l))" "(cond" diff --git a/src/racket/src/startup.rktl b/src/racket/src/startup.rktl index c4de995c46..30643ed6e3 100644 --- a/src/racket/src/startup.rktl +++ b/src/racket/src/startup.rktl @@ -1073,13 +1073,21 @@ [(s relto stx load?) ;; If stx is not #f, raise syntax error for ill-formed paths (unless (module-path? s) - (if stx + (if (syntax? stx) (raise-syntax-error #f "bad module path" stx) (raise-argument-error 'standard-module-name-resolver "module-path?" s))) + (unless (or (not relto) (resolved-module-path? relto)) + (raise-argument-error 'standard-module-name-resolver + "(or/c #f resolved-module-path?)" + relto)) + (unless (or (not stx) (syntax? stx)) + (raise-argument-error 'standard-module-name-resolver + "(or/c #f syntax?)" + stx)) (define (flatten-sub-path base orig-l) (let loop ([a null] [l orig-l]) (cond