* Empty (begin), (begin1) and (cond) return #<unspecified>.
git-svn-id: svn://svn.zoy.org/elk/trunk@177 55e467fa-43c5-0310-a8a2-de718669efc6
This commit is contained in:
parent
2383e0247c
commit
c4fbd1b8f2
|
@ -336,11 +336,11 @@ struct Prim_Init {
|
||||||
*/
|
*/
|
||||||
{ P_Quote, "quote", 1, 1, NOEVAL },
|
{ P_Quote, "quote", 1, 1, NOEVAL },
|
||||||
{ P_Quasiquote, "quasiquote", 1, 1, NOEVAL },
|
{ P_Quasiquote, "quasiquote", 1, 1, NOEVAL },
|
||||||
{ P_Begin, "begin", 1, MANY, NOEVAL },
|
{ P_Begin, "begin", 0, MANY, NOEVAL },
|
||||||
{ P_Begin1, "begin1", 1, MANY, NOEVAL },
|
{ P_Begin1, "begin1", 0, MANY, NOEVAL },
|
||||||
{ P_If, "if", 2, MANY, NOEVAL },
|
{ P_If, "if", 2, MANY, NOEVAL },
|
||||||
{ P_Case, "case", 2, MANY, NOEVAL },
|
{ P_Case, "case", 2, MANY, NOEVAL },
|
||||||
{ P_Cond, "cond", 1, MANY, NOEVAL },
|
{ P_Cond, "cond", 0, MANY, NOEVAL },
|
||||||
{ P_Do, "do", 2, MANY, NOEVAL },
|
{ P_Do, "do", 2, MANY, NOEVAL },
|
||||||
{ P_Let, "let", 2, MANY, NOEVAL },
|
{ P_Let, "let", 2, MANY, NOEVAL },
|
||||||
{ P_Letseq, "let*", 2, MANY, NOEVAL },
|
{ P_Letseq, "let*", 2, MANY, NOEVAL },
|
||||||
|
|
|
@ -131,7 +131,7 @@ Object P_Begin (Object forms) {
|
||||||
TC_Prolog;
|
TC_Prolog;
|
||||||
|
|
||||||
if (Nullp (forms))
|
if (Nullp (forms))
|
||||||
return Null;
|
return Unspecified;
|
||||||
GC_Link (forms);
|
GC_Link (forms);
|
||||||
TC_Disable;
|
TC_Disable;
|
||||||
for ( ; !Nullp (Cdr (forms)); forms = Cdr (forms))
|
for ( ; !Nullp (Cdr (forms)); forms = Cdr (forms))
|
||||||
|
@ -147,6 +147,8 @@ Object P_Begin1 (Object forms) {
|
||||||
GC_Node;
|
GC_Node;
|
||||||
TC_Prolog;
|
TC_Prolog;
|
||||||
|
|
||||||
|
if (Nullp (forms))
|
||||||
|
return Unspecified;
|
||||||
GC_Link (forms);
|
GC_Link (forms);
|
||||||
TC_Disable;
|
TC_Disable;
|
||||||
for (n = 1; !Nullp (Cdr (forms)); n = 0, forms = Cdr (forms)) {
|
for (n = 1; !Nullp (Cdr (forms)); n = 0, forms = Cdr (forms)) {
|
||||||
|
@ -229,6 +231,9 @@ Object P_Cond (Object argl) {
|
||||||
GC_Node3;
|
GC_Node3;
|
||||||
TC_Prolog;
|
TC_Prolog;
|
||||||
|
|
||||||
|
if (Nullp (argl))
|
||||||
|
return Unspecified;
|
||||||
|
|
||||||
ret = False;
|
ret = False;
|
||||||
clause = guard = Null;
|
clause = guard = Null;
|
||||||
GC_Link3 (argl, clause, guard);
|
GC_Link3 (argl, clause, guard);
|
||||||
|
|
Loading…
Reference in New Issue