From: Sam S. <sd...@gn...> - 2004-08-19 17:40:23
|
> * Sam Steingold <fq...@ta...t> [2004-08-19 13:30:12 -0400]: > >> * Sam Steingold <fq...@ta...t> [2004-08-19 12:09:44 -0400]: >> >>> * Bruno Haible <oe...@py...t> [2004-08-19 17:35:27 +0200]: >>> >>> I think a $FORM slot would be suitable for the SOURCE-PROGRAM-ERROR >>> subclass, however. >> >> OK. >> why control.d:make_variable_frame() signals PROGRAM-ERROR in one place >> and SOURCE-PROGRAM-ERROR in the other: >> >> >> if (eq(caller,S(symbol_macrolet))) { >> if (constantp(TheSymbol(symbol)) >> || special_var_p(TheSymbol(symbol))) { >> pushSTACK(symbol); >> pushSTACK(caller); >> fehler(program_error, >> GETTEXT("~S: symbol ~S is declared special and must not be declared a macro")); >> } >> if (specdecled) { >> pushSTACK(symbol); >> pushSTACK(caller); >> fehler(source_program_error, >> GETTEXT("~S: symbol ~S must not be declared SPECIAL and a macro at the same time")); >> } >> /* static binding */ >> } else { > > also > check-em-arguments-option > and > check-em-generic-function-option > sometimes signal PROGRAM-ERROR and sometimes SOURCE-PROGRAM-ERROR... shouldn't extract-lambda-list & extract-specializer-names signal source-program-error? -- Sam Steingold (http://www.podval.org/~sds) running w2k <http://www.camera.org> <http://www.iris.org.il> <http://www.memri.org/> <http://www.mideasttruth.com/> <http://www.honestreporting.com> Programming is like sex: one mistake and you have to support it for a lifetime. |