=================================================================== RCS file: /home/cvs/OpenXM/src/kxx/serversm.h,v retrieving revision 1.1.1.1 retrieving revision 1.5 diff -u -p -r1.1.1.1 -r1.5 --- OpenXM/src/kxx/serversm.h 1999/10/08 02:12:13 1.1.1.1 +++ OpenXM/src/kxx/serversm.h 2006/02/01 00:30:05 1.5 @@ -13,6 +13,7 @@ int Sm1_pushError2(int serial,int no,char *message); char *Sm1_popErrorMessage(char *s); void Sm1_getsp(void); void Sm1_dupErrors(void); +void Sm1_pushCMOtag(int serial); /******************** Object from Kan/stackm.h *************************/ @@ -35,7 +36,10 @@ struct object{ int tag; /* class identifier */ union cell lc; /* left cell */ union cell rc; /* right cell */ + struct object *attr; }; +#define OINIT { .attr = NULL } + /********** macros to use Sarray **********************/ /* put to Object Array */ #define putoa(ob,i,cc) {\ @@ -57,9 +61,12 @@ void KSpush(struct object ob); struct object KfindUserDictionary(char *s); struct object KputUserDictionary(char *s,struct object ob); struct object KnewErrorPacket(int serial,int no,char *s); +struct object KnewErrorPacketObj(struct object); struct object KSmathCap(void); /* defined plugin/cmo.c */ void *KSmathCapByStruct(void); /* defined plugin/cmo.c */ char *popErrorStackByString(void); struct object KSdupErrors(void); struct object KpoInteger(int i); - +struct object KpoString(char *s); +struct object KSpeek(int k); +struct object KSnewObjectArray(int k);